Shopify discount code not working? What to check first

How an Agency Saved a Client $50,000 by Catching a Checkout Bug Early

Shopify discount code not working? What to check first

If your Shopify discount code is not working, the cause is almost always in the discount's own settings: it isn't active yet, it has expired, it hit its usage limit, or the cart doesn't meet its rules on products, customers, minimums or combinations. Check those settings in your Shopify admin before you look at your theme or apps, because that's where most broken codes get fixed.

When the settings look right and the code still fails, the problem usually sits between the storefront and checkout. A theme change, a cart drawer app or a discount app may be getting in the way. The table below lists the common symptoms, what to check for each one, and what to do next.

Shopify discount code not working: symptom, check, next action

Symptom

What to check

Next action

Every customer gets an invalid code message

Discount status, start date, end date, exact spelling of the code

Confirm the discount is Active, not Scheduled or Expired. Copy the code straight from the admin and test it yourself.

Code worked yesterday, fails today

Total usage limit, end date and time zone

Raise the limit or extend the end date. Check that the end time matches your store's time zone.

Code works for some customers, not others

Customer eligibility (segments or specific customers), one use per customer

Make sure the customer is logged in with the eligible account and hasn't already used the code.

Code accepted but no money comes off

Applies to specific products or collections, minimum purchase requirement

Compare the cart contents with the products and collections the discount applies to. Check the subtotal threshold.

Code fails when another discount is present

Combination settings on both discounts, any automatic discounts running

Turn on combinations where you want stacking, or tell customers which offer takes priority.

Code fails only on subscription items

Purchase type setting (one-time, subscription, or both)

Update the discount to include subscriptions if that's what you intended.

Discount field missing or cart behaves oddly

Recent theme edits, cart drawer apps, discount apps

Roll back or disable the most recent change and retest the cart-to-checkout path.

Discount link (/discount/CODE) doesn't apply

Redirect target, theme or app scripts that clear cart attributes

Open the link in a private window, add a product, and see whether checkout shows the code.

Start with the discount settings

Mobile phone displaying Stripe app on a laptop with an eCommerce site open, symbolizing online shopping.

Most discount complaints are configuration problems. Somebody set a launch date for Monday morning, but the store time zone made the code go live hours later. A code meant for one collection got saved with the wrong collection. These mistakes are easy to make and easy to fix.

Status and dates

Open Discounts in your Shopify admin and find the code. The status tells you a lot. Scheduled means the start date is still in the future. Expired means the end date has passed. If you're running a timed promotion, check the time as well as the date, and check it against the time zone in your store settings. A flash sale that ends at midnight in the wrong time zone ends while your ads are still running.

Usage limits

Shopify lets you cap total uses and limit each customer to one use. Both work as designed and both look like a bug to a customer who missed out. If a code was shared more widely than you planned, say through an influencer post or a coupon site, it can run out much faster than expected.

Spelling and lookalike characters

Check the code customers actually received. The email, ad or banner might show a different spelling from the one saved in the admin. Watch for lookalike characters such as the letter O and the number zero, or a capital I and a lowercase l. Copy the code from the campaign asset and paste it into your own test checkout.

Check eligibility rules and cart conditions

A code can be completely valid and still not apply to a particular cart. This is where merchants lose the most time, because the code looks fine in the admin.

Products, collections and minimums

If the discount applies only to specific products or collections, a cart full of other items gets nothing. Collections cause trouble here. A product removed from a collection during a catalog update stops qualifying without any warning. Minimum purchase amounts and minimum quantities catch people too, especially when another discount brings the subtotal under the threshold.

Customer eligibility

Codes limited to a customer segment or to named customers only work when the customer is recognised. A loyal customer who checks out as a guest, or with a different email address, won't qualify. Tell VIP customers to log in before they check out.

Combinations and automatic discounts

Shopify controls stacking through combination settings on each discount. If an automatic discount is already running and the code isn't set to combine with it, the customer gets one or the other. Decide which offers should stack before launch, and set every discount involved to match.

When settings are fine: theme and app conflicts

A smartphone with a shopping cart depicting the concept of online shopping in a colorful studio setup.

If the configuration checks out, look at what changed on the storefront recently. A cart drawer redesign, a new upsell app or a theme update can break the path that carries a discount from the cart into checkout. Custom discount fields in the cart are a common source of trouble, because they depend on theme code that Shopify doesn't maintain for you.

Discount apps and bundle apps add another layer. If an app calculates the discount and that app is degraded or misconfigured, codes can fail even though nothing in your own admin changed. Run through your checkout checks after installing a new app and you'll often find the culprit in minutes.

A simple way to isolate it: disable the most recent change, or preview the store's previous theme, and repeat the same cart. If the code works there, you've found your cause.

How to test discount codes before customers find the problem

Testing a discount code yourself before launch is the cheapest fix there is. Use a private browser window, build a realistic cart, and work through each condition: eligible products, ineligible products, below and above the minimum, and combined with any automatic discount. Do it on mobile as well as desktop. A cart drawer that works on desktop can hide the discount field on a small screen.

Make this part of your campaign routine. Our guide to pre-launch testing before you turn on ads covers the wider list, and discount codes belong near the top.

What automated checks can and can't cover

Automated test flows, like the checkout flow in Shoptest, simulate a real shopper: they add products, edit the cart and move through to checkout. That tells you the path customers take to redeem a code still works after a theme or app change. Synthetic tests stop before payment, though. They don't place real orders, so they won't confirm the final amount charged after every discount rule has run. Use automated flows to catch storefront and cart breakage early, and keep a quick manual check of the code's actual effect for each major promotion.

That split is efficient. Automation watches the journey continuously, and you spend your manual time only on the discount logic that matters for this particular campaign. The checkout testing checklist for major sales shows how to divide that work.

Keep a record of what broke and why

Discount failures tend to come back. The same collection rules trip up the same team every season. When a code fails, write down the cause and the fix: the setting, the app or the theme change involved. Over a few campaigns you'll see a pattern, and your pre-launch checks get faster.

Watch for the theme side as well. If you edit the cart template often, make testing your checkout flow after every theme update a habit, so a broken cart drawer doesn't quietly wreck your next promotion.

Conclusion

When a Shopify discount code is not working, go in this order: status and dates, usage limits, spelling, eligibility and cart conditions, combinations, and then recent theme or app changes. Most problems are fixed in the first few steps. The rest usually trace back to something that changed on the storefront.

Your next step: before your next promotion goes live, test the code by hand against each of its rules, and set up continuous checks on the cart-to-checkout journey so storefront breakage gets caught early. If you want to see how Shoptest monitors that path automatically, run a free website scan and see where your store stands.

Related articles

Keep every sale you earn.

Ensure your path to purchase works flawlessly.

Set up in 15 minutes, and let Shoptest do the rest.

Keep every sale you earn.

Ensure your path to purchase works flawlessly.

Set up in 15 minutes, and let Shoptest do the rest.

Keep every sale you earn.

Ensure your path to purchase works flawlessly.

Set up in 15 minutes, and let Shoptest do the rest.

Keep every sale you earn.

Ensure your path to purchase works flawlessly.

Set up in 15 minutes, and let Shoptest do the rest.