Skip to main content
CRO

Free Shipping Threshold on Shopify: Set It by Margin

How to set a free shipping threshold on Shopify from your margin and real parcel cost, not a percentage above AOV. Includes an Australia Post example.

November 4, 2026 17 min read Talha Butt.
Share

Free Shipping Threshold on Shopify: Set It by Margin

Quick answer: Set your Shopify free shipping threshold from your own numbers, not from a percentage above average order value. Work out the lowest order value at which you still keep the contribution you need after paying for the parcel: (parcel cost + contribution you want to keep) divided by your contribution rate before shipping. Then check that a shopper who stretches their basket to reach it adds more contribution than the shipping fee they no longer pay. In Shopify admin you set it on a flat shipping option under Settings, Shipping and delivery, using “Offer free shipping” and a minimum amount, then test it on a fresh checkout.

Most advice on this gives you a percentage: set the threshold some amount above your average order value and baskets will grow. The percentages differ from guide to guide, none of the four I read traces its percentage to a study, and none asks what the parcel costs you or what an extra item earns you.

That is where stores get hurt. A free shipping threshold is a pricing decision. It gives away the shipping fee on every order that already qualifies, and it only pays for itself if enough shoppers buy a bigger basket, or buy at all, because shipping stopped being a barrier. Whether that happens depends on your margin and your parcel cost, the two numbers a percentage ignores.

This guide sets the threshold from order-level numbers, works through an Australia Post example, gives the Shopify admin path as at 31 October 2026, and shows how to test and measure the change. Apart from the quoted Australia Post prices, every dollar figure in the worked example is illustrative arithmetic, not a benchmark and not a result from any store.

Why “a percentage above AOV” is the wrong starting point

I read four free shipping threshold guides on 31 October 2026 and they do not agree. One says to set the threshold 15% to 30% above average order value. Another says 15% to 25%. A third says 20% to 30%. A fourth gives an example that works out at roughly 43% above (a $35 average order and a $50 threshold; the percentage is my arithmetic, not theirs). One of the four says its range is a starting point to test, not a rule. A percentage cannot know three things that decide the answer.

It cannot know your parcel cost. Two stores with the same A$70 average order can have very different shipping bills. A light order that fits a small satchel and a 2 kg order of bulk product cost different amounts to send.

It cannot know your margin. Free shipping is paid for out of contribution: what is left of the order after product cost, payment fees and the parcel. A store with a 70% contribution rate before shipping can afford a lower threshold than one with 40%.

It cannot see your order mix. An average hides the shape. If a quarter of your orders already sit above any sensible threshold, those shoppers get free shipping for nothing. If most orders sit far below it, few people will reach it.

The guides do agree that the threshold should sit above the typical order. The arithmetic below tests that instinct.

What you need before you pick a number

Gather five inputs for the same window, such as the last 90 days:

  1. Order value on the basis Shopify uses for the threshold (explained next).
  2. Contribution rate before shipping: for each dollar of order value, what remains after product cost and payment fees. The post on contribution margin per order shows how to build it.
  3. What the parcel costs you, including packaging, for each type of parcel you ship. Use carrier invoices or label costs, not a guess.
  4. The shipping fee you charge today, if any.
  5. The spread of your order values: how many orders fall in each band, such as A$0 to 40, 40 to 60 and so on.

Keep revenue and costs on the same GST basis. Australia Post’s charges guide says its prices are GST-inclusive unless noted otherwise, so if your store accounts for sales excluding GST, convert one side before you compare. Mixing bases makes a margin look better or worse than it is. Ask your accountant which basis to use. The example below ignores GST to keep the logic visible.

Which order value Shopify compares against your threshold

Shopify’s help page on testing shipping rates says price-based rates use the cart’s total value after discounts are applied, and before taxes. Its page on free shipping discounts says the same for that discount type: products count at their discounted price and taxes never count. On the free shipping discount page, Shopify adds that gift cards and store credit used as payment do not affect the minimum.

Two consequences:

  • A discount code can take a shopper below your threshold. A shopper with A$90 of goods and a 20% code has A$72 of qualifying value, so an A$85 threshold no longer applies. That is correct behaviour, but it surprises people if the cart does not explain it.
  • In a sale, the threshold rises in list-price terms. With 20% off everything, an A$85 threshold needs A$106.25 of goods at full price (85 divided by 0.8), and your margin is thinner as well.

