Pricing

SaaS Promotional Pricing Attribution Done Right

Attribute revenue and retention outcomes to promotional pricing campaigns with the rigor that separates signal from noise. Covers incrementality testing, holdout design, long-run cohort tracking, and the metrics that reveal whether promotions are investments or margin leaks.

SaaS Science TeamMay 31, 20268 min read
promotional pricingsaas pricingattributionincrementalitycohort analysis

Promotional pricing campaigns are among the most analytically mismanaged activities in SaaS. Marketing reports record every conversion during a promotion period; attribution dashboards show a spike in sign-ups; leadership concludes the promotion was a success. None of this analysis answers the question that determines whether the promotion was actually worth running: how many customers converted because of the promotion who would not have converted otherwise?

This is the incrementality question, and without a holdout group, it cannot be answered. Everything else is correlation with noise.

See Your Growth Ceiling NowTry Free

The Attribution Problem in Promotional Pricing

Promotional pricing creates an attribution paradox: the campaign that looks most successful in standard analytics is often the one that pulled the most demand forward from the near future — not the one that created the most new demand.

Consider three scenarios for a promotion generating 200 sign-ups during the promotion window:

Scenario A: Pure incrementality. All 200 customers converted because of the promotion. Without the promotion, zero of them would have signed up in the next 60 days. Incremental lift: 200 customers. Promotion is fully additive.

Scenario B: Mixed. 120 customers converted because of the promotion; 80 customers would have converted within the next 60 days anyway. Incremental lift: 120 customers. The promotion accelerated 80 conversions but did not create them — and those 80 customers now cost the business the promotion discount for no gain.

Scenario C: Pull-forward dominant. 40 customers are genuinely incremental; 160 would have converted within 90 days at full price. Incremental lift: 40 customers. The promotion gave away 20% margin on 160 customers who were going to buy anyway — the net economics are likely negative.

Standard analytics cannot distinguish between these three scenarios. They all show 200 sign-ups during the promotion window and look identical in a cohort report.

Holdout Group Design

The holdout group is the only rigorous way to measure promotional incrementality. Design:

Size: 10–15% of the target audience. Large enough to produce statistically significant comparison data; small enough that excluded customers do not meaningfully affect your campaign reach or the company's need to hit acquisition targets.

Selection: Random assignment at the audience-entry level. For email campaigns: randomly exclude 10–15% from the promotional list before campaign build. For in-app promotions: randomly suppress the promotion banner for 10–15% of eligible sessions. For retargeting: create a holdout audience segment in your ad platform that is excluded from promotional creatives.

Duration: The holdout must be maintained for the full promotional window plus 30–60 days. Some buyers exposed to a promotion do not convert until weeks later — holding out for only the campaign window underestimates the treatment effect.

Contamination prevention: If holdout members see promotional prices through other channels (referral links, public promo codes shared on Twitter, pricing page visible to all), the holdout is contaminated. For broad-reach promotions (e.g., a sale published on the pricing page), holdout testing is impractical — you need a different incremental attribution method (geographic split-testing or time-series comparison).

Incrementality Calculation

After the promotion window and holdout period close:

Incremental lift = Conversion rate (exposed) - Conversion rate (holdout)
Incremental customers = Incremental lift × Total exposed audience size
Cannibalized customers = Total conversions - Incremental customers

Example calculation:

  • Exposed audience: 10,000
  • Holdout audience: 1,500
  • Conversions in exposed group: 300 (3% conversion rate)
  • Conversions in holdout group: 33 (2.2% conversion rate)
  • Incremental lift: 3.0% - 2.2% = 0.8 percentage points
  • Incremental customers: 0.8% × 10,000 = 80 customers
  • Cannibalized customers: 300 - 80 = 220 customers (220 would have converted anyway)

This result changes the economic framing entirely. The promotion looks like it drove 300 sign-ups; incrementality analysis shows it drove 80 net-new customers and gave 20% discount to 220 customers who were going to sign up anyway. The actual promotion cost: 20% × MRR × 220 = significant ongoing margin loss.

