Promotions move quickly. If you wait for a perfect post-mortem, the window to learn closes. Here’s a business-first way to judge whether a special offer actually worked—without diving into implementation details.
Start with the job of the promotion

Every promo has a dominant objective. Pick one primary KPI before you judge anything else:
- Revenue now: Move units or fill seats this week.
- New customers: Grow the base, even at a discount.
- Reactivation: Wake up lapsed buyers.
- Mix management: Push overstock, bundle low-turn items, introduce a new line.
- Margin dollars: Protect contribution profit while acquiring.
Everything you measure should answer: Did we achieve the primary job, and at what cost or trade-off?
Establish “what would have happened anyway”

You don’t need a lab to think counterfactual:
- Baseline: Average performance for the same weekdays/season last year or the prior 4–8 comparable periods.
- Comparable set: Similar products/regions not in the promo.
- Timing context: Seasonality, payday effects, holidays, or competing events.
You’re not seeking perfect precision—just a fair yardstick to avoid mistaking normal seasonality for success.
The promotion scorecard (at a glance)

Use this table to frame your read-out. Fill it once per promo and keep the format consistent so leadership sees trends over time.
| Metric | Why it matters | Quick read | Typical pitfalls |
|---|---|---|---|
| Incremental Revenue = Promo Revenue − Baseline | Shows demand added vs. moved around | Positive and material vs. goal | Counting all boost as incremental; ignoring seasonality |
| Incremental Margin = Incremental Revenue × Margin% − Promo Costs | Profit, not just sales | Must be positive to claim success (unless “loss leader” by design) | Forgetting freight/fees; using list margin instead of promo margin |
| Redemption/Take-up Rate | Indicates offer attractiveness | Low → offer or targeting off; very high may signal over-discounting | Inflated by “always-on” shoppers |
| New-Customer Mix | Tells if you grew the base | Higher share of first-timers = strategic win | Counting one-time coupon hunters as loyal |
| Cannibalization | Measures sales shifted from full price | If top full-price SKUs dropped while promo SKUs rose, cannibalization is likely | Confusing stock-outs with cannibalization |
| Halo/Uplift | Add-on sales in same basket/visit | High halo can justify lower headline margins | Attributing unrelated spikes to promo |
| Payback Period | Time to recover acquisition discount | Shorter is better for cash cycles | Ignoring churn/returns |
| Lift vs. Control | Reality check on incrementality | Clear lift over non-promo peers | Poorly chosen control group |
| Post-Promo Dip | Detects “pull forward” | Minimal dip = healthier demand | Calling a spike “win” if followed by deep slump |
Read the numbers like an operator

- Revenue spike with thin margin? Good for clearing inventory, risky as a habit. Validate halo and new-customer mix before calling it a win.
- Moderate revenue, strong incremental margin? Quiet wins compound. Scale this pattern.
- High redemption, deep post-promo dip? You trained customers to wait. Tighten cadence or rework the value exchange.
- Flat totals, but high new-customer share and high first-purchase AOV? Likely worth it—watch 30/60/90-day repeat.
Simple sanity formulas (no tooling required)
- Incremental Revenue (IR):
IR = Promo period revenue − Baseline revenue - Incremental Margin (IM):
IM = (Promo revenue × Promo margin%) − Baseline margin dollars − Promo costs - Customer Mix Change:
% New Customers (promo) − % New Customers (baseline) - Halo Rate:
Non-discounted revenue in promo baskets ÷ Total promo basket revenue - Post-Promo Dip:
(Avg revenue next 1–2 periods − Baseline) ÷ Baseline
Keep these on one page. If IR is negative or IM is small, the offer only shuffled demand.
Cohorts beat averages

Judge behavior by who responded:
- First-timers: Did they return within 30–60 days without another discount?
- Lapsed: Did they re-enter normal cadence?
- High-value patrons: Did they wait for the promo, lowering long-term margin?
A promotion that acquires durable cohorts is stronger than one that juiced one-time buyers.
Channel and creative matter as much as the offer

Break out performance by channel (email, paid social, search, affiliates, retail) and creative angle (scarcity, value, bundle, gift-with-purchase). Often the offer is fine—the delivery isn’t.
- If email wins on redemption but not on new customers, it’s an activation play.
- If paid social brings cheaper first-time buyers but poor repeat, revisit audience quality.
- If retail outperforms online, availability and merchandising are the story, not the percentage off.
Don’t forget operational signals
Promotions stress systems. Include these qualitative checks:
- Stockouts or long shipping times? You may have created disappointment that erodes LTV.
- Support ticket spikes? Friction in redemption or unclear T&Cs hurts trust.
- Return rate vs. baseline? Deep discounts can attract mismatch purchases.
A profitable promo on paper that degrades CX is not a repeatable win.
Example: 3-line executive summary
Objective: Acquire new customers profitably ahead of Q4.
Result: +$240k incremental revenue, +$62k incremental margin, 38% new-customer mix (+12 pp vs. baseline), no post-promo dip.
Decision: Scale to two more regions; cap frequency to avoid conditioning; keep bundle halo (AOV +14%).
Short, specific, and tied to the original job.
A lightweight promotion evaluation template
Copy this structure for every campaign and compare over time.
| Section | Key questions | Findings (fill in) |
|---|---|---|
| Objective | What one outcome matters most? | |
| Baseline & Control | What are we comparing against? | |
| Demand Effects | Incremental revenue, lift vs. control, post-promo dip? | |
| Profitability | Incremental margin after all costs? | |
| Customer Effects | % new customers, reactivation, 30/60-day repeat? | |
| Basket Effects | AOV, halo on non-discounted items? | |
| Channel & Creative | Which channel/angle carried the promo? | |
| Operational Health | Stock, tickets, returns vs. baseline? | |
| Verdict & Next Step | Scale, refine, or retire? What will we test next time? |
What to learn for next time
- Tighten the target: Aim the offer where incrementality was highest.
- Test the lever, not the theme: Change one element (discount depth, duration, bundle rule, minimum spend).
- Mind cadence: Promotions should teach customers how to buy from you—not to ignore you until the next coupon.

Bottom line
A successful promotion isn’t the biggest spike—it’s incremental margin, healthier customer mix, and no hangover after the party. Use a consistent scorecard, compare to what would’ve happened anyway, and make the next offer smarter than the last.

