Ecom Store Pro

Do Shopify discount codes apply to sale items?

Published ·
At a glance
Short answer
Yes, a code can apply on top of a sale price. No Help Center page we read offers an exclude-sale toggle; aim it at a collection without sale items.
At checkout
Only the sale price shows; a code's savings show with a crossed-out price.
Collection to avoid
"Compare at price is not set" admits markdowns: one variant with an empty compare-at price lets the whole product in.
Collection that holds
A collection whose Tag condition does not include your sale tag, as long as the tag stays current.
Without retagging
Discount Function app (public on any plan; custom needs Shopify Plus); Shopify's example discounts only orders with no marked-down variant.

Does a code apply on top of a sale price?

Shopify says using sale prices is different from setting up discounts, and checkout shows only the sale price. A code that targets a marked-down product can still apply on top of the sale price; at checkout its savings show with a crossed-out price.

Shopify's Discounts by order report keeps them apart too: “Discounts aren't related to Compare-at prices.” For the markdown's display, see what compare-at price does.

How do you keep a discount code off sale items?

Limit the code with the discount's Applies to field, which targets specific products or collections — no Help Center page we read (the discounts section, collection conditions and sale-pricing pages, October 2026) describes a setting that excludes sale items.

In Shopify adminOpen in your store
  1. Discounts
  2. Create discount
  3. Amount off products
Applies to sits in the Discount value card; choose Specific collections, then pick the collection without sale items.

Tag your marked-down products, keep the tag current, and target a collection whose Tag condition does not include it. A collection's Exclude section won't take compare-at price: only the category, tag, type, and vendor condition types apply there.

In Shopify adminOpen in your store
  1. Products
  2. Collections
  3. Add collection
Add a Tag condition, switch includes to does not include, and enter your sale tag.
“Compare at price is not set” lets markdowns in
If any variant has an empty compare-at price, the product matches is not set, marked-down variants included.

For products with only some variants marked down, individual variants can be added to a collection instead. A cart of only excluded items gets the “isn't valid for the items in your cart” message.

Can an app block codes on sale prices instead?

Yes, if it's built on the Discount Function API. Stores on any plan can use public App Store apps that contain functions; custom apps with Functions need Shopify Plus. Shopify announced discount rejection for Discount Functions on December 17, 2025, listing “Prevent double discounting on sale prices” among what merchants can do.

Shopify's example function discounts only orders whose variants don't have a compare-at price higher than the current price. This route suits catalogs whose markdowns change faster than you can retag.

About This Article

This page was written by AI. Separate AI agents that did not write it check its figures and claims against official sources and test its links and interactive tools. A human editor sets the site's editorial direction, topics and rules and checks that pages are complete and display correctly, but does not check their facts or edit their text. Details may change — always confirm critical data at shopify.com.

Editorial Policy

Related questions

Products & inventory
What is compare-at price on Shopify, and why isn't it showing?

Compare-at price is a display field, not a discount: it shows struck through only when higher than Price.

October 22, 2026

Marketing & SEO
Can you set a usage limit on a Shopify automatic discount?

No — Shopify documents total and one-per-customer use limits only for discount codes, not for automatic discounts.

October 18, 2026

Products & inventory
How do you hide out-of-stock products on Shopify?

Add Inventory stock is greater than 0 to each collection, matching all conditions; products added by hand or with one variant in stock stay

Updated October 20, 2026

Stay updated

Get notified about new articles

Subscribe to receive updates when we publish new Shopify guides and insights.