In short
- Base your free shipping threshold on the distribution of order values and the median, not just average order value.
- Choose a threshold just above a dense cluster of orders and make sure you have products priced to bridge the gap.
- The threshold only pays when extra gross profit from bigger baskets exceeds the shipping revenue and cost you absorb.
- Indian stores should decide how free shipping applies to COD orders and track RTO after any change.
- Judge the result on gross profit per session, not AOV alone.
To set a free shipping threshold, look at how your order values are distributed, not just your average. A sensible starting point is a threshold a little above your typical order, close enough that many shoppers can reach it with one small add-on, and high enough that the extra gross profit from those add-ons covers the shipping you give away. Then test it for a few weeks and judge it on profit per visitor, not just AOV.
Why AOV alone is the wrong starting point
Average order value is skewed by a few large orders. If most customers spend ₹700 to ₹900 but a handful of bulk or gifting orders spend ₹8,000, your AOV might read ₹1,150. A threshold set at ₹1,199 because "it is just above AOV" would be out of reach for most shoppers.
What you need is the shape of your order values: where orders cluster, the median (the middle order) and how many orders sit just below each candidate threshold. That tells you how many shoppers a threshold can realistically nudge.
Step 1: Pull and bucket your order data
- In Shopify admin, export the last 90 days of orders (Orders, Export). Exclude test orders, cancelled orders and one-off wholesale orders.
- Use the order subtotal before shipping and after discounts, since that is closest to what shoppers see against a threshold in the cart.
- Bucket orders into ₹100 or ₹200 bands and count orders in each.
- Calculate the median and AOV, and note your current shipping charge and actual shipping cost per order.
Here is an illustrative distribution for a skincare brand. The numbers are an example, not a benchmark.
| Order subtotal band | Share of orders |
|---|---|
| Under ₹500 | 14% |
| ₹500 to ₹799 | 31% |
| ₹800 to ₹999 | 24% |
| ₹1,000 to ₹1,299 | 13% |
| ₹1,300 to ₹1,999 | 11% |
| ₹2,000 and above | 7% |
In this example, the median order sits in the ₹800 to ₹999 band and AOV works out at about ₹1,000. More than half of orders sit between ₹500 and ₹999.
Step 2: Shortlist candidate thresholds
Good candidates sit just above a dense cluster of orders, so a meaningful share of shoppers are within one add-on of qualifying. In the example, two options stand out:
- ₹999: just above the median. The 24% of orders in the ₹800 to ₹999 band are close, and many need less than ₹200 more.
- ₹1,299: above AOV, just past the next cluster. This asks more of shoppers but lifts baskets further for those who qualify.
Check your catalogue for "gap fillers". If the typical gap is ₹150 to ₹300, you need appealing products in that range: minis, refills, accessories or a second unit at a small saving. A threshold with no easy way to reach it just frustrates people.
Step 3: Do the margin maths
A threshold works financially when the extra gross profit from larger baskets is greater than the shipping revenue you give up. You give it up in two places: on orders that move up to qualify, and on orders that were already above the threshold and now ship free.
Using illustrative figures, with 1,000 orders a month and the distribution above:
| Item | Example figure |
|---|---|
| Current shipping charge on every order | ₹60 |
| Gross margin on products | 65% |
| ₹999 option: orders expected to add a product to qualify | 150, adding ₹250 on average |
| ₹1,299 option: orders expected to add a product to qualify | 100, adding ₹300 on average |
Threshold at ₹999
- Extra gross profit: 150 x ₹250 x 65% = ₹24,375.
- Shipping revenue lost on those 150 orders: 150 x ₹60 = ₹9,000.
- Shipping revenue lost on the 31% of orders already above ₹1,000: 310 x ₹60 = ₹18,600.
- Net: about -₹3,225 a month, before any change in conversion rate.
Threshold at ₹1,299
- Extra gross profit: 100 x ₹300 x 65% = ₹19,500.
- Shipping revenue lost on those 100 orders: ₹6,000.
- Shipping revenue lost on the 18% of orders already above ₹1,300: 180 x ₹60 = ₹10,800.
- Net: about +₹2,700 a month, before any change in conversion rate.
The lower threshold feels more generous but, in this example, only pays if it also lifts conversion rate enough to cover the gap. The higher one pays on basket size alone. Your numbers will differ, and the biggest unknown is how many orders actually move up, so treat these as assumptions to test. Also remember that a visible free shipping offer can bring in orders that would not have happened at all, which neither calculation includes.
Step 4: Account for India-specific costs
- Shipping zones: courier rates vary between local, metro and remote pincodes. Use your blended average cost, and check whether remote zones need a different rule.
- COD: COD orders cost more to fulfil and carry RTO risk. Many stores keep free shipping for all payment methods but charge a separate COD fee, or offer free shipping only on prepaid orders. Whichever you choose, state it clearly on product pages and in the cart.
- RTO: if a free shipping offer increases low-intent COD orders, your RTO rate can rise. Track it for at least four weeks after the change.
- Weight: for heavy or bulky products, an order-value threshold may not cover shipping costs. Consider excluding them or using weight-based rules.
Step 5: Set it up in Shopify
There are two main ways to offer free shipping above a threshold:
- A conditional shipping rate. Go to Settings, Shipping and delivery, open your shipping profile and add a rate priced at zero with a condition based on order price. Shopify warns that price-based tiers must cover the full range of order values, so leave the maximum on your highest tier empty to avoid checkout errors (Shopify Help Center).
- A free shipping discount. Create an automatic or code-based free shipping discount with a minimum purchase requirement. This is useful for time-limited offers or specific customer segments (Shopify Help Center).
If you use a third-party checkout, confirm it reads your Shopify shipping rules correctly before launch, and place a test order just below and just above the threshold.
Step 6: Make the threshold visible
A threshold only changes behaviour if shoppers know about it at the right moment:
- Announcement bar: "Free delivery on orders above ₹999."
- Product page: a short line under the price.
- Cart progress bar: "You're ₹180 away from free delivery", updating live, with two or three gap-filler products suggested beneath it.
- Checkout: make sure the zero shipping rate is clearly labelled.
Step 7: Test and measure
Shipping rules are hard to A/B test cleanly on standard Shopify, because rates apply storewide. A practical approach is a time-based test: run the new threshold for three to four full weeks, avoid major sales and festive peaks, and compare with a similar prior period. Track:
- Conversion rate and AOV, by device.
- Share of orders landing just above the threshold.
- Shipping cost as a percentage of revenue.
- Gross profit per session, the metric that combines all of the above.
- COD share and RTO rate.
If orders bunch just above the new threshold and profit per session rises, keep it. If AOV rises but conversion falls enough to reduce profit per session, lower the threshold or improve your gap fillers. For more ideas on raising basket size, see our guide to Shopify bundle apps.
Get help choosing the right threshold
A free shipping threshold is one of the simplest levers for AOV, but only when it's based on your own order data and margins. If you'd like help analysing your orders, modelling thresholds and building the cart experience around them, speak to our conversion rate optimisation team.
Frequently asked questions
Not automatically. AOV is often pulled up by a few large orders, so a threshold just above it may be out of reach for most shoppers. Look at where orders cluster and at the median. Many stores start just above the median or just above the main cluster, then adjust based on test results.
Either add a zero-priced shipping rate with a condition based on order price in Settings, Shipping and delivery, or create a free shipping discount with a minimum purchase requirement. With price-based rates, make sure your tiers cover every order value and leave the highest tier's maximum empty to avoid checkout errors.
It depends on your COD costs and RTO rate. Some brands offer free shipping on all orders but add a separate COD fee, while others offer free shipping only on prepaid orders to nudge shoppers towards UPI. Whichever you choose, state it clearly on product pages and in the cart to avoid surprises at checkout.
Run it for at least three to four full weeks, avoiding big sales and festive peaks, and compare with a similar earlier period. For Indian stores with meaningful COD volume, keep tracking RTO for a few weeks after that, because undelivered orders show up later than the orders themselves.
A progress bar that updates live, such as 'You're ₹180 away from free delivery', with two or three relevant products priced close to the typical gap. Minis, refills, accessories or a second unit at a small saving work well. Without easy gap fillers, a threshold can frustrate shoppers instead of lifting baskets.