For your starting AOV, use the right report. Shopify’s Sales report (Analytics, then Reports, then the Sales category) defines average order value as gross sales less discounts, divided by orders, and gross sales exclude taxes and shipping. That is close to what the threshold compares against. Shopify’s analytics glossary defines total sales as including shipping charges and taxes, so do not compare a total-sales figure with your threshold. I could not confirm from Shopify’s pages how a store with tax-inclusive prices is treated at the threshold, so the testing section tells you to check on a real checkout.

Worked example: a threshold from margin and Australia Post cost

The store is invented and the numbers are illustrative: a small store shipping light parcels. Replace every input with your own.

InputIllustrative valueWhere it comes from
Typical order (after discounts, before shipping and tax)A$70Assumed
Product cost40% of order valueAssumed
Payment fees2% of order valueAssumed
Contribution rate before shipping (r)58%100% less 40% less 2%
Parcel cost, light orderA$12.05Australia Post Small prepaid Parcel Post satchel, packaging and postage included
Parcel cost, heavier orderA$16.40Australia Post Medium prepaid satchel
Shipping fee charged today (f)A$9.95Assumed
Cost to acquire a customerA$30Assumed

The two parcel costs come from Australia Post. Its “Retail pricing and product changes” page (dated 28 May 2026, changes effective 1 July 2026) lists Parcel Post prepaid satchels up to 5 kg, packaging and postage included, at A$10.55 extra small, A$12.05 small, A$16.40 medium, A$20.70 large and A$24.95 extra large. Its Post Charges Guide dated 1 September 2026 lists the same satchel prices and says its prices are GST-inclusive unless noted otherwise. The same guide gives own-packaging Parcel Post at A$16.00 for 500 g to 1 kg and A$20.25 for 1 kg to 3 kg.

Treat these as illustrative inputs. They are retail prepaid prices as at 1 September 2026. Your cost depends on your account, label provider and parcel sizes, so use your invoices.

Step 1: find the margin floor

Decide the minimum contribution you want from an order that ships free. Here the store wants at least A$35 after the parcel is paid for. The order value that delivers it is:

threshold = (parcel cost + contribution wanted) divided by r

For the light parcel: (12.05 + 35) / 0.58 = A$81.12. Check: 81.12 x 0.58 = 47.05, less the A$12.05 parcel, leaves A$35.00.

The same store and margin with different parcels:

ParcelParcel costMargin-floor threshold
Small satchelA$12.05A$81.12 (about 16% above A$70)
Medium satchelA$16.40A$88.62 (about 27% above A$70)
1 kg to 3 kg, own packaging (postage only)A$20.25A$95.26 (about 36% above A$70)

The own-packaging row is postage only, so your packaging cost would push that floor higher. That is the argument against a single percentage. The same A$70 average order produces thresholds from 16% to 36% above it, purely because the parcel changes. If your catalogue mixes light and heavy products, one threshold will be too high for some baskets and too low for others (more on that below).

For the rest of the example the store rounds the light-parcel floor up to A$85. Round up, never down, because the floor is a minimum.

Step 2: run the stretch test

Thresholds work by making shoppers add items. But a shopper who reaches the threshold stops paying the A$9.95 fee. So the extra items must earn more than the fee they replace. For a shopper whose basket was V and who now stretches to the threshold T:

change in contribution = r x (T - V) - f

The parcel cost cancels out, because you pay for the parcel either way. With T = A$85, r = 58% and f = A$9.95:

Basket beforeExtra spend to reach A$85Change in contribution
A$50A$35+A$10.35
A$60A$25+A$4.55
A$70A$15-A$1.25
A$78A$7-A$5.89

Break-even is where r x (T - V) equals f: a gap of about A$17.16 (9.95 divided by 0.58). A shopper who needs to add less than that to qualify leaves you slightly worse off. This is the number most threshold advice skips. A threshold close to your typical order does not pay by stretching alone, because the shoppers it nudges are closest to it and add only a few dollars. Stretching pays when the threshold sits far enough above the baskets you want to grow.

Step 3: count the cost of orders that already qualify

Every order already above A$85 now ships free, and you lose the A$9.95 fee on each. If 25 of every 100 orders are already at A$85 or more, that is 25 x 9.95 = A$248.75 of fees given up per 100 orders.

A new order that would not otherwise have happened, placed at A$85, earns 85 x 0.58 - 12.05 = A$37.25. So 248.75 / 37.25 = 6.7: about 7 extra orders per 100 current orders, or a 7% rise in order count, just to break even with no help from stretching. Stretched baskets from low starting points (the A$50 shopper above earns +A$10.35) and shoppers who were put off by the fee can supply some or all of that.