Long-Run Cohort Tracking for Promotional Customers

Incremental acquisition is only half the equation. The other half: what happens to promotional customers over time?

Promotional cohorts typically show three distinct retention patterns relative to full-price cohorts:

Pattern 1: Equivalent retention (ideal outcome). The promotion attracted customers who are genuinely in the ICP. Their product fit is equivalent to full-price customers; their churn rate is similar; they renew at comparable rates. The promo was fully productive.

Pattern 2: First-year retention, second-year churn spike (common outcome). Promotional customers stay through the first year because they are locked in or because the first year includes the promotional rate. At renewal, when the price normalizes to full list, a portion churn. Churn at renewal is 15–30% higher for customers acquired at more than 20% discount.

Pattern 3: Early churn (worst outcome). The promotion attracted out-of-ICP buyers who would not have paid the full price because the product does not deliver enough value for them. These customers churn in months 2–6, producing negative unit economics: they cost acquisition resources, received the discount, generated support load, and left before paying back CAC.

Pattern tracking requires a cohort dashboard that separates promotion-acquired customers from full-price customers and monitors retention at 30, 90, 180, and 360 days. The 360-day retention is the definitive signal — it captures the renewal effect that earlier measurements cannot.

The Promotion ROI Formula

True promotion ROI integrates incrementality and long-run cohort retention:

Promotion ROI = (Incremental customers × Incremental LTV) - (Total promo conversions × Discount cost per customer)

Where:

  • Incremental customers = holdout-measured incremental count (not total conversions)
  • Incremental LTV = LTV of promotional cohort at 24 months (measured, not assumed equal to full-price LTV)
  • Total promo conversions = all customers who converted during promotion (including cannibalized)
  • Discount cost per customer = first-year discount value (annualized)

A promotion that converts 300 customers, 80 incrementally, at 20% discount on $100/month:

  • Incremental LTV (assuming 10% lower retention than full-price): $1,440 per customer
  • Incremental value: 80 × $1,440 = $115,200
  • Discount cost: 300 × $20/mo × 12 months = $72,000
  • Net ROI: $115,200 - $72,000 = $43,200 positive

This same promotion with only 20 incremental customers (the rest all cannibalized):

  • Incremental value: 20 × $1,440 = $28,800
  • Discount cost: $72,000 (unchanged)
  • Net ROI: $28,800 - $72,000 = -$43,200 negative

The holdout measurement is worth running because the difference between these two scenarios is not visible in standard analytics — only in incrementality analysis.

Building the Promotional Pricing Calendar with Attribution Gates

Most SaaS companies run promotions reactively — end of quarter, product launch, competitive response. The result is a promotional calendar with no systematic learning: each promotion is evaluated on whether it "felt like" a success based on the spike in sign-ups, not on whether it generated incremental customers who retained.

A promotion calendar built on attribution rigor looks different:

Pre-promotion: define the target segment (who is eligible), the control/holdout percentage, the discount depth and expiration date, and the primary measurement metric (incremental customers at 90 days) before campaign launch.

During promotion: maintain holdout isolation, track real-time conversion split between exposed and holdout (to detect contamination), and do not evaluate results until the measurement window closes.

Post-promotion: calculate incremental lift, annualize the cost (discount depth × promo conversions × 12 months), and project the cohort LTV based on the 90-day retention trajectory. Compare to the prior promotion in the same segment for a trend line.

Go/no-go gate for next promotion: require that the previous promotion's incremental ROI was positive before approving the next one in the same segment. This prevents promotional pricing from becoming a permanent crutch that trains buyers to wait for discounts.

The last point is the most important long-run constraint. SaaS companies that run promotions more than twice per year in the same segment risk conditioning buyers to expect discounts — a structural erosion of pricing power that shows up as lower full-price conversion rates and higher discount request frequency from the sales team. ChartMogul's retention data shows that companies with more than three promotional campaigns per year targeting the same customer segment see significantly higher promotional-period conversion rates but lower baseline conversion rates in non-promotional periods, netting to neutral or negative total acquisition economics.

