// Troubleshooting · Discounts
Shopify discount code not working? Every cause, fixed.
Last updated 28 September 2026.
A Shopify discount code fails when any one of its conditions fails — and Shopify usually won't tell the customer which. The nine causes, in order of how often we see them: 1) it can't combine with another discount already applied, 2) outside its active dates or timezone, 3) usage limit reached (total or per-customer), 4) the cart misses eligibility (products, collections, minimum spend/quantity), 5) the customer isn't in the eligible segment or isn't logged in, 6) not enabled for that sales channel, 7) a typo or invisible space in the code, 8) it's deactivated or deleted, 9) an app-generated code conflicting with native discounts. Open Admin → Discounts, open the code, and check each condition against the customer's exact cart.
"Your discount code isn't working" is the support message merchants dread most, because it usually arrives mid-promotion — when you're paying for the ads that deliver customers to the rejection. The code is almost never "broken"; one of its rules is quietly saying no. Here's every rule that can say no, and the fix for each.
A Shopify discount code is almost never “broken” — it is rejected because one of its nine conditions quietly failed, and the customer usually sees only a generic “enter a valid discount code”.¶

How Shopify decides whether a code applies
When a customer enters a code, Shopify runs it through a fixed series of checks. The code only applies if every check passes — and the error shown to the customer is often just a generic "enter a valid discount code", which is why merchants end up guessing. This is the actual gauntlet:
The nine causes and their fixes
1. It can't combine with a discount that's already applied
The most common cause in modern Shopify stores. By default a checkout takes one discount, and an automatic discount already on the cart blocks entered codes unless both discounts explicitly allow combining. Fix: open each discount → Combinations → tick the classes it may combine with (product, order, shipping). Both sides must allow it. Shopify's rules for what can stack are in their combining-discounts documentation.
2. Outside its active dates — or the timezone bit you
Start and end dates run on your store's timezone (Settings → General), not the customer's. A "starts Friday" code is dead to your US customers while it's still Thursday in their timezone — or expired for Australians while your US audience thinks the sale is on. Fix: check the date window against the store timezone, and pad promotions a few hours each side.
3. Usage limit reached
Two separate limits: total uses across the store, and one use per customer. A viral code hits the total silently mid-promotion; a returning customer trips the per-customer rule and gets the same unhelpful error. Fix: the discount's detail page shows uses so far — raise the cap or accept it's spent.
4. The cart doesn't qualify
If the discount targets specific products or collections, requires a minimum spend, or a minimum quantity — and the cart misses by one dollar or one item — rejection. Watch two classics: the minimum is checked against the discounted subtotal, and products in a "sale" collection may have been quietly removed from it since the code was made. Fix: rebuild the failing customer's exact cart and compare it line-by-line against the discount's requirements.
5. The customer isn't eligible
Codes limited to customer segments (first-timers, VIPs, newsletter subscribers) require Shopify to know who the customer is. A guest checkout, a different email than the one in the segment, or simply not being logged in fails eligibility. Fix: either widen eligibility to all customers, or make the promotion's fine print say "log in with the email that received this offer".
6. Wrong sales channel
Discounts can be scoped to channels. A code created for the online store won't apply at POS, and vice versa — and codes generated by apps sometimes register on a channel you don't expect. Fix: check the channel settings on the discount against where the customer is actually buying.
7. A typo or an invisible space
Copy-pasting from email adds trailing spaces; Instagram capitalises; customers type O for 0. Shopify matches codes case-insensitively but not fuzzy. Fix: in promotions, use short, unambiguous codes (no O/0, I/1 lookalikes) and always send a share link that pre-applies the code (the discount page's "Copy link") so nobody types anything.
8. It's deactivated or deleted
Someone ended the promotion early, an app cleaned it up, or it was a draft that never went live. Fix: if it's not listed under Discounts → Active, it doesn't exist to customers — recreate or reactivate it.
9. An app-generated code conflicting with native discounts
Upsell, bundle, and loyalty apps create their own discounts and sometimes reserve the checkout's discount capacity. If codes only fail when a specific app's offer is in the cart, you've found it. Fix: test with the app's offer removed; then check the app's own combination settings, per Shopify's discounts documentation on how app discounts interact.
The most common stacking failure is structural: by default Shopify applies one discount code per checkout, and an automatic discount blocks codes entirely unless combinations are explicitly enabled on both discounts.¶
The 5-minute pre-launch test that saves the promotion
Every failed code during a paid promotion is a customer you paid to acquire, standing at the till, being told no. Before ads go live:
- Incognito window, on mobile, not logged in as staff.
- Build the exact cart the promotion advertises — the featured product, at the promoted quantity.
- Apply the code at checkout. Confirm the discounted total.
- Repeat with your automatic discount active, and at one dollar under the minimum spend — the two edge cases that bite.
- If you edit the discount mid-sale, re-test. Edits reset assumptions. Give Bilby the code and its Watch check applies it in the cart on every nightly visit; a rejection becomes a finding with a screenshot.
And remember the discount is only one link in the chain — the same pre-launch pass should confirm the add-to-cart button and the path to checkout survive under the promotion's traffic path.
Frequently asked questions
Why is my Shopify discount code not working at checkout?
Why can't customers use two discount codes at once?
Why does the code work for some customers but not others?
How do I test a discount code before a sale goes live?
Keep reading: Why did my sales suddenly drop? · 7 silent problems that kill sales overnight · Free ROAS calculator
// Promotions, verified nightly
Is the sale
still working?
Bilby applies your live discount at checkout every night and screenshots any rejection. One free scan, no signup.
Thin or missing product content is the other half of this problem, and it is the half search engines and AI assistants see. Navaal: AI SEO, AEO & GEO audits a Shopify catalogue for it free, and writes what is missing for review.