Discount Stacking and Priority
3 min read
When multiple campaigns target the same products, Smart Cycle Discounts uses a priority system to determine which discount applies. Understanding this system helps you plan campaigns that work together effectively.
The Priority System #
Every campaign has a priority level from 1-5. When multiple campaigns apply to the same product, only the highest-priority discount is used.
Priority Levels #
| Level | Name | Description |
|---|---|---|
| 5 | Critical | Highest priority, always wins. Use for flash sales, VIP exclusives. |
| 4 | High | Major events like Black Friday, seasonal launches. |
| 3 | Normal | Default level. Standard promotions, regular sales. |
| 2 | Low | Background discounts, ongoing loyalty programs. |
| 1 | Minimum | Lowest priority. Fallback campaigns, catch-all discounts. |
How Priority Resolution Works #
Single Product, Multiple Campaigns #
Product: Blue T-Shirt ($50) Active Campaigns: 1. "Summer Sale" (Priority 3) → 15% off 2. "Flash Deal" (Priority 5) → 30% off 3. "Loyalty Discount" (Priority 2) → 10% off Result: Flash Deal (Priority 5) wins Customer pays: $35 (30% off)
Priority Tie-Breaking #
If two campaigns have the same priority:
- Oldest campaign wins — The campaign created first takes precedence
- This ensures deterministic behavior — Equal-priority overlap resolution is stable across checks and runtime
Discount Stacking: What It Means #
Important: Smart Cycle Discounts does NOT stack discounts. Only one campaign discount applies per product.
Not Stacked (How It Works) #
Campaign A: 20% off (Priority 3) Campaign B: 10% off (Priority 2) Product Price: $100 Discount Applied: 20% (Campaign A wins) Final Price: $80 NOT: 20% + 10% = 30% off = $70
Why No Stacking? #
- Predictable margins: You know exactly what discount applies
- Simpler management: No complex interaction calculations
- Customer clarity: One discount shown, one discount applied
- Industry standard: Most retail discount systems work this way
WooCommerce Coupons Interaction #
Smart Cycle Discounts campaigns are separate from WooCommerce coupons:
| Feature | SCD Campaigns | WooCommerce Coupons |
|---|---|---|
| Application | Automatic | Requires code entry |
| Stacking with each other | No (priority system) | Configurable |
| Can be used together? | Yes, but see settings below | |
Coupon Restriction Settings #
In SC Discounts → Settings, you can configure:
- Allow coupons with campaigns: Both apply (cumulative)
- Block coupons on discounted products: Prevents double-dipping
- Campaign discount takes precedence: Coupon ignored on campaign products
Planning Overlapping Campaigns #
Scenario: Site-Wide Sale + Category Special #
Campaign 1: "Summer Sale" - All Products - 10% off - Priority 2 Campaign 2: "Swimwear Clearance" - Swimwear Category - 30% off - Priority 4 Result: - Swimwear products: 30% off (Campaign 2 wins) - All other products: 10% off (Campaign 1 applies)
Scenario: Member Discount + Flash Sale #
Campaign 1: "Member Discount" - All Products - 5% off - Priority 1 (always active) Campaign 2: "Flash Sale" - All Products - 25% off - Priority 5 (limited time) During Flash Sale: - All products: 25% off (Flash Sale overrides) After Flash Sale ends: - All products: 5% off (Member Discount resumes)
Scenario: Tiered Strategy #
Campaign 1: "Base Discount" - All Products - 5% off - Priority 1 Campaign 2: "Category Boost" - Electronics - 15% off - Priority 3 Campaign 3: "Clearance" - Clearance Tag - 40% off - Priority 4 Campaign 4: "VIP Flash" - All Products - 50% off - Priority 5 (rare) Product outcomes: - Regular item: 5% off - Electronics item: 15% off - Electronics with Clearance tag: 40% off - Any item during VIP Flash: 50% off
Health System Conflict Detection #
The campaign health system automatically detects and warns about overlapping campaigns:
Warnings Displayed #
- “Overlaps with X campaigns” — Shows which campaigns affect the same products
- “Will be overridden by higher priority campaigns” — When your campaign may not apply
- “Will override lower priority campaigns” — When your campaign will take precedence
Conflict Details #
The Review step shows:
| Conflicting Campaign | Priority | Overlap | Resolution |
|---|---|---|---|
| Summer Sale | 3 | 15 products | This campaign wins |
| Flash Deal | 5 | 5 products | Flash Deal wins |
Best Practices for Priority Planning #
1. Establish a Priority Strategy #
| Priority | Reserved For | Example Campaigns |
|---|---|---|
| 5 | Emergency/Flash | Flash sales, error corrections |
| 4 | Major Events | Black Friday, Holiday Sale |
| 3 | Standard Sales | Weekly deals, category sales |
| 2 | Ongoing Promotions | New arrivals, seasonal themes |
| 1 | Base/Fallback | Member discount, catch-all |
2. Document Your Strategy #
Use campaign descriptions to note:
- Why this priority level was chosen
- Which campaigns it’s designed to override/be overridden by
- Expected behavior during overlaps
3. Test Before Launch #
Review the conflict detection in Step 5 to understand how your campaign interacts with existing ones.
4. Use Scheduling to Avoid Conflicts #
When possible, schedule campaigns to not overlap rather than relying on priority:
- End one sale before starting another
- Use different days for different category sales
Common Questions #
Can I make discounts stack? #
No, by design. Only the highest-priority discount applies. This prevents margin erosion and keeps pricing predictable.
What if I need combined discounts? #
Create a single campaign with the combined discount amount. For example, instead of two 10% campaigns, create one 20% campaign.
How do I ensure my campaign always applies? #
Set it to Priority 5 (Critical). But use this sparingly—it overrides everything else.
Can customers see which campaign gave them the discount? #
The badge and savings messaging show the discount, but typically not the campaign name (which is for internal management).
What happens if I delete a high-priority campaign? #
The next highest-priority campaign automatically takes effect for those products.
Troubleshooting Priority Issues #
Problem: My discount isn’t showing #
Check:
- Is a higher-priority campaign overriding it?
- Is the product actually in your campaign’s selection?
- Is your campaign active (not draft, not expired)?
Problem: Wrong discount amount showing #
Check:
- Which campaign is actually winning? (Check priorities)
- Are there overlapping campaigns you forgot about?
- Clear cache and refresh to see current state
Problem: Discount appears on wrong products #
Check:
- Review the product selection for all active campaigns
- A higher-priority campaign may be selecting those products
- Use the campaign overview panel to see which products are affected