Feature Request - Allow product/SKU exclusions on discounts

When setting up discounts (automatic or code-based), there’s currently no native way to exclude specific products or SKUs — only include them. This creates a real operational challenge for stores that permanently discount certain products and need to ensure those items aren’t double-discounted when storewide or collection-wide promotions are active.

The current workarounds (restructuring collections, using third-party apps) add unnecessary complexity and maintenance overhead for what feels like a fundamental discount management need.

What I’d love to see: An “Exclude products” field on the discount setup page — similar to how shipping profiles handle exclusions — where you can add specific products, variants, or SKUs that should never be eligible for that discount.

This would be especially valuable for stores running ongoing promotional pricing on select SKUs alongside broader seasonal or campaign discounts.

Would love to see others upvote this if it’s a pain point for your store too! :raising_hands:

Hey @Nulla_Fulla !

There’s no native “exclude” field yet, but there are two workarounds worth trying that don’t require any app.

Option 1 (Combinations setting): If your permanently discounted products use a “Product discount” type, open your campaign or sitewide discount and go to the Combinations section. Uncheck “Product discounts.” Your campaign discount will stop stacking on top of items that already have a product discount applied. This is probably the quickest one to test.

Option 2 (Tag-based automated collection): Tag the products you never want to discount with something like no-discount. Then create an automated collection with the condition “Product tag is NOT equal to no-discount.” When setting up any campaign discount, set “Applies to” to that collection instead of All Products. It scales automatically as your catalog grows.

Both work for automatic discounts and code-based discounts. Worth testing in a draft order before going live to make sure the logic behaves the way you expect.

Hi @Nulla_Fulla , you should be able to do exactly that and more using the Discount Bot app.

You start by first selecting what items are eligible (you can also select All products):

They you fine-tune those eligible items by adding exclusions in the Does not apply to section. In the screenshot below, for example, Cookies are excluded and so are any products that have the Summer tag:

You can also have other exclusions like specific collections, variant options, customer tags, etc.

By the way, in case you’re looking to exclude items already on sale from getting discounts, then you wouldn’t have to select those items one by one. You can simply choose to exclude all sale items by selecting Full price items only under Sale items eligibility:

If there are questions, I’m happy to respond.

Hi @Nulla_Fulla

Totally agree, this is a legit pain point. Shopify’s native discount engine really does lock you into inclusion-only logic, which gets messy fast when you’ve got permanent SKU discounts running parallel to campaign promos.

For workarounds right now, some folks restructure their collections or manually gate discounts by customer tag, but that’s maintenance hell. If you’re on Plus, we use Checkout Boost for exactly this kind of thing on a few client stores. It lets you build discount rules that exclude specific products, collections or SKUs, so you can run a storewide 20% off alongside permanent 30% off on select items without the double-stack problem. You define which products opt out of which discounts, and it handles the logic at checkout.

It’s a paid app on the App Store, but if you’re dealing with this operationally across multiple promotions, it saves a ton of manual work. Are your permanent discounts currently set up as automatic discounts or codes, or are you mixing both?

Thanks!

@Nulla_Fulla

Shopify doesn’t offer a way even with the API. There is no way to exclude products, unless you manually exclude these products from your existing discounts. This is probably the only way.

If you have an exclude and include field in a discount, there will be conflicts in multiple discounts. I guess it’s the reason why Shopify doesn’t allow excluding products from a discount.