Using Contribution Margin to Set a Free-Shipping Threshold

Metricuno
May 25, 2026
7 min read
Quick answer

How to translate per-order contribution margin into a free-shipping threshold that still leaves you positive — with the formula, the two mistakes to avoid, and vertical benchmarks.

Quick answer

Set your free-shipping threshold at the AOV where contribution margin (not gross margin) covers shipping plus your expected return cost. Formula: Threshold = (Shipping cost + Return cost per order) ÷ Contribution margin %. A store with 38% CM, €6 outbound shipping, and €1.20 return reserve needs orders of at least €19 to break even on free shipping — most operators set the threshold 25-40% above current AOV to nudge basket-building without subsidising every order.

Definition
Pricing & Promotions

Using Contribution Margin to Set a Free-Shipping Threshold

The method of solving for the minimum order value at which absorbing shipping still leaves positive contribution margin per order.

A free-shipping threshold is the basket value at which you stop charging the customer for delivery and start absorbing it yourself. Setting it correctly is a contribution-margin problem, not a gross-margin problem: you need to know exactly how many euros of margin each incremental order leaves after variable costs, then check that figure is bigger than the shipping bill you're about to swallow.

The operational handoff is simple. The Contribution Margin Calculator gives you CM per order in euros and as a percentage. You then solve for the AOV at which CM% × AOV ≥ shipping + returns. That AOV is the floor for your threshold.

Also known as
free shipping break-even
shipping threshold margin math

Most stores set the threshold by gut feel or by copying a competitor. That works until shipping rates climb or your product mix shifts — at which point the threshold is silently eating 3-6 points of margin on every qualifying order.

The fix is to anchor the number to your actual per-order economics. Once you have contribution margin in euros, the threshold becomes a derived quantity, not a guess.

The math: solving for the break-even threshold

Start with contribution margin per order — revenue minus all variable costs (COGS, payment fees, pick-and-pack, marketing if you allocate it). Call that CM%. The threshold T is the AOV at which CM% × T equals the shipping cost you'd absorb.

Rearranged: T = Shipping cost ÷ CM%. With €6 outbound shipping and a 38% contribution margin, the break-even is €6 ÷ 0.38 = €15.79. Below that AOV, every free-shipping order loses money on a contribution basis.

Break-even is the floor, not the target

Break-even is the lowest threshold that doesn't lose money — but you set free shipping to lift AOV, not to leak margin at the boundary. Most operators set the threshold 25-40% above current AOV so the offer actually changes buying behaviour. If your AOV is €52 and break-even is €16, a threshold of €65-€75 is the operational range.

Mistake 1: using gross margin instead of contribution margin

Gross margin is revenue minus COGS. It ignores the variable costs that actually move with each order — payment processing (1.5-3%), pick-and-pack (€1.50-€3 per order), and fulfilment overhead.

A jewellery store running on 65% gross margin might assume it has plenty of room. But after Stripe fees, 3PL pick fees, and an 8% return rate with €4 reverse logistics per return, contribution margin can land closer to 42%. The threshold calculation built on 65% under-prices the offer by roughly a third.

Always run the threshold math on contribution margin. If you don't have it computed, the parent Contribution Margin Calculator gives you the per-order number in under a minute.

Mistake 2: ignoring returns in the shipping cost

Outbound shipping isn't the full cost of a fulfilled order. For an apparel store with a 22% return rate and €5 reverse-logistics cost, the blended shipping cost per order is €6 + (0.22 × €5) = €7.10. That's an 18% bump on the shipping figure you plug into the formula.

If your category has high return rates — fashion, footwear, anything sized — bake the expected return cost into the numerator before you divide by CM%. Otherwise the threshold looks healthy on paper and bleeds in the P&L.

Benchmark thresholds by vertical

Benchmark

Typical contribution margin, shipping cost, and resulting free-shipping threshold ranges by DTC vertical

