ROAS had a great month. How was the bank balance?
A post on the Shopify Community forum puts it in its title: why can an ad with a ROAS of 3.8 still lose money1? The poster was promoting a profit report, so the numbers are theirs, not evidence. The replies agree on the point: platform ROAS alone is not enough to decide whether to scale1. The answer sits outside the ad platform.
Each link in the chain is covered by other writers, one at a time: break-even, returns, discounts, stock, cash. Here we join them the way a finance director asks "so what?". We follow the money, all the way to the bank.
Short answer: what is the gap between ROAS and profit?
ROAS tells you how much revenue the ads are credited with per unit of spend. It says nothing about what that revenue cost you to earn. Profit is what is left after the cost of goods, delivery, payment fees, returns, discounts and the ads themselves.
So the useful question is not "is ROAS high?". It is "is ROAS above the level at which these orders stop losing money?". That level is your break-even ROAS.
ROAS ignores product cost, fulfilment, returns and discounts.
Why can a good ROAS still lose money?
Four reasons, usually in combination.
- ROAS counts revenue, not cost. The cost of goods, shipping and payment fees are all invisible to it.
- Returns come after the report. The platform reports a sale when it happens. The refund arrives later.
- Discounts shrink the margin, not the ROAS. A sale at a discounted price still counts as revenue. The margin on it is thinner.
- Cash moves on a different clock. You pay for stock and ads before customers pay you, and some of that money leaves again as refunds.
None of these is exotic. They are the ordinary mechanics of selling physical goods. They simply do not show up in an ad dashboard.
What is your break-even ROAS, and why isn't gross margin enough?
Break-even ROAS is the lowest ROAS at which ads do not lose money on the orders they bring: 1 divided by a margin. The catch is which margin.
One vendor's ROAS guide divides by gross margin, the margin after the cost of goods alone2. A consultancy's piece on ROAS versus contribution margin divides by contribution margin instead3. The two give different thresholds for the same shop.
Our view: use contribution margin. Our convention is revenue minus the variable costs that move with each order (cost of goods, shipping, payment fees, returns and discounts), before marketing. A vendor guide to ecommerce contribution margin also names a stage after marketing, which it calls contribution profit4. We call that contribution after marketing. Sources differ on what they include in each stage. This is our convention, not a market standard.
In our view, gross margin gives a threshold that is too optimistic, because it leaves out costs that every order carries. Break-even ROAS on contribution margin is higher, and closer to what you keep. When you quote a break-even, say which margin it comes from, and say whether it is a percentage of revenue or an amount per order.
The POAS (profit on ad spend) metric asks the same question from the other side: profit from ad-attributed sales over ad spend. Sources define "profit" differently, so check the definition before you compare.
How do returns and discounts change the real ROAS?
Both lower the number after the platform has reported it.
For returns, an agency article on Google Ads shows the effect: once returned orders are taken out of revenue, its example campaign's ROAS drops by more than a quarter5. The simplest correction is reported ROAS multiplied by one minus the return rate. That is the idea behind return-adjusted ROAS. A margin-based version also subtracts the cost of handling the returned order. First work out your returns rate: how many orders, or how much revenue, comes back, and over what period. For how to send that back to the ad platforms, see how to adjust Google Ads conversions for returns.
For discounts, it depends on what your shop sends to the platform. If the order value is sent after the code, the ROAS already reflects the discount. What it hides is the margin. A discounted order carries the same goods cost and the same delivery cost on a smaller price. Whether discounts pay for themselves is a separate question: are ecommerce discounts profitable.
How do stock and cash timing turn profit into a cash crunch?
A profitable order is not the same as cash in the bank this week. The cash conversion cycle is days inventory outstanding plus days sales outstanding minus days payables outstanding6. In plain terms: how long cash sits in stock and receivables, net of supplier terms. A consultancy's guide to the cycle puts the consequence bluntly: the longer the cycle, the more growth drains cash6.
For an ad-led brand that means a particular trap. You scale spend on a good-looking ROAS, you buy more stock to cover the demand, and the money comes back slowly. Profit on paper, overdraft in practice. Or the campaign is ready to scale and the warehouse would like a word: see inventory-aware advertising.
The cash view of the same problem is in ecommerce cash flow and marketing spend. The related question is time: the payback period is how long the margin a customer generates takes to repay the cost of acquiring them. It is a margin measure, not a revenue one. For benchmarks and why most do not transfer, see CAC payback period benchmark.
One order followed to the bank: a worked example
Example (illustrative). A shop spends €1,000 on ads. Platform-reported ROAS: 3.0.
Step Amount Credited revenue, net of discounts €3,000 Refunds, 10% −€300 Revenue kept €2,700 Cost of goods, 50% of revenue kept −€1,350 Shipping, payment processing −€450 Contribution before marketing €900 Ad spend −€1,000 Contribution after marketing −€100
Example (illustrative): two tests. Round numbers, not data from any client or source. Gross margin here is 50%, so break-even ROAS on gross margin is 2.0. A ROAS of 3.0 looks comfortable. Contribution before marketing is €900, or 30% of credited revenue, so break-even on that basis is about 3.3. The same campaign passes one test and fails the other. Cash timing is not even in the table.
If you want to run your own numbers, the Break-even ROAS & contribution margin calculator does it with explicit assumptions.
What do you measure instead of ROAS alone?
Keep ROAS. It is quick and it compares ads inside one channel. Just do not let it end the conversation.
- Contribution after marketing first. Is the business keeping money on what it sells?
- Break-even ROAS on contribution margin. Where is the line, by product group if margins differ?
- Returns and discounts, by channel. Where does the platform number shrink most?
- Payback and cash. How long until the margin repays the spend, and can the business wait?
- Incrementality. How much of the credited revenue did the ads actually cause? That is the Is your ROAS real? calculator question.
Some of these decisions reach beyond measurement into pricing and stock. That is the ground our Growth economics & strategy (margin, cash, promotions, inventory) work covers. The same margin logic applies to CRO and retention in the P&L. Two related reads: how to justify marketing spend to your CFO and LTV to CAC ratio pitfalls. For the number everyone asks about first, see what is a good ROAS for ecommerce.
For ZFD: We start from how much of your best sales month was still there after discounts, delivery and returns. That number, not the ROAS, decides what we recommend.
Sources
- Why can an ad with a ROAS of 3.8 still lose money? (Shopify Community)Forum
- ROAS Explained (Polar Analytics)Vendor
- ROAS vs contribution margin (Eightx)Vendor
- Contribution Margin in Ecommerce: Definition, Formula, and How to Use It in Marketing DecisionsVendor
- Returns rate destroying Google Ads profitability (Jude Luxe)Vendor
- Cash conversion cycle for ecommerce brands (Eightx)Vendor