For how promotional acquisition connects to longer-run LTV calculations, see churn rate analysis and NRR metrics — promotional cohort data feeds directly into both frameworks as a separate cohort segment.

See Your Growth Ceiling Now

Calculate when your SaaS growth will plateau — free, no signup required.

Calculate Your Growth Ceiling

Conclusion

Promotional pricing attribution without incrementality measurement is a narrative built on coincidence. The promotion ran; sales increased; therefore the promotion caused the increase. This logic fails in the presence of seasonal demand, near-future pull-forward, and ongoing baseline conversion rates that exist independent of any campaign.

The holdout-based incrementality framework is the antidote. It answers the right question — did the promotion generate customers who would not have appeared otherwise? — and produces an economic calculation that determines whether the promotion was worth running and whether it should run again.

Design holdouts before campaign launch, track cohorts for 12 months after acquisition, and apply the ROI formula before deciding on the next promotional calendar. That process converts promotional pricing from a quarterly habit into a data-driven investment decision.

Frequently Asked Questions

What is incrementality testing for promotional pricing?
Incrementality testing measures how many additional customers a promotion generated that would not have converted without the promotion — the incremental effect. It requires a holdout group (a randomly selected segment that does not receive the promotional offer) to compare against. Without a holdout, you can only observe total conversions during the promotion period, not how many were caused by the promotion.
How do you design a holdout group for a promotional pricing campaign?
Before the promotion launches, randomly select 10–15% of your target audience (email subscribers, trial users, or pricing page visitors) and exclude them from all promotional communications. They are your holdout. After the promotion, compare the conversion rate of holdout vs. exposed groups. The difference is the incremental lift attributable to the promotion.
What is a good promotional pricing conversion lift?
Incremental lift benchmarks from promotional pricing experiments: first-time buyer promos (20–30% discount) typically show 15–25% incremental lift over holdout. Urgency-based promos (time-limited offers) show 10–20% lift. Loyalty upgrade promos (existing users offered annual plan discount) show 25–40% lift. Lift below 10% over holdout suggests the promotion mostly pulled forward demand rather than generating it.
Do promotions cannibalize full-price sales?
Yes, in proportion to the repeat purchase probability. In SaaS where customers buy once and then subscribe, cannibalization is structural: every customer who converts at the promotional price would otherwise have either converted at full price or not converted at all. The attribution question is which of those two outcomes would have occurred without the promotion — answered only by a holdout comparison.
What metrics should you track for promotional pricing cohorts?
Track: (1) 30-day retention (do promotion customers activate at the same rate as non-promo customers?), (2) 90-day churn rate, (3) 12-month renewal rate (the most important metric — promo customers often churn at renewal when the promo rate expires), (4) expansion revenue (do promo customers upgrade at lower rates?), (5) support ticket volume (promo customers may have higher expectations relative to what they paid).
How do you handle multi-channel promotion attribution?
Customers exposed to multiple promotional channels (email + retargeting + in-app) require source priority rules for attribution: last-touch gives credit to the final channel before conversion; first-touch gives credit to the first promotional exposure; data-driven attribution (Shapley value or Markov chain models) distributes credit across all touchpoints based on their contribution. For SaaS promotions, last-touch is most common but first-touch is more useful for understanding what initiated conversion intent.
Is it worth running promotions if cohort retention is lower?
Depends on the magnitude. If promotion customers churn 10% faster but incremental acquisition is 25% higher, the net LTV pool is likely positive. If promotion customers churn 50% faster (common for deep-discount promos that attract poor ICP matches), the incremental customers generate negative unit economics after the discount cost. Calculate: promotion ROI = (incremental LTV × incremental customers) - (discount cost × ALL converted customers including the cannibalized ones).

Related Posts