This is arithmetic, not a forecast. It is a bar to clear before you touch a setting: if 60% of your orders already sit above the threshold, the bar is high; if 5% do, it is low.

Step 4: check first-order profit against what you paid to acquire the customer

Free shipping lands on the first order, the one that also carries your acquisition cost. At the A$85 threshold an order contributes A$37.25 after the parcel, which leaves A$7.25 against the illustrative A$30 acquisition cost. An A$70 order with the A$9.95 fee contributes 70 x 0.58 - (12.05 - 9.95) = A$38.50, leaving A$8.50.

There is little room in either case, and a higher acquisition cost or heavier parcel could push the first order below break-even. The posts on first-order profitability and what counts as CAC show how to build the check with your own figures. If free shipping makes every first order unprofitable, it is a bet on repeat purchase, and you should know you are making it.

Step 5: choose the number and check three things

Take the margin floor, rounded up to a sensible price point, and check:

  1. Reach. What share of orders sit within 20% below the threshold? Those are the shoppers it can move. If almost none do, it is mostly a subsidy.
  2. Subsidy. What share of orders are already above it? That is the fee you give up, and it sets the break-even order rise from Step 3.
  3. Floor. After the parcel, does an order at the threshold still clear your contribution target and your acquisition cost?

If no threshold your shoppers would accept passes all three, free shipping may be the wrong tool for that catalogue. Alternatives are building part of the shipping cost into product prices (Shopify’s shipping strategy page says shipping is never really free and suggests including a portion of shipping in product prices), a cheaper flat rate, or a bundle that raises the basket in a way a threshold cannot. The post on bundles and upsells with a margin check covers the last one.

When the answer changes

A sale is on. At 20% off, an order at the A$85 threshold needed A$106.25 of list-price goods. With product cost at 40% of list price (42.50) and payment fees of 2% of the order (1.70), contribution before shipping is 40.80, or 48% instead of 58%. After the A$12.05 parcel that is A$28.75, not A$37.25. A threshold set for full-price trading can leave you below the A$35 you wanted once a sale starts. Re-run the sums before any promotion; the Black Friday checklist has other checks that apply to any sale.

You currently ship free on everything. The arithmetic reverses. In the example, an A$70 order earns 70 x 0.58 - 12.05 = A$28.55 today, and A$38.50 if it pays the A$9.95 fee. A threshold at A$85 makes sub-threshold orders pay again, and you stay ahead unless more than about a quarter of them disappear (28.55 / 38.50 = 74%). Whether they disappear is the real question, so treat it as a change to test, not a certainty.

Your products differ a lot in weight. One threshold is blunt. Give heavy or bulky products their own shipping profile (Option 4 below).

You ship to more than one country. Parcels abroad cost more, so the floor is higher there. Set the threshold per shipping zone (or per market) and run the calculation for each.

Prices change. Re-run the floor whenever your carrier rates or product cost move. The satchel prices used here took effect on 1 July 2026.

How to set it in Shopify admin (as at 31 October 2026)

The paths below match the Help Center pages I read on 31 October 2026. Shopify says shipping profiles and rates are gradually moving to “shipping options by market”, and a store keeps its current setup until it is upgraded. Use this as a map.

MethodUse it whenWatch for
Flat rate with “Offer free shipping” and a minimumOne simple threshold per zone or marketIn the markets version, Shopify’s steps list the minimum for flat, order amount and weight rates, not for carrier- or app-calculated rates
Order amount tiersYou want a visible schedule (A$9.95 up to A$85, free above)A gap above your top tier causes a checkout error
Free shipping discountThe rule depends on country, a rate cap or a customer groupOnly discounts that can combine with it lower the qualifying amount
Custom shipping profileCertain products ship free or need their own thresholdPrice-based rates from several profiles combine

Option 1: flat rate with a free shipping minimum

In the shipping profiles version:

  1. In Shopify admin go to Settings, then Shipping and delivery.
  2. Under Shipping profiles, click the profile you want to change.
  3. In the Shipping zones section, find your Australian zone, or click Add zone, name it and choose the regions.
  4. Click Add shipping option, or the horizontal menu icon on an existing option and then Edit shipping option.
  5. Enter a Name, set Rate type to Flat and enter your Price, such as 9.95.
  6. Select Offer free shipping and enter the minimum order amount, such as 85.
  7. Click Done, then Save.

