← Docs

Meta Ads Concepts

ROAS: reading return on ad spend against your real break-even

Why a headline ROAS number can't be judged on its own, how it relates to CPA and AOV, and how YieldBI compares it against your actual break-even target.

ROAS (Return on Ad Spend) is the ratio of revenue generated to ad spend: spend $2,000, generate $8,000, and ROAS is 4.0x. It’s the single most-watched number in performance marketing because it answers, at a glance, whether ads are generating more than they cost. The catch is that “more than they cost” isn’t the same question as “profitable,” and the gap between those two questions is where ROAS gets misread most often.

The number on its own tells you less than it looks like

A 5x ROAS looks unambiguously good, until the product costs $80 to make, sells for $100, and $20 went to ads. That’s $0 profit at a “great” ROAS. A 2x ROAS on an 80%-margin product, by contrast, can be very profitable. ROAS only means something next to a break-even ROAS: the minimum return needed to cover product cost, shipping, and everything else. Below that line, more spend loses more money; above it, more spend is genuinely additive.

Why the same account can show two “correct” ROAS numbers

Prospecting and retargeting are structurally different exercises, and comparing their ROAS side by side usually leads to the wrong conclusion. A prospecting ad set at 2.0x might be bringing in customers who buy three more times over the following year. A retargeting ad set at 8.0x might just be capturing sales that would have happened anyway, without the ad. Judged purely on ROAS, prospecting looks like the weaker campaign. Cut it, and the retargeting number it was quietly feeding starts to fall too.

Attribution changes the number, not the reality

Meta’s reported ROAS depends entirely on the attribution model and window behind it. A 30-day purchase cycle measured against a 7-day window will systematically understate real ROAS, because conversions that land on day 12 simply never get counted. This is why YieldBI applies incremental attribution models with an effective window matched to the funnel, rather than reporting every campaign against one default window. The number you’re acting on should reflect how customers actually convert, not an arbitrary platform default.

How it connects to the rest of your numbers

Metric Relationship
CPA ROAS = AOV / CPA, the same efficiency, read from the opposite direction
AOV A higher average order value lowers the CPA you can afford at the same ROAS target
Bid strategies Minimum ROAS ties bidding directly to this number, provided conversion values are accurate
Learning phase Early-life ROAS is noisier than steady-state ROAS, judge it after exit, not during

What to check before reacting to a ROAS swing

  • Compare against break-even, not against last week. A dip from 5x to 4x might still be well above the floor that actually matters.
  • Split prospecting from retargeting before judging either. A blended number hides which half is actually the problem.
  • Check whether the attribution window matches the sales cycle. A slow-converting funnel will always look worse under a short window, independent of real performance.
  • Look at the trend over several days, not a single day, short-term noise is common, especially while an ad set is still in its learning phase.

How YieldBI applies this

Your Profit Goal is set as the actual target you’re optimizing toward, and every ad-level ROAS figure is read against that goal, not against an account-wide average, and not against Meta’s default attribution. That’s what lets the daily action list tell a genuinely underperforming ad set apart from one that only looks weak next to a retargeting number it happens to be feeding.