Exclude items from collection using tag 'does not contain'

Topic summary

Main issue: A 15% discount code intended for non-sale products is applying to items already discounted via the “Simple Product Price Scheduler” app, causing double discounts. The merchant suspects Shopify doesn’t recognize the app’s price changes as “on sale,” so discount restrictions aren’t enforced.

Goal: Auto-tag sale items as “On Sale,” build a dynamic collection that excludes those items, and restrict the discount to that collection.

Constraint: Shopify collections don’t offer a “does not contain” filter for product tags, making it hard to auto-exclude “On Sale” items without manual updates.

Suggested workaround: Use Liquid (Shopify’s templating language) to hide sale-tagged products from collections or disable add-to-cart links. The merchant notes this only affects visibility and doesn’t prevent the discount code from being applied if the product is accessed elsewhere.

Apps/automation: No third-party app recommendation was provided for automatic exclusion or scheduling with tag-based “not contains” logic.

Status: Unresolved. Key open need is a method to automatically exclude “On Sale” tagged products from discount eligibility without manual product updates.

Summarized with AI on December 16. AI used: gpt-5.

Hi there,

I’m facing an issue with our discount code setup, which is resulting in double discounts.

We offer a 15% discount code for products that aren’t on sale, but it’s still applying to discounted products. We use a third-party app called “Simple Product Price Scheduler” to schedule price changes (e.g., 25% off), and bulk tag products for specific sales like “October Sale”.

However, when the sale is live, the discount code continues to work on those products. I suspect the app and Shopify aren’t fully integrated, so Shopify doesn’t recognize the price change as a sale, allowing the discount code to still apply. We need an app like this for bulk tagging and scheduling, so switching apps isn’t ideal unless it offers similar features.

Here’s what I’m trying to achieve:

  1. Automatically tag all sale items as ‘On Sale’ using the third-party app.
  2. Create a dynamic collection that excludes items tagged as ‘On Sale.’
  3. Ensure the discount code only applies to products in this collection.

The problem is that Shopify doesn’t offer a ‘does not contain’ option for product tags, which is essential for this setup.

Is there any solution that avoids manually updating each product (we have too many), or can anyone recommend a third-party app that supports this functionality?

Thanks!

1 Like

If you are just looking to exclude products with a tag on them. You can do that with liquid if tag to check if a product contains that tag then not render it or hide it accordingly

Hi Shadab,

Thank you for taking the time to reply! :hugs:

While a liquid solution can exclude the display of certain products in certain places (like collections), i don’t think it will prevent the discount code from being applied to “On Sale” tagged products ?

When you exclude the products from being rendered in collection you don’t have to worry about it since users won’t see it.

Or you can disable the link which lets adds users to their cart.

And for automatically I don’t know about an app. So just manually adding self tags and exclude those products which contains that tag

You’re right that manually tagging works, but it doesn’t scale well once prices or product data change.

One way merchants handle this is by using a rule-based tagging app that keeps tags in sync automatically.

For example, with AutoTag Pro, you can:

  • Automatically add a tag like on-sale when a product update matches your rule

  • Automatically remove that tag when the product no longer meets the rule

  • Use those tags to control collections or discount eligibility without manual updates

This avoids having to maintain tags by hand and helps keep collections and discounts accurate over time.

Hi @Sabu

That is because the scheduled price changes are considered normal prices. Use discount eligibility for collections, not tags. Make a sale collection that is compared at a price that is greater than the price, and then exclude that collection from the discount. Alternatively, use Shopify Functions discount apps to auto-block stacking at checkout logic.