How to set up tiered volume discounts for multiple SKU variants?

I think I have a complicated use case, so hoping someone has a good recommendation for me. I sell socks, and I am trying to offer volume discounts for these different SKU variants of ‘one product’.

  1. I need to offer tiered discounting (buy 3 get 30% off, buy 5 get 35% off, buy 7 get 45% off, buy 10 get 50% off) that both shows up as a table on the product page and as a reminder in the cart.

  2. It needs to account for any product added to cart through this product page regardless of SKU.

  3. Ideally I would love a progress bar but I understand that may be out of reach.

  4. I also need to be able to add discount codes for sales on top of this tiered volume discount, and the codes need to work with shopify admin because I sell on Facebook shop as well.

Is there an app that can handle all of this, or even a couple of apps?

Hi,

We have developed an application that might be able to solve your problem. We are currently going through the app approval process which may take another week or so to get done. Would you like me to reach out to you as soon as we are ready to see if we can help you on your request?

Kind regards,

TFN Team

Hi,
I have similar issue as the author and would love to try your app - has it been approved?

Great question — the tricky part with tiered volume pricing on multi-variant products (like socks in different sizes/colors) usually isn’t the discount math, it’s deciding how quantities get counted across variants. That’s the decision to make first, then the setup follows from it.

Step 1 — Decide the counting rule. You have two options:

  • Per-variant tiers: a customer needs to buy N units of the same variant (e.g. 6x Medium) to hit a tier.
  • Per-product tiers (recommended for socks): quantities are summed across all variants of the product (e.g. 2x Small + 2x Medium + 2x Large = 6 units, tier unlocks). This is what most merchants actually want, since customers mix sizes/colors.

If you’re using a volume discount app, look specifically for a setting often labeled “apply across variants” / “group by product” / “combine variants” — a lot of apps default to per-variant counting, which is the #1 reason people think tiered discounts “aren’t working” for multi-SKU products. Test it in a draft order before going live.

Step 2 — Set your tiers. Once you know the counting rule, define your breakpoints (e.g. 3+ = 10% off, 6+ = 15% off, 12+ = 20% off) in whichever tool you’re using.

Step 3 — If you’re going fully native (no app). Shopify’s built-in automatic discounts (Discounts > Create discount) let you set a minimum quantity purchase requirement, but they don’t natively aggregate quantity across variants of the same product for tiered pricing — you’d be stacking multiple automatic discounts manually, which gets messy fast and doesn’t scale past 2-3 tiers. For true cross-variant tiered pricing without an app, you’d need to build a custom Shopify Function (Rust, deployed via Shopify CLI) that groups cart lines by product ID, sums quantities, and applies the matching tier — that’s real dev work, not an admin-only setup.

Step 4 — Sanity check before launch. Add a few different variants to a test cart and confirm the discount applies at the combined quantity, not just when you add multiples of one single variant. This is the most common bug reports around this feature.

Hope that helps narrow down what to look for! Happy to dig into specifics if you share whether you’re going the app route or building this yourself.

@ellasockmiracle the reply above already pointed at a Shopify Function for the no-app route, heres what that actually looks like so its less abstract. its a product discount Function that reads the cart, sums the quantities of all your sock variants, works out which tier that total hits (3+ = 30%, 5+ = whatever), and applies the % to those lines.

maybe 50 lines, runs natively at checkout, and you control the counting rule exactly so mixed sizes add up the way you want. thats the bit native automatic discounts cant do, multi-threshold tiers aggregated across variants in one rule.