Set a Minimum Order Value on Shopify Checkout (Without Losing Sales)
Small orders can cost more to fulfill than they earn. Learn how to enforce a minimum order value at Shopify checkout that can't be bypassed, and how to set it up so customers top up instead of leaving.

Every order has a fixed cost: picking, packing, a box, a label, payment fees, and sometimes a free-shipping promise you made on the homepage. On a large order those costs disappear into the margin. On a $6 order they can wipe it out entirely.
A minimum order value fixes that. The trouble is that Shopify doesn't offer one natively, and the popular workarounds are easy to get around. This tutorial explains how to enforce a minimum order value at Shopify checkout properly, and how to set it up so customers add more to their cart instead of abandoning it.
Why a minimum order value matters
A minimum isn't right for every store, but it makes sense when:
- Fulfillment costs are fixed. Packaging, labor, and shipping don't shrink with the order.
- You sell wholesale or B2B. Trade customers are expected to meet an order minimum, and small orders disrupt your pricing.
- You offer free or flat-rate delivery. Local delivery runs by your own drivers only pay off above a certain basket size.
- Low-value orders attract abuse. Small orders are a common pattern in card testing and promo code abuse. Our post on promo code abuse prevention covers the related tactics.
The goal isn't to turn away customers. It's to make sure every order you accept is worth fulfilling.
Your options on Shopify
Native settings
Shopify can set minimum order amounts on shipping rates. For example, a free shipping rate that only appears for orders over $50. That's useful, but it isn't a minimum order. Customers below the threshold still see other rates and can still check out.
B2B features on Shopify Plus include quantity rules and minimums for company customers, but there's no general store-wide "minimum cart total" setting for regular checkout.
Cart page scripts
The classic workaround is theme JavaScript that disables the checkout button when the cart total is below the minimum. It's a nice early warning, but it isn't enforcement. It can be bypassed by:
- Express checkout buttons like Shop Pay, Apple Pay, or PayPal on product pages
- Buy-now buttons that skip the cart
- Direct checkout links and cart permalinks
- Editing the cart from within checkout after the check ran
If even a fraction of orders slip through, you're back to manually canceling and refunding.
Shopify Functions validation
A Cart and Checkout Validation function checks the cart total on Shopify's servers, inside checkout. If the total is below your minimum, checkout is blocked with your message, regardless of how the customer arrived. Public apps using validation functions work on all Shopify plans. Our checkout blocker guide explains the mechanics in more detail.
The best setup uses both: a cart message that tells customers early, and a validation rule that guarantees it.
Choosing the right threshold
The number you pick matters more than the tool. Too low and it doesn't solve the problem. Too high and it turns away customers who would have come back.
Questions to work through:
- What is your fixed cost per order, including packaging, labor, and payment fees?
- What's the lowest order value where you still make a reasonable margin?
- What does a typical first order look like? A minimum above that risks losing new customers.
- Can a customer realistically reach the minimum with one or two of your products?
- Do you already have a free shipping threshold? Many stores align the two, or set the minimum well below it.
Step-by-step setup
- Decide the threshold and the currency it applies to.
- Decide what counts toward it: subtotal before or after discounts, and whether shipping counts. Most stores use the subtotal after discounts.
- Decide who it applies to: everyone, only retail, only wholesale customers, or only certain markets.
- Write a clear message that includes the minimum and ideally how much more is needed.
- Add a matching notice on the cart page so customers aren't surprised at checkout.
- Build the validation rule.
- Test with carts just below and just above the threshold, with and without discount codes, and through express checkout buttons.
Rule examples
- Store-wide minimum. Condition: cart subtotal is less than $25. Message: "Our minimum order is $25. Add a little more to your cart to check out."
- Wholesale minimum. Condition: customer has tag
wholesaleAND subtotal is less than $300. Message: "Wholesale orders have a $300 minimum. Please add more items or contact us for a sample order." - Local delivery minimum. Condition: selected delivery method is "Local delivery" AND subtotal is less than $40. Message: "Local delivery requires a $40 minimum. Choose shipping or pickup, or add more items."
- Market-specific minimum. Condition: shipping country is Canada AND subtotal is less than CA$35. Message: "Orders to Canada have a CA$35 minimum because of shipping costs."
- Maximum order value. Condition: subtotal is greater than $2,000. Message: "For orders over $2,000, please contact our sales team for a quote." Useful for fraud control and manual review.
Pitfalls and edge cases
Discounts pushing carts under the minimum. A customer at $27 applies a 20% code and drops to $21.60. Decide in advance whether the rule checks the total before or after discounts, and make the message clear either way.
Multi-currency stores. A $25 minimum doesn't automatically translate into sensible amounts in every market. Set explicit thresholds per currency or market where you can.
Gift cards. If gift cards count toward the subtotal, customers can buy a gift card just to reach the minimum. Decide whether to exclude gift card products from the calculation.
Subscriptions and free samples. A recurring subscription order or a free sample request may legitimately fall under the minimum. Exclude them by product or tag.
Staff and test orders. Give your team a customer tag that bypasses the rule, so internal orders aren't blocked.
Vague messaging. "Order cannot be completed" is the fastest way to lose the sale. State the minimum, and keep the tone helpful.
Making the minimum feel like a nudge, not a wall
A minimum order can lift average order value instead of just blocking orders, if you help customers reach it:
- Show a progress message in the cart ("You're $8 away from the minimum")
- Recommend low-cost add-ons near the threshold
- Align the minimum with a free shipping threshold so reaching one feels like a reward
- Mention the minimum on product pages if your products are cheap individually
For checkout-side offers, see our guide to checkout upsells and product offers.
Doing it with Blockly Checkout Customizer
Blockly Checkout Customizer, launching soon on the Shopify App Store, includes minimum and maximum order value rules in its no-code builder. Set the threshold, choose whether it applies to everyone or only to certain customer tags, markets, or delivery methods, write the message, and save. Because it runs as a Shopify Function, the rule applies to express checkout buttons and direct checkout links, not just the cart page.
The takeaway
A minimum order value protects your margin on every order, but only if it's enforced at checkout. Cart scripts are a helpful warning; server-side validation is the guarantee. Pick a threshold your customers can realistically hit, decide how discounts and gift cards count, set per-market amounts if you sell internationally, and pair the rule with clear messaging and easy add-ons. Done well, most customers below the minimum will top up rather than leave.
Related articles

Rename Payment Methods on Shopify Checkout to Build Trust

Restrict Shopify Checkout by ZIP or Postal Code

