An upsell that adds revenue can still lose money. Revenue is the number that gets celebrated and the wrong one to decide on. What decides whether a post-purchase offer is worth running is contribution margin: what's left after the cost of goods, the discount, and the variable costs of fulfilling it. Plenty of upsells lift the top line and barely move the bottom one, and the math shows why before you ever run them.
This is the economics of the post-purchase layer: how margin, discounts, and free gifts decide whether an offer makes money. It sits inside the Invisible Second Sale™ and pairs with the measurement work in the analytics guide.
I run Skuology and build Upsellr. This comes from 90+ Shopify projects and over $300M in combined eCommerce revenue (over $50M of it from upsells).
Key Takeaways
- Contribution margin, not revenue, decides whether an offer is worth running.
- Expected contribution = take-rate times contribution margin per acceptance. Rank offers by it.
- Every point of discount comes straight off contribution; model the take-rate lift against the margin loss.
- A free gift is cost of goods on every accepting order; the threshold must clear its landed cost plus stacked discounts.
- Post-purchase is margin-friendly because there's no ad cost to win the order, but the offer still earns its own margin.
Contribution margin, not revenue
The number that matters for any offer is contribution margin: the price minus the cost of goods, minus any discount, minus the variable costs of the sale like payment fees and pick-and-pack. That's the cash the offer actually leaves on the table after paying for itself. Revenue ignores all of it, which is why a revenue-first view of upsells is misleading.
Consider two offers. A $40 add-on at 30% margin contributes $12 per acceptance. A $19 complement at 70% margin contributes about $13. The cheaper offer contributes more per acceptance despite half the price, because the margin is where the money is. Sticker price tells you almost nothing; contribution tells you everything.
So the first move in any post-purchase math is to stop looking at the offer's price and start looking at its contribution. Every decision after this one, which offer, how to size it, whether to discount, is a decision about contribution.
Expected contribution: the number to rank by
Contribution per acceptance is only half the picture, because not everyone accepts. Multiply it by the take rate and you get expected contribution per order shown, which is the number to rank offers by.
Take the same two offers. If the $19 complement at $13 contribution takes 12%, its expected contribution is about $1.56 per order shown. If the $40 add-on at $12 contribution takes 3%, its expected contribution is about $0.36. The complement earns more than four times as much per order shown, even though it's cheaper and contributes slightly less per acceptance, because far more people say yes. That's the same expected-value logic that sets offer order, applied to margin.
This is the ranking that should drive the program. The offer with the highest expected contribution goes first; the one whose expected contribution can't clear the cost of showing it gets cut. Everything else is opinion.
The discount trap
Discounting is the most common way stores accidentally erase the margin an upsell was supposed to add. The reason is that a discount comes off contribution, not off revenue. A 20% discount on a $30 offer isn't a 20% haircut on profit; on a product with 40% margin, that $6 discount cuts the $12 contribution in half.
Discounts do lift take rate, so the question is never "does the discount help acceptances," it's "does the extra acceptances cover the margin I gave up." Model it. If a 15% discount doubles the take rate, it can be worth it; if it lifts take rate by a fifth while halving contribution, it's a loss dressed as a promotion. Run the expected-contribution number with and without the discount and let the math decide.
More often than stores expect, the answer is a smaller discount or none. A relevant, well-sized post-purchase offer converts on relevance, not price, and the discount you didn't give is contribution you kept.
The free-gift math
A gift-with-purchase threshold is a powerful average-order-value lever, and its cost is easy to hide from yourself. A free gift is not free; it's cost of goods you pay on every order that hits the threshold and accepts it. The math only works if the threshold clears the gift's landed cost plus any discounts already stacked in the cart.
Set the bar deliberately. It should sit above the gift's true cost, so the incremental order value more than covers what you're giving away, and just above your current average order value, so it pulls the median order up rather than rewarding baskets that already cleared it. A threshold set at a round number that happens to sit below your AOV gives margin away to buyers who would have spent that much anyway.
This is where a lot of otherwise-sophisticated stores leak. The gift feels like marketing, so it escapes the margin check that a paid add-on would get. Give it the same scrutiny: what does it cost per accepting order, and does the threshold earn that back.
Why post-purchase is margin-friendly, but not free
Post-purchase offers have a structural margin advantage. There's no advertising cost to acquire the order, because the order is already won; there's no second checkout to process, because the card is on file; and there's no risk to the base conversion, because the sale is banked. Compared with acquiring a fresh order to sell the same add-on, the post-purchase version keeps far more of its contribution.
That advantage is real, and it's why the layer is worth building. But it doesn't make the offer free. The product in the offer still has a cost of goods, a discount if you apply one, and fulfilment cost. The margin-friendliness is in the absence of acquisition cost, not in the absence of all cost. Treat the offer's own economics with the same discipline you'd give a paid one.
Break-even and the practical rule
The break-even question is simple: at what take rate does the offer's expected contribution cover the cost of showing it. For a healthy-margin one-click offer with no per-impression cost, that break-even take rate is low, which is exactly why the 5 to 15% band (cartylabs, 2026; an agency study of 1,847 businesses put the average near 14.6%, Focus Digital, 2025) makes the layer profitable so easily. For an offer carrying a free gift or a deep discount, the break-even is higher, because each acceptance costs you more.
The practical rule falls out of all of this: size and price the offer for contribution, not sticker, and measure it as incremental margin, not revenue. Pick the offer with the highest expected contribution, discount only when the take-rate lift pays for the margin, and check every free gift against its landed cost. Then read the result on the scoreboard in the analytics guide. The offers that survive that math are the ones that make the post-purchase layer a profit center instead of a revenue vanity metric.
The margin math of post-purchase upsells: FAQ
Do post-purchase upsells actually improve margin?
They can, but only if the offer's contribution margin is healthy. An upsell adds contribution equal to price minus cost of goods, discount, and variable costs, times the take rate. A heavily discounted or low-margin offer can add revenue while adding almost no profit. Post-purchase is margin-friendly because there's no ad cost to win the order, but the offer still has to earn its own margin.
How do I calculate the margin on a post-purchase offer?
Start with contribution margin per acceptance: the offer price minus its cost of goods, minus any discount, minus variable costs like payment fees. Multiply that by the expected take rate to get expected contribution per order shown. That number, not revenue, tells you whether the offer is worth its slot. Rank offers by it, highest first.
Why does discounting a post-purchase offer hurt so much?
Because every point of discount comes straight off contribution margin, not off revenue. A 20% discount on a 40%-margin product halves the contribution. Discounting can lift take rate, but you have to model whether the extra acceptances cover the margin you gave up. Often a smaller discount or none at all nets more profit per order shown.
Is a free gift with a threshold actually free?
No. A free gift is cost of goods you pay on every order that accepts it. The threshold has to clear the gift's landed cost plus any discounts already stacked in the cart, or the incentive lifts revenue while thinning margin. Set the bar above the gift's true cost and just above current average order value, and margin-check it against your bundle pricing.
What take rate does a post-purchase offer need to be worth it?
Enough that expected contribution beats the cost of showing it. For a healthy-margin one-click offer with no per-impression cost, that break-even take rate is low, which is why the 5 to 15% band (cartylabs, 2026; ~14.6% average, Focus Digital, 2025) works. For an offer carrying a free gift or a deep discount, the break-even is higher, because each acceptance costs you more. Model it before you run it.
What to do next
No guaranteed lift. Your margins, costs, and offers decide the numbers. What I can promise is that the offers that look best on revenue are often not the ones that make the most money, and the math is the only way to tell them apart.
Contribution is the real scoreboard for the Invisible Second Sale™. To run post-purchase offers priced for margin, buildmyupsell.com deploys a one-click offer via Upsellr in 48 hours, or book a call to build the offer economics for your store.

