The formulas
ROAS = revenue from ads ÷ ad spend
ROI = (gross profit − ad spend) ÷ ad spend, where gross profit = revenue × gross margin.
ROAS is a multiple: 5.50x means $5.50 of revenue for every dollar of ads, sometimes written as 550%. ROI is a percentage of profit: 58.4% means every dollar of ads came back as the dollar plus 58 cents of profit. ROI can be negative, ROAS cannot. ROAS is easy to read inside Google Ads or Meta because the platform knows the revenue. ROI needs your margin, which the platform does not know.
In a full business ROI you would also deduct other campaign costs such as agency fees, creative production and tools. The ad-level ROI here is the first and most important cut.
Break-even ROAS = 1 ÷ margin
A campaign breaks even when gross profit equals ad spend: revenue × margin = spend. Divide both sides by spend and margin and you get:
Break-even ROAS = 1 ÷ gross margin
At a 48% margin, break-even ROAS is 2.08x. At 16% it is 6.25x. Low-margin products need a much higher ROAS just to cover the ads. For the margin, use everything that grows with each order: product cost, shipping, payment fees and an allowance for returns. Fixed costs such as rent and salaries stay out, because they are paid whether the ad runs or not.
If you also want a profit after ads of, say, 10% of revenue, use target ROAS = 1 ÷ (margin − 10%). For the beans that is 2.63x, for the espresso machines 16.67x, which is hard to reach at all.
Worked example: four campaigns on ROAS and ROI
One month of a fictional online coffee equipment shop. Spend, revenue, orders and margins are inputs. Column F totals the account: its margin is the blended margin, gross profit ÷ revenue.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Campaign, Sep | Brand search | Machines | Beans | Social | Total |
| 2 | Ad spend ($) | 2,000 | 9,500 | 4,200 | 6,000 | 21,700 |
| 3 | Revenue ($) | 18,400 | 52,250 | 13,860 | 14,400 | 98,910 |
| 4 | Orders | 230 | 95 | 520 | 240 | 1,085 |
| 5 | Gross margin | 42% | 16% | 48% | 38% | 28.5% |
| 6 | ROAS | 9.20x | 5.50x | 3.30x | 2.40x | 4.56x |
| 7 | Gross profit ($) | 7,728 | 8,360 | 6,653 | 5,472 | 28,213 |
| 8 | Profit after ads ($) | 5,728 | -1,140 | 2,453 | -528 | 6,513 |
| 9 | ROI | 286.4% | -12.0% | 58.4% | -8.8% | 30.0% |
| 10 | Break-even ROAS | 2.38x | 6.25x | 2.08x | 2.63x | 3.51x |
| 11 | Average order value ($) | 80.00 | 550.00 | 26.65 | 60.00 | 91.16 |
| 12 | Break-even CPA ($) | 33.60 | 88.00 | 12.79 | 22.80 | 26.00 |
| 13 | Actual CPA ($) | 8.70 | 100.00 | 8.08 | 25.00 | 20.00 |
- B6
=B3/B2ROAS - B7
=B3*B5Gross profit - B9
=B8/B2ROI on ad spend - B10
=1/B5Break-even ROAS - B12
=B11*B5Break-even CPA - F5
=F7/F3Blended margin, not an average
The campaigns compared
Ranked by ROAS, the espresso machines campaign (5.50x) looks like the second-best campaign. Ranked by ROI, it loses $1,140 in the month: machines carry only a 16% margin, so $52,250 of revenue leaves $8,360 of gross profit against $9,500 of ad spend. The social campaign has the same problem on a smaller scale: a ROAS of 2.40x against a break-even of 2.63x, an ROI of −8.8%.
The coffee beans campaign has the lowest ROAS of the profitable ones, 3.30x, but the highest margin, and an ROI of 58.4%. Across the account, a ROAS of 4.56x and an ROI of 30.0% hide two losing campaigns. Brand search shows the best numbers, 9.20x and 286.4%, but many of those buyers were already looking for the shop by name and would have found it anyway, so its true contribution is smaller than it looks.
Break-even CPA: the same test per order
Break-even CPA = average order value × gross margin
It is the most you can pay in ads for one order without a loss. An espresso machine order averages $550 at a 16% margin, so the break-even CPA is $88. The campaign pays $100 per order. For beans, the break-even CPA is $12.79 and the actual CPA $8.08. Break-even CPA is handy for setting target CPA bids, usually a little below break-even to leave room for overheads.
When a ROAS below break-even is fine
ROAS and ROI only look at the first order. If a campaign brings in new customers who come back and buy again, as coffee drinkers do, a first-order loss can be a good investment. That is a lifetime value question, worked through in the LTV:CAC ratio guide. Decide this on purpose and measure repeat purchases, rather than using it as an excuse for every campaign below break-even.
Common mistakes
- Judging campaigns on ROAS alone. A high ROAS on a low-margin product can still lose money. Compare each ROAS with its own break-even ROAS.
- Using one margin for the whole account. Categories with different margins need different targets. A single ROAS target overspends on the low-margin ones.
- Averaging the campaign margins. The account margin is total gross profit ÷ total revenue, weighted by sales.
- Leaving shipping, payment fees and returns out of the margin. They grow with every order. Without them, break-even ROAS is set too low.
- Calling ROAS "ROI". A ROAS of 3 is not a 300% return. If the margin is 30%, it is an ROI of −10%.
- Trusting platform revenue blindly. Ad platforms count conversions with their own attribution windows, and several platforms may claim the same order. Check against your shop's own sales.
Frequently asked questions
What is the difference between ROAS and ROI?
ROAS divides revenue by ad spend and ignores what the products cost. ROI divides profit by the cost, so it takes the margin into account. A campaign can have a high ROAS and a negative ROI.
How do you calculate break-even ROAS?
Divide 1 by the gross margin as a decimal. At a 40 percent margin, break-even ROAS is 2.5. Below that, the campaign loses money before any fixed costs.
What is a good ROAS?
There is no single figure. A good ROAS is one comfortably above your own break-even ROAS, which depends on your margin. A 3x ROAS is profitable at a 50 percent margin and loses money at a 25 percent margin.
Can ROI be negative when ROAS is above 1?
Yes. A ROAS above 1 only means revenue exceeds ad spend. ROI turns negative as soon as gross profit, revenue times margin, is smaller than the ad spend.