Why shipping costs spike at Shopify checkout (and how merchants fixed it)

By the Chatbait team ·

Short answer: shoppers abandoning a cart over a shipping cost that looks wrong or too high is common enough that Baymard Institute's research puts "extra costs too high (shipping, tax, fees)" as the single most cited reason shoppers abandon a cart, among those who weren't just browsing. On Shopify specifically, the Shopify Community forum has several real, diagnosable causes behind shipping costs that spike unexpectedly: products split across multiple locations charging a rate per location, discount codes applied before the free shipping threshold is checked, and thresholds set without looking at actual order values. Each has a specific fix below.

Facts and quotes below come from Shopify's own community forum, checked October 22, 2026.

Shipping doubles because products sit in two locations

One merchant posted in Wrong shipping costs at checkout that local delivery was charging around $16 instead of the expected rate, intermittently, and the problem came back after refreshing the cart or changing items. Another community member diagnosed it: the merchant's products were split across two Shopify "Locations," so at checkout Shopify treated the order as two separate shipments and applied a shipping rate to each one.

The fix: keep all products in a single Shopify location unless you genuinely ship from more than one warehouse. If you do ship from multiple locations, expect Shopify to charge for each shipment separately, and say so clearly before checkout rather than letting the shopper discover it there.

A discount code can quietly cancel free shipping

Shopify calculates shipping rates after a percentage discount code is applied, not before. A customer whose cart subtotal qualifies for free shipping can drop below the threshold the moment a percentage discount is applied, and get charged for shipping they expected to be free, as discussed in the community thread on calculating shipping rates before applying discounts.

The fix: if you run percentage discounts alongside a free shipping threshold, decide and state clearly whether the threshold applies to the pre-discount or post-discount total, and make sure your checkout actually behaves the way you've described it.

Thresholds set without checking actual order sizes

In Free shipping threshold: where did you finally set yours?, merchants describe setting a threshold more carefully than picking a round number. A few specific points from that thread:

  • One merchant argued a threshold should be based on your actual average order value and real shipping cost, not an arbitrary number.
  • Another suggested calculating it from your median shipping cost and the contribution margin you want to protect, then testing one change for 2 to 4 weeks while watching average order value, conversion and margin together, rather than changing it repeatedly.
  • A third pointed out that a $60 threshold is a problem if your typical cart is $55, since it effectively forces an extra $25 of spending; they recommended looking at your common basket totals first.
  • A fourth reframed the whole question: a threshold only works if there's a real, relevantly priced product a shopper would naturally add to reach it. Without one, a high threshold is just a shipping fee wearing a progress bar.

The fix: look at your actual order value distribution before setting a number, and keep it stable rather than changing it often, so it doesn't start to look manipulative to repeat shoppers.

The broader pattern behind all of this

One merchant's general question about checkout abandonment got the same answer the data backs up: unexpected shipping cost, limited payment options and a complicated checkout process are the usual suspects, and checking your own checkout analytics is how you find out which one is actually happening on your store, rather than guessing.

None of these fixes require a new app. They require finding out, specifically, what your shipping setup is actually doing at checkout, the same way the community diagnosed the two-location bug above. If shoppers are asking your support inbox why shipping costs more than they expected, that's also a sign the cost isn't clear enough earlier in the flow; an AI agent like Chatbait can answer a shipping-cost question straight from your shipping policy page the moment a shopper asks, but it won't fix a checkout that's actually calculating the rate wrong. For the underlying research on which abandonment causes a chatbot can and can't fix, see does a chatbot reduce cart abandonment on Shopify, and for writing the policy itself, see the shipping policy template.

Frequently asked questions

Why did my Shopify shipping rate suddenly double?

A common cause, reported on the Shopify Community, is products split across two Shopify locations: Shopify treats a multi-location order as separate shipments and charges a rate for each one. Keeping all products in a single location fixes it, unless you genuinely fulfil from more than one warehouse.

Does a discount code affect free shipping thresholds on Shopify?

Yes. Shopify calculates shipping after a percentage discount is applied, so a cart that qualified for free shipping before the discount can drop below the threshold once the discount is applied, according to the Shopify Community thread on this exact issue.

How do other Shopify merchants decide their free shipping threshold?

Community discussion favors calculating it from actual average order value and median shipping cost, rather than a round number, then testing one change for a few weeks and watching conversion and margin together before adjusting again.

What's the single biggest reason shoppers abandon a cart?

Extra costs appearing too high, including shipping, tax or fees, according to Baymard Institute's latest study of abandonment reasons, cited by 40% of shoppers who abandoned a cart and weren't just browsing.

Get the template pack by email, plus new templates when we add them.

We'll email you the template pack and new templates now and then. Unsubscribe any time. Privacy.