Shopstack Work with us

Guides Fix a problem

How do I stop discount codes from stacking with an automatic discount on Shopify?

Turn off stacking on the automatic sale

Shopify applies two discounts together only when "the setting on each discount allows the combination" (Shopify's discount combinations help page, checked November 9, 2026). So you change one discount, the automatic sale, and every code is covered.

  1. From your Shopify admin, go to Discounts.
  2. Click your automatic discount, for example Fall sale 20% off.
  3. In the Combinations section, untick Product discounts and Order discounts.
  4. Leave Shipping discounts ticked if a free shipping code should still work during the sale. Untick it too if it shouldn't.
  5. Click Save.
  6. Test: add a sale item to a cart, go to checkout, type one of your codes, and read the discount lines. Then leave the checkout before you pay.

You don't need to open each code. A code that allows the sale's class still can't stack, because the sale no longer allows the code's class.

What the shopper sees after the change

Shopify doesn't reject the code. It compares the two and keeps the better one: "the best discount for the customer's cart is always applied" (Shopify help).

  • The code saves less than the sale. A shopper with a $100 cart under a 20% sale types WELCOME10 for 10% off. The sale stays at $20 off, and the code doesn't apply.
  • The code saves more than the sale. The same shopper types VIP30 for 30% off. Shopify applies the code and drops the sale, so the shopper gets $30 off instead of $20.

Either way the shopper never gets both. When a typed code loses, Shopify can show Discount couldn't be used with your existing discounts, and its troubleshooting list names an active automatic discount as one cause.

If a big code like VIP30 should not replace the sale either, end that code before the sale starts. Each code has its own Active dates, so you set an end date on each one.

For every other pair, such as two codes together or product and order discounts on eligible stores, see the full matrix in Combine and stack discounts on Shopify.

Shopify can

  • Stop every code stacking on an automatic sale with the sale's Combinations setting, because both discounts must allow the combination Source: help.shopify.com
  • Apply the single discount that saves the customer more when two discounts can't combine Source: help.shopify.com

Shopify can’t

Pause every code during the sale with Discount Genie

Shopify's setting picks the better deal. It can't refuse a code with your own words, and it can't pause every code for the sale's dates in one place. Discount Genie's rejection rules do both. Discount Genie is a Shopify discount app by Shopstack, and rejection rules are available on the basic free plan, which covers up to 3 basic discounts.

  1. In Shopify admin, open Discount Genie and click Rejection rules, then click Create rejection rule.
  2. In Rule title, name it, for example Fall sale: no codes. Shoppers never see it.
  3. Under Code rejection rules, choose Limit codes in cart, then No codes allowed.
  4. Under Set reject message, write what the shopper reads, for example Our sale price is already applied. Codes are paused until Monday.
  5. In Active dates, enter the same start and end as your sale.
  6. Save the rule and test a code at checkout. Expect your message and the sale price.

No codes allowed doesn't look at a code's class, so it also removes a free shipping code. To keep one, use Reject codes based on title matching rules instead. Full options and examples: Limit and block discount codes on Shopify.

Shopify vs Discount Genie for stopping codes on a sale

NeedShopifyDiscount Genie
Stop a code stacking on the automatic saleYes, untick Combinations on the saleNot needed, use Shopify
Keep the sale when a bigger code is typedNo, the better discount winsYes, No codes allowed removes the code
Show the shopper your own messageNoYes, Set reject message
Pause every code for the sale's dates in one placeNo, set an end date on each codeYes, one rule with Active dates
PriceIncluded with ShopifyBasic free plan (up to 3 basic discounts); paid plans: new stores pay $0.99/mo for the first 3 months on any monthly paid plan

FAQ

How do I stop customers from using a discount code on top of a sale?

Open the sale's automatic discount, untick Product discounts and Order discounts under Combinations, and save. Both discounts must allow a combination, so no code can stack on the sale after that (Shopify help).

Can a customer use a discount code and an automatic discount together on Shopify?

Only when each one is set to combine with the other's class. If either one doesn't allow it, Shopify applies the single discount that saves the customer more.

Why does my discount code replace my automatic discount instead of being blocked?

Shopify always applies the best discount for the cart when two can't combine. A code worth more than the sale wins. To stop that, end the code before the sale starts, or reject codes with an app such as Discount Genie.

Can I disable all discount codes during a sale on Shopify?

Shopify has no single switch for that. You set an end date on each code. Discount Genie's No codes allowed rejection rule pauses every code for the dates you enter and shows your message.

Will free shipping codes still work during my sale?

Yes, if your automatic sale keeps Shipping discounts ticked under Combinations and the free shipping code allows the sale's class.