Shopify has great flexibility when creating automatic and checkout code discounts. Discounts can be set by a value or a percentage on all items or just certain Collections. Buy one get one free / at a lesser price can also be configured for various Collections. But what happens when you have Products in both a Sales Collection and another Collection. How do you exclude the Sales Collection Products from the discount but include all other Products?
There are some Apps to help with this but Shopify has some powerful bulk commands to help solve the issue natively. The secret to solve the issue utilises the bulk adding and removing of Tags.
So:
- Tag all* products with something unique like “not-in-sale”
- Filter to the Sale Collection within the bulk editor, select all of the products within that Collection and then “More actions” -> “Remove Tags”. Remove the “not-in-sale” tag.
- Create an auto Collection** (eg. called “Not in Sale”) for any product where the product has a tag of “not-in-sale”
- Impose whatever discount mechanic you want against that single “Not in Sale” Collection.
The discount will now only be imposed on products that are not already on Sale.
* Make sure you filter to all products when tagging then just the Sale Collection when removing the tag
** You can hide the “Not in Sale” Collection on the Collections List page by following this documentation https://shopify.dev/tutorials/customize-theme-change-collections-page
!! Remember that if you add any new products whilst this promo is on you will need to tag non sale items with “not-in-sale” to get them into the auto “Not in Sale” Collection.