In the shipping options by market version (early access, available only to certain stores, per Shopify), go to Markets, then your market, then Shipping, then Add shipping option. Set Rate type to Flat, enter the Price, then activate “Offer free shipping over a minimum order amount” and enter the Minimum amount. If a cart matches more than one rate, only the highest matching rate is charged.

Option 2: order amount tiers

Set Rate type to order amount and enter a Minimum, Maximum and Price for each range. Make the ranges cover every order value: start the lowest Minimum at 0 and leave Maximum empty on the highest tier. Shopify’s page says an order that falls outside your tiers, such as above a highest tier that has a maximum, gets no rate and the customer sees a shipping error at checkout.

Option 3: a free shipping discount

In Discounts, choose Create discount, then Free shipping, then a Method: discount code or automatic discount. You can set a minimum purchase amount or quantity, limit it to selected countries, and tick “Exclude shipping rates over a certain amount” so rates above that amount, such as an express rate, are not discounted. Shopify’s rates page says free shipping for specific customers needs a free shipping discount code (or a draft order if they also need a monetary discount).

Option 4: a custom profile for specific products

Create a shipping profile, add the products and give it its own free flat rate or minimum. When an order holds products from more than one profile, Shopify combines the applicable price-based rates (its example: two $5 rates for orders over $50 make $10 on a $55 order), so test mixed baskets.

Pages read on 31 October 2026: Shopify Help Center “Setting up shipping zones and rates”, “Setting up shipping options” (markets), “Troubleshooting and testing shipping rates”, “Free shipping discounts” and “Shipping strategy”.

Test before you tell anyone

A threshold you have not tested at checkout is a guess. Using the points in Shopify’s own help pages:

  1. Use a fresh checkout every time. Shopify says an abandoned checkout keeps the rates from when it was created, so it does not reflect your current settings. Reloading an old checkout after you change the threshold will make the change look like it failed.
  2. Test just below, at and above the threshold, such as A$84.95, A$85.00 and A$85.05, and read the shipping line each time.
  3. Test with a discount code that takes the basket under the threshold, and confirm the fee returns.
  4. Test how your tax display behaves. If your prices include GST, check whether the threshold compares against the price the shopper sees.
  5. Test each zone and profile. If you use weight-based rates, check product weights: Shopify lists missing weights, or weight units that do not match your rates, among the causes of unexpected rates.
  6. Test on a phone, where the cart and any progress message sit on a small screen.

Tell shoppers, and keep Google in line

A threshold only works if shoppers know about it before checkout. Put a plain line on the product page and in the cart: “Free shipping over A$85.” If your theme shows a progress bar, make sure its number matches your shipping settings: the bar only displays a value, and Shopify’s settings decide the rate. The guide to shipping and returns messaging for Australian stores covers wording and placement.

Baymard Institute’s list of reasons for cart abandonment shows “extra costs too high (shipping, tax, fees)” first at 40%, once the “just browsing” group is set aside. The page was last updated on 22 September 2025, gives no sample size or fieldwork dates, ties its “just browsing” figure to US online shoppers, and combines shipping with tax and fees, so it does not say how much is shipping. It does support showing the full cost early. The posts on surprise checkout costs and drip pricing and shipping fees in Australia go further. None of this is legal advice; ask a professional if you are unsure about your wording.

If you use Google Shopping or free listings, check Merchant Center too. Google’s help page says the shipping costs you submit should be as close as possible to those on your online store, offers a “free shipping over a specific order value” condition, and warns that updates through third-party platforms such as Shopify can overwrite manual changes. After you change a threshold in Shopify, look at what Merchant Center now shows.

Measure it without fooling yourself

  • Change one thing. A new threshold during a sale, a theme change or an ad push tells you nothing. Change the threshold alone, in a quiet fortnight.
  • Do not judge by AOV alone. AOV can rise while contribution per order falls, which is what the stretch test shows. Track contribution per order.
  • Use enough time. Compare a few full weeks with the same weeks before; a few days proves nothing.
  • Know what a before and after is. It is not a controlled test. If your traffic is small you probably cannot run a clean split, and that is fine; the post on A/B testing with low traffic explains the alternatives.

Track these with the same definitions before and after:

MeasureWhy it matters
Order count and conversion rateThe shipping barrier shows up here
AOV (Shopify Sales report)Gross sales less discounts, divided by orders
Share of orders within 20% below the thresholdThe shoppers it can still move
Share of orders at or above the thresholdThe subsidy
Contribution per order after the parcelThe real answer

