How the maths works
The whole thing rests on one number: contribution margin. That is what remains from an order once you have paid every cost that exists because that order happened — the product, the box, the courier, the card fee. What remains is the money available to buy the customer in the first place, and then to pay for everything else.
Break-even ROAS = 1 ÷ contribution margin %
Break-even CPA = contribution margin (in currency)
Max CPC = break-even CPA × conversion rate
That second line is the one worth remembering, because it explains almost every argument about ROAS targets I have ever sat through. ROAS and margin are reciprocals. If you keep 25% of an order, you need 4× to break even. If you keep 50%, you need 2×. Nothing about the ad platform, the creative or the season changes that relationship — it is arithmetic, and it sets the floor everything else has to clear.
Reading your result
The large number is a floor, not a goal. At exactly break-even ROAS your advertising has produced a great deal of activity and no money. Everything you actually care about — overheads, salaries, the business existing next year — comes out of the gap between that floor and where your campaigns really land.
Two derived numbers matter more day to day. Break-even CPA is the most you can pay to acquire an order, and unlike ROAS it is directly usable as a target in a bidding strategy. Max CPC is that same ceiling translated into the unit you are actually buying, which is where most overspending hides: a click price that looks unremarkable can be comfortably above what the funnel behind it can support.
If your contribution margin comes out at or below zero, the calculator will tell you plainly. No amount of media optimisation fixes that. You are selling at a loss before a single click is bought, and the answer lives in pricing, product cost or fulfilment — not in the ad account.
Sensitivity: what margin does to your target
Because the relationship is a reciprocal, small margin changes produce large target changes at the thin end and almost none at the fat end. This is why a discount code can quietly destroy a campaign's economics while a price rise barely moves the target.
| Contribution margin | Break-even ROAS | ROAS at your target margin |
|---|
The highlighted row is closest to the margin you entered. Notice how much steeper the climb is between 15% and 25% than between 55% and 65%.
Five mistakes I see repeatedly
These come from account audits rather than theory. They are in the order I encounter them.
- Using revenue the ad platform reported. Platforms book revenue at the moment of purchase and rarely hear about the refund six weeks later. If your returns are meaningful, platform ROAS and real ROAS drift apart steadily, and the gap always favours the platform.
- Using gross margin instead of contribution margin. Gross margin stops at cost of goods. It ignores shipping, payment fees and returns — which in a low-priced, high-return category can be the difference between a workable target and an impossible one.
- Setting one blended target across everything. A catalogue with a 70% margin accessory and a 12% margin appliance does not have one break-even ROAS; it has two, and a blended target systematically overspends on the thin product while starving the fat one.
- Forgetting that discounts come out of contribution, not revenue. A 20% discount on a product with a 30% contribution margin does not reduce margin by a fifth. It removes two thirds of it, and roughly triples the ROAS you need.
- Treating the floor as the target. Break-even is where advertising stops destroying value, not where it starts creating any. Set the target margin field above zero and use that number instead.
My assumptions, stated plainly
Any calculator makes modelling choices, and you should be able to check mine rather than trust them.
- Returns. On a returned order I assume you refund the customer and recover the item, but still absorb fulfilment, packaging and the payment fee. That is the common case in the GCC markets I work in; if your gateway refunds its fee, your true margin is slightly better than shown.
- ROAS basis. The headline figure is expressed against gross revenue, the way ad platforms report it, so you can compare it directly with the column in your dashboard. Returns are handled inside the margin rather than by restating revenue.
- Fixed costs are excluded. Salaries, rent, software and agency retainers are not per-order costs and do not belong in a per-order break-even. Use the target margin field to make advertising contribute towards them.
- VAT is excluded. Enter values net of VAT. Mixing VAT-inclusive revenue with VAT-exclusive costs is the single most common error I find in spreadsheets handed to me.
- No benchmarks are supplied. There is no "good ROAS for your industry" here, because I would be inventing it. Every number on this page is derived from figures you entered.
Embed this calculator
If it would be useful to your readers, students or team, take it. The embed is free, needs no attribution beyond the link already inside it, and I will not add tracking to it later.
Questions people actually ask
Is a ROAS of 4 good?
Only against your margin. At a 20% contribution margin you break even at 5×, so 4× is losing money on every order. At a 60% margin you break even at about 1.7×, so 4× is very healthy. Anyone who tells you a ROAS number is good or bad without asking about your margins is guessing.
Should I use gross or net revenue?
The headline here is on a gross basis, matching what Google Ads and Meta report, so it drops straight into your existing dashboards. Returns are accounted for inside the contribution margin instead of by restating revenue, which keeps the comparison honest without making you maintain two sets of numbers.
Does this include salaries, rent and my agency retainer?
No, deliberately. Those are fixed costs and do not vary with a single order, so putting them in a per-order calculation distorts it. If you want advertising to help carry them, set a target net margin above zero — that is exactly what the field is for.
What about lifetime value and repeat purchases?
This calculator is deliberately first-order: it answers whether an order pays for itself today. If you have reliable repeat-purchase data you can justify paying more to acquire a customer, but I would want to see the cohort evidence before loosening a target on that basis. Many businesses assume repeat behaviour they have never actually measured.
My real profit is lower than this predicts. Why?
Three usual suspects. Attribution overlap, where two platforms each claim the same order. Discount codes lowering the true average order value below the figure you entered. And returns landing weeks after the sale, so a good month is revised downwards later. Reconciling platform revenue against your commerce platform for the same period usually finds it.
Can I use this for lead generation rather than e-commerce?
Partly. Replace average order value with the average revenue of a closed deal, and set your costs to whatever fulfilling that deal costs you. The missing piece is lead-to-sale conversion rate, which you would need to apply on top — for most lead-gen businesses the break-even CPA figure is the more useful output.
Go deeper: How I run performance marketing · Measurement & analytics · What a consultant costs