// Money & Tax · Ad math
What is a good ROAS? Why break-even ROAS is the only number that matters
Last updated 28 September 2026.
"Good ROAS" is unanswerable without your margin. A 4x ROAS loses money for a store with a 20% contribution margin, while 2.5x is comfortably profitable at a 50% margin — same metric, opposite outcomes. The only benchmark that matters is your own break-even ROAS = 1 ÷ contribution margin, where contribution margin is what's left of an average order after goods, shipping, and payment fees, divided by the order value. Above that number every ad dollar makes money; below it, every "win" in the ads dashboard is quietly a loss.
Benchmark articles love to declare 3x or 4x "good". The dashboards love big green numbers. But ROAS is revenue over spend — and revenue isn't yours; margin is. Two stores with identical 3.5x ROAS can be one thriving and one dying, purely on margin structure.
Break-even ROAS equals 1 divided by contribution margin — a store keeping 40 cents of each revenue dollar breaks even at 2.5x, while a store keeping 20 cents needs 5x just to not lose money.¶

How do you calculate break-even ROAS? The formula, walked
Contribution margin = (AOV − COGS − shipping − payment fees − other per-order variable costs) ÷ AOV.
Break-even ROAS = 1 ÷ contribution margin. That's the whole thing. Two worked examples:
Store A — lean margin
| Average order value | $100.00 |
| COGS | −$55.00 |
| Shipping (store pays) | −$18.00 |
| Payment fees (example rate: 2.9% + 30¢) | −$3.20 |
| Contribution: $23.80 → margin | 23.8% |
| Break-even ROAS = 1 ÷ 0.238 | 4.2x |
A "great" 4x campaign is losing this store money.
Store B — fat margin
| Average order value | $80.00 |
| COGS | −$20.00 |
| Shipping (customer pays) | −$0.00 |
| Payment fees | −$2.60 |
| Contribution: $57.40 → margin | 71.8% |
| Break-even ROAS = 1 ÷ 0.718 | 1.4x |
A "mediocre" 2x campaign is printing money here.
// YOUR BREAK-EVEN, LIVE — NOTHING UPLOADED
Don't know your margin? The full ROAS calculator builds it from AOV, COGS, shipping and fees — including the GST handling below — and adds a spend-sensitivity grid.
[AU] Why does GST change break-even ROAS for Australian advertisers?
GST touches this math twice, and both cuts hurt the careless:
- Revenue side: ad platforms report GST-inclusive revenue, but one-eleventh of every inclusive dollar is GST that belongs to the ATO (GST is 10% on the ex-GST price — ato.gov.au). Your contribution margin must be computed on ex-GST revenue — skip this and your revenue is overstated by 10%, so break-even looks better than it is and "profitable" campaigns quietly lose.
- Spend side: platforms charge GST on ad spend for Australian advertisers. If you're GST-registered, that's generally claimable back as an input tax credit — so use ex-GST spend in the calc, and don't let the invoice line spook you into overstating costs.
Ad platforms report GST-inclusive revenue while one-eleventh of it is GST owed to the ATO — computing break-even ROAS on inclusive revenue overstates revenue by 10% and makes break-even look better than it really is.¶
One more input: ROAS is only as honest as the purchase signal behind it. If a pixel dies, the platform reports fewer conversions and ROAS looks worse than it is — the free Tracking Health Check shows which pixels are present, and Bilby's Money check verifies each platform fired on view, add-to-cart and begin-checkout on every nightly visit.
Frequently asked questions
So what IS a good ROAS?
How do I calculate break-even ROAS?
Does GST change the calc in Australia?
Should fixed costs be in there?
Keep reading: Free Break-even ROAS Calculator · Is your conversion tracking silently broken? · GST Calculator
// Math, not vibes
Know your
break-even.
The full calculator builds your break-even from real unit economics — GST handled — plus profit per order and a sensitivity grid. Free.
Thin or missing product content is the other half of this problem, and it is the half search engines and AI assistants see. Navaal: AI SEO, AEO & GEO audits a Shopify catalogue for it free, and writes what is missing for review.