Write the exit rule before you start: “If contribution per order is lower after six weeks and orders have not risen by the break-even amount, we raise the threshold or go back.” Writing it first stops you rationalising afterwards. I have not run threshold tests on client stores for this post, and nothing here is a test result.

Where this fits in the bigger system

If you pay for traffic, a threshold that lifts order value without cutting contribution helps first-order profit, and one that cuts contribution makes your acquisition cost harder to recover. That is why I set it from margin first.

Prism3 does not run ads, email or SMS. Those belong to whoever manages them for you, including any “you’re A$20 away from free shipping” email. What we do is the part after the click: where your store loses buyers on the product page, cart and checkout, plus organic and AI-search visibility. Average order value optimisation, including bundles and upsells, is part of our CRO service, and a threshold is one small lever inside that work.

Key takeaways

  • Do not set a free shipping threshold as a percentage above AOV. The guides I read disagree, and a percentage cannot see your parcel cost, margin or order mix.
  • Start with the margin floor: (parcel cost + contribution you want to keep) divided by your contribution rate before shipping.
  • Run the stretch test: a shopper who reaches the threshold must add more contribution than the shipping fee they no longer pay. A threshold close to your typical order often fails it.
  • Count the subsidy: every order already above the threshold now ships free. Work out how many extra orders you need to break even.
  • Shopify compares the cart after discounts and before taxes, so test with discount codes and re-run the sums before any sale.
  • In Shopify admin use Settings, Shipping and delivery, a flat shipping option, “Offer free shipping” and a minimum, then test on a fresh checkout.
  • The Australia Post prices used here (Small satchel A$12.05, Medium A$16.40) are illustrative retail prices as at 1 September 2026. Use your own invoices.
  • Measure contribution per order, not just AOV, and write your exit rule before you start.

FAQs

What is a good free shipping threshold for a Shopify store?

There is no honest single answer. The guides I read give different percentages above AOV and I could not trace any to a study. Use the margin floor, (parcel cost + contribution you want to keep) divided by your contribution rate before shipping, then run the stretch test and count how many orders already qualify. In the worked example the same A$70 average order gave floors between about A$81 and A$95 depending on the parcel.

How do I set free shipping over a certain amount on Shopify?

Go to Settings, then Shipping and delivery. Open your shipping profile and your country’s zone, add or edit a flat shipping option, select “Offer free shipping”, enter the minimum order amount, then click Done and Save. Stores on shipping options by market (early access) use Markets, then the market, then Shipping, and activate “Offer free shipping over a minimum order amount”. Menus change, so check Shopify’s current Help Center.

Should the threshold be above my average order value?

Usually, otherwise many orders qualify without changing anything. But the margin floor decides the real number, and with cheap parcels and a high margin it can be low. Also run the stretch test: a threshold only slightly above the typical order may not pay by stretching, because those shoppers add little before they reach it.

Does Shopify count discounts, tax or shipping toward the free shipping minimum?

Shopify’s page on testing shipping rates says price-based rates use the cart value after discounts, measured before taxes. Its free shipping discount page says taxes never count, products count at their discounted price, and gift cards or store credit used as payment do not affect the minimum. Shopify’s pages did not tell me how a tax-inclusive price store behaves, so test with a real product.

Can I offer free shipping on some products or in some countries only?

Yes. Set a different threshold per shipping zone, or per market if your store uses shipping options by market. For specific products, Shopify’s rates page says to create a custom shipping profile with those products and a free flat rate. Test mixed baskets, because price-based rates from several profiles combine.

Do I have to show shipping costs before checkout in Australia?

I cannot give legal advice on that. The practical point is that shoppers should see the shipping cost and the free shipping condition early, not first at the end of checkout. Check the Australian Competition and Consumer Commission’s current pricing guidance at accc.gov.au, and see our post on drip pricing and shipping fees, linked earlier. Ask a professional if you are unsure about your wording.

Want a second opinion on your cart and checkout numbers?

If shipping, cart and checkout are where your store loses buyers, our Shopify CRO service covers average order value work alongside the conversion audit, and every engagement starts the same way: book a free 30-minute diagnostic or tell us about your store. We share your Shopify store on screen and name two or three conversion leaks live, and tell you whether they are worth fixing. No pitch.

Free 30-min diagnostic

Seen enough?
Book a free diagnostic.

We'll identify exactly what's breaking your conversion rate and what to fix first. No pitch. No email gate. 30 minutes.

More from Prism3