A progress bar made of stacked coins climbing toward a lit archway, with a parcel waiting to pass through once the stack is full.

A free-shipping threshold is one of the most reliable ways to lift average order value: shoppers add an item to cross the line. It is also one of the easiest places to accidentally lie — to a shopper, and to a regulator. In a multi-vendor cart the honest version is harder than it looks, because there is no single threshold to show. Here is how to build per-vendor free-shipping meters that compute real numbers, and how to stay on the right side of EU price-claim rules while you do it.

Why thresholds work — and the trap

The mechanism is well understood: a visible "€8 to free delivery" turns an abstract shipping fee into a concrete, closeable gap, and a meaningful share of shoppers close it. The threshold is a genuine lever, and vendors are usually happy to fund it because it raises their own basket sizes.

Worth stating plainly: the threshold is the vendor's money, not yours. The vendor funds free delivery to grow its own baskets, which is exactly why you can only offer the threshold the vendor has agreed to. The marketplace's job is to display that threshold correctly, per vendor, and never to promise more generous terms than the vendor signed up for.

The trap appears the moment the cart holds more than one vendor. A single cart-wide "€X to free shipping" is meaningless when three vendors have three different policies — one already qualifies, one has a higher bar, and a third offers no free shipping at all. Show one blended number and it is wrong for every vendor at once, and the shopper who adds items to "unlock free delivery" discovers at checkout that they unlocked nothing — the split-order reality of multi-vendor checkout made visible in the worst way.

Thresholds are per vendor, not per cart

Free shipping is a property of a vendor, so its meter has to be too. Each vendor's progress bar computes against that vendor's own subtotal and that vendor's own threshold — the same per-vendor partitioning that drives per-vendor shipping in general. If a vendor has no free-shipping policy, the correct thing to display is nothing: no meter, no phantom goal, rather than an invented one.

The arithmetic is deliberately boring, which is the point:

  • remaining = max(0, vendor_threshold − vendor_subtotal)
  • if remaining is 0, show "free delivery unlocked" for that vendor
  • if the vendor has no threshold, show no meter
  • recompute on every cart change, from the same calculator the checkout uses

The one rule that matters: never round in your own favour. If the shopper is €0.40 short, the meter says €0.40 short, not "almost there — free delivery!". The number on the meter must be the number the checkout will charge.

The honest progress meter

An honest meter and a manipulative one can look almost identical, so the difference is in the behaviour, not the pixels.

PropertyHonest meterDark-pattern meter
The numberReal remaining amount to a real thresholdInflated "so close" that isn't
VisibilityShown early, in the cartRevealed late to trap the order
StabilityThreshold fixed by vendor policyMoves as you add items
No-policy vendorNo meter shownFake goal invented
RoundingAgainst the houseIn the house's favour

Everything in the honest column is a decision you make once and enforce in the calculator. The dark-pattern column is what you get by default if you optimise the meter for conversions in isolation instead of for the number being true.

What the law says about "free shipping"

"Free shipping over €X" is a price claim, and in the EU price claims are regulated. The Unfair Commercial Practices Directive prohibits misleading claims about price and benefits, and the Omnibus Directive (Directive (EU) 2019/2161) tightened enforcement around how offers and reductions are presented. The practical consequence for shipping is direct: you may only advertise a free-shipping threshold you can substantiate, which in a marketplace means a threshold the vendor actually operates in their own store.

That produces a hard engineering rule we apply everywhere prices and offers are shown: fail closed. No confirmed policy, no claim. It is the same discipline the Omnibus rules force on "was €X, now €Y" strikethroughs — if you cannot prove the number, you do not show the badge. You can read the full directive text on EUR-Lex if you want the exact wording.

In a marketplace the liability question has an extra edge: the storefront presents the offer, but the vendor sets the policy. If your cart advertises a threshold the vendor doesn't actually run, it is your storefront making the misleading claim — not the vendor's. That is why the number has to come from the vendor's own store and be re-checked on a schedule, never entered once by hand and left to rot when the vendor quietly changes its policy.

From production

We mirror each vendor's free-shipping threshold from that vendor's own store and verify it against the live shop. If a vendor runs no free-shipping policy, our cart shows no meter for that vendor rather than inventing one — an unverified "free over €X" is a promise we have no right to make on the vendor's behalf.

Nudges without dark patterns

You can encourage a shopper toward a real threshold without manipulating them. The honest nudges are the durable ones:

  • Show the gap early and keep it stable. A meter the shopper sees in the cart, with a number that does not move, builds trust that survives to the next order.
  • Suggest, don't trap. "Add €6 for free delivery from this shop" is help; a countdown timer on that offer is a fabricated deadline.
  • Never drip-price. Revealing shipping only at the final step so the threshold feels urgent is exactly the surprise that gets carts abandoned.
  • Mind VAT on the threshold. Decide whether the threshold is measured on gross or net subtotal to match the vendor's own definition — the same VAT-boundary care that cross-border shipping demands — or the meter will flip to "free" a cent early or late.

The through-line is that the honest choice and the high-performing choice are the same choice over any horizon longer than a single session. Shoppers remember which stores lied about delivery.

Key takeaways

  • Free-shipping thresholds lift order value only when the number is real — a fake "almost there" costs you the next order.
  • Thresholds are per vendor: compute each meter against that vendor's subtotal and policy, and show nothing for vendors with no policy.
  • Never round in your favour — the meter's number must equal the number the checkout charges.
  • Only advertise a threshold you can substantiate; under EU price-claim rules, fail closed when a policy isn't confirmed.
  • Skip the dark patterns — countdowns, moving goals and drip-priced shipping trade next month's trust for this session's conversion.

Frequently asked questions

Do free-shipping thresholds actually increase order value?
Yes — a visible, real threshold turns an abstract shipping fee into a concrete gap shoppers will add items to close, which lifts average order value. The lift only holds if the number is true; a fabricated 'almost there' wins one session and costs you the next order.
How does a free-shipping meter work in a multi-vendor cart?
Per vendor. Each vendor's meter computes remaining = max(0, that vendor's threshold − that vendor's subtotal), recalculated on every cart change. A vendor with no free-shipping policy shows no meter at all, rather than a blended cart-wide number that is wrong for everyone.
Is it legal to advertise a free-shipping threshold?
Only if you can substantiate it. 'Free shipping over €X' is a price claim, and EU rules — the Unfair Commercial Practices Directive and the Omnibus Directive (EU) 2019/2161 — prohibit misleading price and benefit claims. In a marketplace that means advertising only thresholds a vendor actually operates, and failing closed when a policy isn't confirmed.
What free-shipping dark patterns should I avoid?
Countdown timers on the offer, a goal that moves as items are added, 'so close' messaging when the shopper isn't, and drip-pricing that hides shipping until the final step. The honest meter shows a real number, early, that stays stable and matches what the checkout charges.

Honest shipping meters, mirrored from real vendor policy.

Our live marketplace computes per-vendor free-shipping thresholds from each shop's own store and fails closed when a policy isn't confirmed.

Request early access See the live marketplace →