VerticalContribution margin %Blended shipping per orderBreak-even thresholdRecommended threshold
Beauty & skincare45-55%€4.50-€6.00€10-€13€45-€60
Apparel (high-return)35-45%€7-€10€18-€27€75-€95
Footwear30-40%€8-€12€22-€38€85-€120
Home & decor40-50%€8-€15€18-€36€70-€110
Electronics accessories25-35%€5-€8€16-€30€50-€75
Supplements & food50-60%€5-€7€9-€14€40-€55

The recommended threshold column reflects what we see operators actually set after running the math — typically 2-4× the pure break-even, anchored to an AOV uplift goal. Apparel and footwear sit highest because return rates compress real CM and reverse logistics cost stacks on top.

Calibrating the threshold against current AOV

Pull your current AOV from the last 90 days. The threshold should sit above AOV — far enough to motivate basket-building, close enough that a meaningful share of customers will reach for it. The 25-40% uplift range works for most stores; categories with strong cross-sell (beauty sets, apparel outfits) can stretch to 50%.

If your threshold is below current AOV, you're paying for shipping on orders that would have happened anyway. If it's more than 60% above AOV, conversion drops because the offer feels unreachable. Both failure modes are common — and both are visible the moment you compute them.

Testing the threshold

Once you have a break-even floor and a current-AOV anchor, test two candidate thresholds against each other — not against a no-free-shipping control. A/B test €65 vs €75 (for example) and read out on revenue per visitor, not conversion rate. CR will tilt toward the lower threshold; RPV is what tells you which one wins.

Re-run the math quarterly. Carrier rate cards drift, product mix shifts, and return rates change with seasonality. A threshold that was correct in March is rarely correct by November. The Free Shipping Threshold Calculator wraps this entire workflow — plug in CM%, shipping, and returns, get the floor plus the recommended range.

Frequently asked

Frequently asked questions

Gross margin ignores payment fees, pick-and-pack, and returns — costs that all scale per order. Contribution margin captures them, so the break-even AOV you derive actually reflects what each free-shipping order will cost you. Using gross margin typically under-prices the threshold by 20-40%.

Threshold floor = (Outbound shipping + Expected return cost per order) ÷ Contribution margin %. Then set your actual threshold 25-40% above current AOV, as long as that number is above the floor. The Contribution Margin Calculator gives you the CM% input.

Only if it's variable per order — for example, affiliate commissions or a CPA-priced channel. Brand spend and fixed retainers don't belong in the per-order CM you use for the threshold. Including them inflates the threshold and makes the offer less competitive.

Use a weighted average: take your last 90 days of orders, sum the actual shipping cost paid, divide by order count. For multi-region stores (e.g. Shopify Markets), compute a separate threshold per market — €60 in Germany rarely equals €60 in Italy on a cost basis.

Blend it: (return rate × reverse logistics cost per return). A 22% return rate at €5 per return adds €1.10 to every order's effective shipping cost. For high-return categories, also add the cost of restocking labour and the lost-margin on items that come back damaged or unsellable.

Yes, almost certainly. A threshold below AOV means you're subsidising shipping on orders the customer would have placed anyway. Raise it incrementally — 10-15% at a time — and watch RPV. You'll typically see margin recover with no measurable conversion hit.

It does for most stores, but the lift is usually 8-18% on AOV, not the 30-50% some operators expect. The threshold has to be reachable with one extra item — if it requires two or three, customers abandon rather than build up. Test the threshold against a baseline of paid shipping with no minimum.

Quarterly at minimum, and any time a major input shifts — a carrier rate increase, a new product line with different margin profile, or a return-rate change of more than 3 percentage points. Most stores set it once and never revisit; that's where the silent margin leak builds up.

Yes — and you should if CM differs materially. New customers might get a lower threshold (you're paying for acquisition anyway), while repeat customers see the standard one. Loyalty-tier customers can get free shipping with no minimum if their LTV justifies it. Shopify and most checkout platforms support segmented shipping rules.

Then free shipping at any threshold below your break-even point will lose money — and you have a bigger problem than shipping policy. Audit your variable cost stack first (payment fees, 3PL, returns) before adding any absorbed-cost offer. The fix is usually pricing or pack size, not shipping rules.

Test ideas before you ship them

Run unlimited A/B tests, attach hypotheses to outcomes, and build a searchable archive of what works — and what doesn't.