Promo Expected-Value Calculator
Most promos lose money on the customers who were going to buy anyway. This shows you how much, before you launch.
Model 1 of The Marketing Quant Python Kit. Runs entirely in your browser — nothing you type is sent anywhere.
Your numbers
How many people will actually see the offer.
Margin before the discount, not your net margin.
Cash value of the offer. A 20% off code on a $120 basket is $24.
What this audience converts at with no promo. If you do not know this, the answer below is a guess.
Result
Net contribution
Incremental margin minus the total cost of the discount.
$500
Margin per order
$54.00
Incremental buyers
Buyers you would not have had without the offer.
250.0
Incremental margin
$13,500
Total discount cost
$13,000
Subsidy to existing demand
Paid to people who were going to buy anyway. This is the line most promo maths leaves out.
$8,000
Breakeven
Conversion needed to break even
6.35%
Headroom
Percentage points between your expected conversion and breakeven.
0.15 pts
Headroom is under 0.5 percentage points. The offer sits inside measurement noise — you will not be able to tell whether it worked, because normal week-to-week variation is larger than the effect you are trying to detect.
Get the Promo & Bonus Economics Workbook
Every formula for pricing a promo before you launch it: expected value, wagering cost, breakage, breakeven conversion. Worked examples with real executed numbers.
Browse all free guides →The maths behind this
The Expected Value of a Promo: Why Your $20 Discount Nets $500, Not $13,500
A discount is not a cost of $20. It is a contingent payout you wrote, and most of it subsidises customers who were going to buy anyway. Here is the arithmetic, the breakeven conversion rate you have to clear, and the Python that finds it.
Read →How Deep Should the Discount Be? The Calculus of Margin and Elasticity
With price elasticity of 2.5, the profit-maximising discount is 8.33%, not 20%. At 30% off you sell 2.4 times the units and earn 19.7% less. One derivative gives you the answer in closed form.
Read →Monte Carlo for Promo Budgets: Your Point Estimate Is Not a Budget
Budgeting a promo at its expected payout under-funds the 95th percentile outcome by 88%. Forty lines of Python show you the whole distribution before launch instead of the invoice afterwards.
Read →Other tools
Points Liability & Breakage Model
Points you have issued are a balance-sheet liability. This prices it, discounts it, and shows what breakage is really worth.
Streak & Retention Hazard Model
The cheapest day to save a user is almost never day one. This finds the day.
Content ROI & Payback Calculator
Find out whether the content programme pays back before you spend twelve months finding out.
Want this fitted to your actual numbers?
The defaults here are illustrative. Fitted to your own data — real hazard rates, real margins, real conversion — the same models tell you what to do next rather than what is theoretically possible.
Get it modelled properly