WooCommerce Tiered Pricing: How to Set Different Prices for Different Quantities
WooCommerce Implementation Guide
The Quantity Table That Sells Itself
How to configure WooCommerce tiered pricing so your price-break tables are correct, your margins hold, and every edge case works the way you expect.
Most guides on WooCommerce tiered pricing explain the concept and then stop. They tell you to set up “tiers” and move on. What they skip is the part that actually matters: the exact numbers in your price-break table, what happens when a customer mixes products, how the discount interacts with a coupon already in the cart, and what your margin looks like at the highest tier after WooCommerce’s rounding logic.
This guide is the implementation-focused version. It assumes you understand the basic idea (buy more, pay less) and focuses on building quantity tables that work correctly in practice — including the scenarios where they don’t.
What this guide covers (and what it doesn’t)
WooCommerce tiered pricing and quantity discounts are related but not identical concepts. If you want to understand the conceptual difference between bracket-style tiered pricing, volume discounts, and bulk-break pricing — the “what’s the difference” question — that’s covered in a separate post. The broader strategic question of when tiered pricing is the right choice is in the foundational setup guide.
This guide focuses specifically on the implementation layer: how to translate a pricing intent into a correctly configured quantity table, how to verify your margin at each tier, which application mode to choose, and what happens at the edges.
How the math works: volume discount vs bracket model
Before configuring anything, you need to know which calculation model your plugin uses — because they produce different totals for the same tier structure.
Volume discount model (most WooCommerce plugins)
In a volume discount, the customer’s total quantity determines which tier fires, and that tier’s rate applies to every unit in the order. This is how Smart Cycle Discounts’ tiered discount type works, and how most WooCommerce quantity-discount plugins work.
Example: a product costs $25. Your tiers are 5+ units at 10% off, 10+ units at 20% off.
| Customer buys | Tier that fires | Rate applied to | Price per unit | Cart total |
|---|---|---|---|---|
| 3 units | No tier (below 5) | — | $25.00 | $75.00 |
| 7 units | Tier 1 (5+) | All 7 units | $22.50 | $157.50 |
| 12 units | Tier 2 (10+) | All 12 units | $20.00 | $240.00 |
The key detail: buying 12 units gives the customer $20 per unit on all 12 — not just on units 10 through 12. This is simple for customers to understand and straightforward to communicate on the product page.
Bracket model (less common)
In a bracket-style calculation, different rates apply to different unit ranges within a single order — similar to income tax brackets. Using the same tiers, 12 units would be calculated as: 4 units at $25 + 5 units at $22.50 + 3 units at $20 = $100 + $112.50 + $60 = $272.50. The bracket model produces a higher cart total for the same order than the volume discount model does.
Most WooCommerce plugins, including Smart Cycle Discounts, use the volume discount model. If your plugin’s documentation doesn’t specify, test it: add exactly one unit above a tier threshold and check whether the per-unit price drops for all units or only the marginal ones.
Why this matters for your pricing table
If you’re communicating pricing to customers as “buy 10+, pay $20 each,” the volume discount model means that the $20 rate covers all 10 units — and the customer’s cart total is $200, not a blend of different rates. That’s the right expectation to set. Make sure your product-page pricing table reflects the actual model your plugin uses.
Building your price-break table before you touch any settings
The right starting point is a spreadsheet, not a plugin configuration screen. Build the full price-break table on paper first — including the actual unit prices at each tier, not just the discount percentages. Then verify the margin before you open the plugin.
Start with unit economics, not discount percentages
Discount percentages are easy to enter and hard to reason about. What actually matters is the unit price and margin at each tier. Work through this for every tier before you configure anything.
| Tier | Min qty | Discount | Unit price ($30 product) | Your cost per unit | Margin per unit | Margin % |
|---|---|---|---|---|---|---|
| No tier | 1–4 | 0% | $30.00 | $12.00 | $18.00 | 60% |
| Tier 1 | 5+ | 10% | $27.00 | $12.00 | $15.00 | 56% |
| Tier 2 | 10+ | 20% | $24.00 | $12.00 | $12.00 | 50% |
| Tier 3 | 25+ | 30% | $21.00 | $12.00 | $9.00 | 43% |
Fill in the “your cost per unit” column with a realistic number — fully loaded cost including fulfilment, packaging, and any per-unit overhead, not just product cost. Then look at the margin % column at the highest tier. Is it acceptable? Can you still run the business profitably at that rate on a large order?
Setting thresholds based on your data, not round numbers
Tier thresholds should reflect how customers actually buy, not how tidy the numbers look. Run a quick query or export on your last 6–12 months of orders. Look at unit quantities per line item for the product you’re applying tiers to. Then set your first tier threshold just above the median.
If most customers buy 2 units and a handful buy 8–10, your tiers might be: 3 units (nudge the median buyer to add one more), 6 units (captures the moderate repeat buyer), 10 units (captures the high-volume buyer). Those thresholds are more effective than 5 / 10 / 25 chosen arbitrarily.
Real-world tier structures by product type
| Product type | Typical order range | Suggested tier thresholds | Reasoning |
|---|---|---|---|
| Coffee / consumables (monthly replenishment) | 1–3 units | 3 / 6 / 12 | 3 = one extra unit nudge; 6 = two-month supply; 12 = quarterly stock-up |
| Craft supplies / small items | 5–15 units | 10 / 25 / 100 | 10 = hobby batch; 25 = workshop quantity; 100 = event/reseller |
| Supplements / health products | 1–2 units | 2 / 4 / 6 | Low natural quantity — even small jumps change behavior significantly |
| Wholesale / B2B items | 10–50 units | 12 / 24 / 48 | Align with case sizes (12), half-pallet (24), full-pallet equivalents |
| Office / stationery supplies | 3–10 units | 10 / 25 / 50 | 10 = one box; 25 = department buy; 50 = office-wide bulk |
The margin guard: checking every tier before you publish
Before you publish any tier structure, run three checks. They take five minutes and they prevent the most common pricing mistakes.
Check 1: Can you survive a 100-unit order at tier 3?
Large orders are rare — but they happen, especially after you publish a pricing table. If your highest tier is 30% off and a customer places a 200-unit order the next day, that’s a significant revenue event. Make sure you’ve modelled what 200 units at tier-3 pricing actually returns after cost.
Check 2: Is there a “negative savings jump” at any threshold?
A negative savings jump happens when a customer realizes they’d spend more by crossing a tier threshold than by staying below it — due to poor rounding or an unusually large tier gap. This is rare with percentage discounts but can appear with fixed-amount tiers.
Example of the problem (fixed discount mode): product at $8.50, tier fires at 5 units for $5 off the order total. A customer buying 4 units pays $34.00. A customer buying 5 units pays $42.50 − $5 = $37.50. That’s a legitimate saving. But if the fixed discount were $3 off on 5 units: 5 × $8.50 − $3 = $39.50 vs 4 × $8.50 = $34.00 — the customer is worse off buying more. Test every fixed-amount tier before publishing.
Check 3: Do your tiers still work if you add a 15% storewide coupon on top?
If you’re running tiered pricing alongside occasional coupon campaigns, model what happens when both apply. A 20% tiered discount stacked with a 15% coupon code produces a 32% effective discount (not 35% — they compound, not add). At 32% off a $25 product, your unit price is $17.00. Run that against your cost. The full picture of how WooCommerce discount stacking works is worth understanding before you publish tiers.
Per-item vs cart-total: which mode to configure and why
When you configure a tiered discount in WooCommerce, you’ll typically choose between two application modes. The choice affects how the discount is calculated and how it displays to the customer.
Per-item mode
In per-item mode, the tier discount reduces the unit price of each item. When a customer adds enough items to trigger a tier, each unit’s price drops. The product page shows the discounted price directly, and the cart shows the lower per-unit cost.
| Scenario | Qty | Unit price (20% off at 10+) | Line total |
|---|---|---|---|
| Below tier | 6 | $25.00 | $150.00 |
| At tier threshold | 10 | $20.00 | $200.00 |
| Above tier | 15 | $20.00 | $300.00 |
Per-item mode is the right choice when your customers think in unit prices — wholesale buyers, B2B accounts, anyone comparing your per-unit cost against a competitor.
Cart-total mode
In cart-total mode, the tier fires a discount against the entire order subtotal once the quantity threshold is met. The unit price stays unchanged on the product page. The discount appears as a line item in the cart.
| Scenario | Qty | Subtotal (at $25 each) | Tier discount | Customer pays |
|---|---|---|---|---|
| Below tier | 6 | $150.00 | None | $150.00 |
| At tier (10+ = 20% off total) | 10 | $250.00 | −$50.00 | $200.00 |
| Above tier | 15 | $375.00 | −$75.00 | $300.00 |
Cart-total mode works better for retail promotions where you want to preserve the listed unit price while rewarding order size. “Buy 10 items, save 20% on your order” reads more like a promotional event than a pricing change.
Practical decision rule
If customers are asking “what does one unit cost me at volume?” — use per-item. If customers are asking “how much will I save on this order?” — use cart-total. The question your customers naturally ask tells you which mode fits their mental model.
Step-by-step: configuring tiered pricing in WooCommerce
WooCommerce does not include quantity-based pricing natively. You need a plugin. The setup below uses Smart Cycle Discounts as the example — tiered quantity discounts are a Pro feature in that plugin (confirmed against the plugin’s feature gate and readme.txt). The concepts are transferable to other plugins that support tiered pricing.
Build your price-break table first
Before opening the plugin, complete the spreadsheet from the previous section. You should have: your tier thresholds, the discount percentage or fixed amount at each tier, the resulting unit price, and your margin at each tier. This takes 10 minutes and prevents misconfiguration.
Create a new campaign and name it clearly
Give the campaign a name that identifies the product and the structure: “Volume Pricing — Coffee Beans” or “Bulk Tiers — Craft Packs.” If you’re planning multiple tier structures for different product groups, a clear naming convention saves headaches when you’re managing campaigns later.
Select products
Choose which products the tier structure applies to. Applying tiers to products with very different price points can create uneven outcomes — a 20% discount off a $5 item ($1 savings) and a 20% discount off a $200 item ($40 savings) are psychologically very different. Group products by similar price range where possible.
Select “Tiered Discount” as the discount type
In Smart Cycle Discounts, select Tiered Discount on the discount configuration step. You’ll then choose between percentage mode (discount expressed as a percentage off unit price) and fixed-amount mode (a set dollar amount off per unit or order total). Percentage mode is easier to apply across products with different prices. Fixed-amount mode gives customers a concrete dollar saving.
Add your tiers from your spreadsheet
Enter each tier: minimum quantity and discount value. Add them in ascending order of quantity. Most plugins validate that discount values increase as quantities increase — if yours doesn’t, double-check the order manually. For three tiers, a typical setup looks like: 5 units → 10%, 10 units → 20%, 25 units → 30%.
Choose per-item or cart-total mode
Apply the decision from the previous section. Per-item reduces the unit price — best for B2B and wholesale. Cart-total applies a discount to the order — best for retail promotions.
Set scheduling
If tiered pricing is permanent, leave the campaign running indefinitely. For a time-limited “buy-in-bulk” promotion, set start and end dates. Scheduled campaigns activate and expire automatically — you don’t need to remember to turn them off. If you’re testing a new tier structure before committing to it permanently, running it as a 30-day campaign first gives you data on which tiers customers actually reach.
Preview and verify before activating
Add the product to a test cart in quantities that cross each tier threshold. Confirm the price changes at the right quantities. Confirm the cart total matches your spreadsheet. Check how the discount displays — as a reduced unit price, or as a separate discount line item. Any discrepancy between your expected total and the actual cart total usually indicates a mode mismatch (per-item configured when cart-total was intended, or vice versa).
How tiered pricing interacts with the cart total
Tiered pricing doesn’t exist in isolation. A real customer’s cart often contains coupons, free shipping, other campaigns, and tax. Understanding how each of these interacts with your tier structure prevents surprises.
Tiered pricing + WooCommerce coupon codes
WooCommerce processes coupon discounts after campaign-based discounts in most plugin implementations. The practical effect is that coupon codes apply to the post-campaign price, so the savings compound rather than add. A 20% tiered discount on a $25 unit gives a $20 price per unit. A 10% coupon on top of that gives $18, not the $17.50 you’d get by adding 30% to the original.
This compounding means your effective discount depth is lower than “20% + 10% = 30%” — it’s approximately 28%. Most of the time this works in your favour from a margin perspective. The risk is when you’re running both a tiered structure and regular coupon campaigns and you’ve only modelled each in isolation.
Tiered pricing + free shipping threshold
If your store offers free shipping above a cart total (say, orders over $100), tiered pricing at the per-item level can create an edge case: a customer adding items to reach a tier may simultaneously push their cart below or above the free-shipping threshold. If they add 3 more units to hit tier 2 and the per-item discount drops the total below $100, they lose free shipping. The net effect might be that buying more costs them more.
Check your free-shipping threshold against your tier structure. If they interact badly, either raise the threshold or adjust the tier thresholds to avoid the overlap.
Tiered pricing + tax
In most WooCommerce configurations, tax applies to the discounted price (post-campaign). If you’re displaying prices inclusive of tax, the displayed unit price at each tier should already include the tax component. If displaying exclusive of tax, the checkout total will add tax after applying the tier discount. Test both displays in your configuration to confirm the numbers match customer expectations.
Edge cases that bite: mixed products, coupons, variable products
The following scenarios catch most stores at some point. Understanding them before they hit a real order is worth the reading time.
Mixed-product carts: does the tier count across products?
If your tiered campaign applies to “all products in category X” and a customer adds 4 units of Product A and 4 units of Product B (both in category X), do those 8 units count together toward a tier threshold of 5+?
This depends entirely on how the plugin calculates eligible quantity. Some plugins count per-SKU (each product’s quantity evaluated separately, so neither Product A nor Product B reaches the 5-unit threshold). Others aggregate across the campaign’s eligible products (8 total units, tier 1 fires). Smart Cycle Discounts applies discounts at the product level — each product’s quantity is evaluated separately against the tier thresholds.
The practical implication: if you want customers to be able to combine multiple products to reach a tier, you need a plugin that explicitly supports cross-product tier aggregation, or you need to design your tier thresholds to reflect single-product purchase behavior.
Variable products: do sizes/colors count together?
A customer ordering T-shirts in three sizes (2× Small, 3× Medium, 2× Large) might expect that “7 T-shirts = Tier 1 at 5+ units.” But WooCommerce’s cart architecture stores each variation as a separate line item. Most plugins evaluate quantity per line item, meaning 2 Smalls + 3 Mediums + 2 Larges = three separate line items, none of which reaches 5 units individually.
This is a common source of support tickets. The detailed mechanics are covered in the post on tiered pricing with variable products. The short version: if variation-level counting is a problem for your store, look for a plugin that explicitly offers “count all variations of a product together” as an option.
Stock-limited products: tiers customers can never reach
If you have a product with 8 units in stock and your highest tier starts at 10 units, no customer can ever reach that tier. The pricing table still shows on the product page, but the top tier is permanently unreachable. Smart Cycle Discounts’ Campaign Intelligence will flag this as a warning before you activate the campaign — a useful sanity check.
The fix is simple: either stock enough inventory to cover your highest tier, or lower the highest threshold to match your realistic stock level.
The “one unit above the threshold” jump
With a volume discount model, the customer experience changes sharply at a tier threshold. A customer with 9 units in their cart is paying full Tier 1 price. Adding 1 more unit (to reach 10) instantly drops the price on all 10 units to Tier 2. This jump is a feature — it incentivizes customers to add that one more unit. But it also means a customer who adds 10 units expecting a Tier 2 price and then removes one is suddenly back at Tier 1.
Some stores add a “next tier” nudge message near the cart — “Add 1 more item to save an extra 10%.” This message drives conversions at the tier threshold and makes the jump feel like a reward rather than an inconsistency.
Getting the pricing table in front of customers
The tier structure does nothing commercially if customers can’t see it. A pricing table on the product page is the most important single element for tiered pricing conversion. A customer who doesn’t know buying 10 units is cheaper will never buy 10 units to find out.
What a well-placed pricing table looks like
The table should appear near the “Add to Cart” button — not in a collapsible accordion, not in a footnote, not buried in the product description. It should show the quantity threshold, the resulting price per unit (not just the percentage), and ideally the total savings at each tier. Something like:
| Quantity | Price per unit | You save |
|---|---|---|
| 1–4 units | $30.00 | — |
| 5–9 units | $27.00 | $3.00 per unit |
| 10–24 units | $24.00 | $6.00 per unit |
| 25+ units | $21.00 | $9.00 per unit |
Show the unit price as a dollar amount, not just “10% off.” Customers respond to concrete savings numbers more than percentages. “$6 off per unit when you buy 10+” is more motivating than “20% volume discount.”
Dynamic price display as quantity changes
Some plugins update the displayed unit price in real time as customers change the quantity field on the product page. When the customer types “10” in the quantity box, the price immediately shows $24.00 instead of $30.00. This is the ideal experience — immediate feedback creates the strongest incentive to buy at the tier threshold. Not all plugins implement this, so it’s worth checking before you commit to one.
Next-tier nudges in the cart
A message like “Add 2 more items to save $6 per unit” in the cart sidebar converts a surprising number of customers who are sitting just below a tier threshold. If your plugin generates this nudge automatically, make sure it’s positioned prominently. If it doesn’t, it’s worth implementing manually or via a cart notice — the conversion lift at tier thresholds tends to be significant.
Common questions
Is tiered quantity pricing free in Smart Cycle Discounts?
No. Tiered quantity discounts require the Pro plan in Smart Cycle Discounts. The free version includes percentage discounts, fixed-amount discounts, and BOGO deals — but not tiered pricing. This is confirmed by the plugin’s feature gate (the discount_type_tiered feature is marked 'pro') and by the readme.txt free/Pro feature split as of version 2.1.3. If you want to test tiered pricing without upgrading, the WooCommerce discount plugin comparison covers which plugins include tiered pricing in their free tier.
What’s the maximum number of tiers I should configure?
Three to four tiers is the practical limit for most stores. Beyond four, customers stop reading the table and the incremental commercial benefit drops sharply. The exception is B2B catalogs where buyers are accustomed to multi-tier pricing sheets — in that context, up to six or seven tiers can make sense. For consumer-facing stores, simplicity wins.
Can I run tiered pricing on all products at once?
Technically yes — campaign tools let you target all products or all products in a category. Practically, be careful. Applying the same tier thresholds to products with very different price points or purchase patterns rarely serves all of them well. A 5-unit threshold makes sense for a $5 item (customers naturally buy handfuls). For a $200 item, almost nobody will buy 5 units, so the tier structure sits there unused. Build separate tier structures for meaningful product groupings.
What happens when two tiered campaigns overlap on the same product?
Priority resolution. Most campaign plugins apply the highest-priority campaign when two overlap. In Smart Cycle Discounts, campaigns have explicit priority scores and the system warns you before activating a campaign that conflicts with an existing one. If you’re running multiple tier structures (say, one product-level and one category-level), make sure you’ve set priority deliberately rather than letting the plugin decide arbitrarily.
Does tiered pricing affect WooCommerce’s “On Sale” filter?
Smart Cycle Discounts applies discounts at runtime through WooCommerce’s price filters — it does not write to the stored _sale_price database field. The “Sale!” badge and strikethrough pricing render correctly on product pages and in the shop. But WooCommerce’s native “On Sale” filter (the wc_get_product_ids_on_sale() function that the On Sale product block and some third-party faceted search tools use) reads stored sale data — and since no stored sale price is written, products discounted by tiered pricing won’t appear in those filters. This is the same behavior for most runtime-filter-based discount plugins, not an SCD-specific limitation.
Key Takeaways
- Most WooCommerce plugins (including Smart Cycle Discounts) use the volume discount model: the highest applicable tier’s rate applies to all units, not just marginal ones above the threshold
- Build your full price-break table in a spreadsheet before configuring the plugin — include unit price and margin at every tier, not just discount percentages
- Per-item mode reduces unit price (right for B2B, wholesale, customers who think in unit cost). Cart-total mode discounts the order (right for retail promotions, customers who think in total spend)
- Mixed-product quantity counting depends on the plugin: check whether your plugin aggregates across products in a campaign or evaluates each SKU separately
- Variable products are stored as separate line items in WooCommerce — variation quantities may not aggregate toward tier thresholds without specific plugin support
- Tiered pricing in Smart Cycle Discounts is a Pro feature. The free version covers percentage, fixed, and BOGO discount types
- A pricing table next to the “Add to Cart” button is the single highest-impact element for converting customers at volume. Without it, tiered pricing is invisible
Configure tiered pricing as a campaign
Smart Cycle Discounts Pro lets you run tiered quantity pricing as a scheduled campaign — test a tier structure for 30 days, check the conversion data, and adjust before committing to it permanently. The free version covers percentage, fixed, and BOGO discounts. Tiered pricing and spend thresholds are part of the Pro plan.