Return on Ad Spend (ROAS): Formula, How to Calculate It, and Your Break-Even Number
ROAS is revenue from ads divided by ad spend. The formula, worked examples, how to find the break-even ROAS for your margin, profit on ad spend (POAS), and why the ROAS in Meta or Google Ads differs from what Stripe collected.

The short answer: As of October 8, 2026, ROAS is revenue from ads divided by ad spend. $8,000 of revenue on $2,000 of spend is a ROAS of 4 (4x, 4:1 or 400%). Whether 4x is good depends on your margin: your break-even ROAS is 1 divided by your gross margin, so a 50% margin breaks even at 2x and a 25% margin needs 4x. The number Meta or Google Ads shows is the platform's own attributed value over spend; the number your finance team trusts is revenue your processor actually collected. Track both, per campaign.
Use the ROAS calculator if you just need the number.
TL;DR
- ROAS = ad revenue / ad spend. Keep the same campaign and dates on both sides.
- Break-even ROAS = 1 / gross margin. That is your floor, not an industry benchmark.
- POAS = gross profit from ads / ad spend. Use it when margins vary by product.
- Platform ROAS and verified ROAS differ. Platforms count conversions in their attribution window, including view-through; processors count collected money.
The ROAS formula
ROAS = revenue attributed to ads / ad spend
Both ad platforms define it the same way. Meta calculates purchase ROAS as purchase conversion value divided by amount spent (Meta Business Help Center, Purchase ROAS). Google Ads describes a target ROAS as the average conversion value, for example revenue, you want for each dollar spent on ads (Google Ads Help, About Target ROAS bidding).
ROAS is written three ways, all meaning the same thing:
| Revenue | Spend | As a ratio | As a multiple | As a percent |
|---|---|---|---|---|
| $8,000 | $2,000 | 4:1 | 4x | 400% |
| $3,000 | $2,000 | 1.5:1 | 1.5x | 150% |
| $1,500 | $2,000 | 0.75:1 | 0.75x | 75% |
How to calculate ROAS, step by step
- Pick the scope. One campaign, ad set or channel, and one date range.
- Add up ad spend for exactly that scope. Media spend is the standard; note separately any agency fees or creative costs, because they belong in ROI, not ROAS.
- Add up revenue from that scope. Decide here which source you are using: the conversion value the platform reports, or revenue your payment processor collected from visitors that campaign sent. Do not mix them.
- Divide revenue by spend.
- Compare against your break-even ROAS (next section), not against someone else's average.
Find your break-even ROAS
ROAS on its own says nothing about profit. A 3x ROAS is excellent for a software product with high margins and a loss for a product with thin margins. The fix is to work out the ROAS at which a campaign pays for itself.
Break-even ROAS = 1 / gross margin
Why it works: gross profit from a campaign is revenue × margin. The campaign breaks even when that profit equals spend, so revenue / spend = 1 / margin.
| Gross margin | Break-even ROAS |
|---|---|
| 80% | 1.25x |
| 60% | 1.67x |
| 50% | 2.00x |
| 40% | 2.50x |
| 25% | 4.00x |
Anything above your break-even ROAS covers its media cost and contributes gross profit. Anything below it loses money on each sale before rent, salaries or software. Set your target above break-even by whatever cushion covers the costs ROAS leaves out.
Profit on ad spend (POAS)
If margins differ a lot between products, a blended ROAS hides which campaigns make money. POAS puts margin into the formula:
POAS = gross profit from ads / ad spend
A POAS above 1 means the campaign's gross profit covers its spend. Two campaigns with the same 3x ROAS can have very different POAS if one sells high-margin products and the other sells low-margin ones.
Three worked examples
Ecommerce, one product line. A campaign spends $5,000 and drives $17,500 in orders. ROAS is 17,500 / 5,000 = 3.5x. With a 40% gross margin, break-even is 2.5x, so the campaign clears it. Gross profit is 17,500 × 0.40 = $7,000, POAS is 7,000 / 5,000 = 1.4.
SaaS free trial. A campaign spends $4,000 and starts 80 trials. The platform reports 80 conversions. By the end of the month, 18 trials have converted to a $79 monthly plan, so collected revenue is 18 × $79 = $1,422 and ROAS so far is 1,422 / 4,000 = 0.36x. That is not a failing campaign yet. Subscription revenue arrives late, so judge new campaigns on cost per trial ($50 here) and judge ROAS on cohorts once they have had time to convert. We cover the setup in how to track Meta and Google Ads ROAS through to Stripe subscriptions.
Lead generation. A campaign spends $3,000 and produces 60 leads. Sales closes 6 of them at $2,500 each, so revenue is $15,000 and ROAS is 5x. The catch is timing and matching: the revenue lands weeks later in your CRM, so ROAS can only be calculated once deals close and are traced back to the campaign.
All three examples use hypothetical numbers.
Platform ROAS vs verified ROAS
This is where most ROAS arguments start. The number in Ads Manager or Google Ads is not wrong, it measures something different:
| Platform ROAS | Verified ROAS | |
|---|---|---|
| Revenue source | Conversion value the platform attributes to its own ads | Money your payment processor collected from visitors each campaign sent |
| Window | The platform's attribution setting, which can include view-through | Payments matched to the visit that caused them |
| Refunds and failed payments | Not reflected | Reflected |
| Trials | Counted as conversions if you send trial starts | Zero until the trial pays |
| Used for | Bidding and delivery inside the platform | Budget decisions and finance reporting |
Read them side by side, per campaign. A campaign with strong platform ROAS and weak verified ROAS is being credited for revenue your processor cannot trace to it. For more on why Meta's numbers run high, see best Meta ads attribution tools.
Common ROAS mistakes
- Comparing to an industry average. Your margin, not a benchmark table, sets your floor.
- Mixing date ranges. Spend from one month and revenue from another produce a meaningless ratio, especially for subscriptions.
- Mixing revenue sources. Platform conversion value on one campaign and processor revenue on another cannot be compared.
- Blending channels. Account-level ROAS hides the campaigns that lose money.
- Treating ROAS as ROI. ROAS ignores every cost except media.
How Humblytics calculates ROAS
Humblytics pulls spend from Meta and Google Ads over read-only connectors and matches it to Stripe or Foxy revenue by utm_campaign. Each campaign shows both sides: the platform-reported spend and conversions, and the verified sessions, trials, collected revenue, ROAS and cost per trial. It uses last-touch, first-party UTM attribution, so it does not model multi-touch journeys or view-through. See revenue attribution or start a 14-day trial.
Sources and freshness
- Meta Business Help Center, Purchase ROAS (return on ad spend), retrieved October 8, 2026. Supports Meta's ROAS calculation.
- Google Ads Help, About Target ROAS bidding, retrieved October 8, 2026. Supports Google's definition of target ROAS.
- Break-even ROAS, POAS and all worked examples are arithmetic on hypothetical inputs, not benchmarks.
This version replaces an earlier draft that included an industry benchmark table without a source. It was removed rather than repeated.