Google Ads will almost always report better ROAS than you actually experience. This isn’t a bug. It’s how platform attribution works. Understanding the gap is essential for making good decisions about where to put your budget.

Why platform ROAS is inflated

Cross-channel credit claims. A user might click a Google ad, then see a Facebook ad, then convert from an email. Google claims the conversion. Facebook claims the conversion. Your email platform claims the conversion. Add up the ROAS from all three platforms and you’ll typically see 3 to 5 times more revenue “attributed” than you actually generated. Each platform is counting the same conversion.

View-through attribution. Many campaigns include view-through conversions by default, counting conversions that happen within a window (often 1 to 7 days) after someone saw (not clicked) your ad. A user who sees your Google Display ad and then converts from a direct visit will show up in Google’s conversion count. This dramatically inflates apparent ROAS for upper-funnel campaigns.

Last-click vs. data-driven. If your Google Ads account uses data-driven attribution but you’re comparing the numbers to revenue in your CRM or Shopify, you’re comparing different attribution models. The numbers won’t match.

Modeled conversions. Google increasingly uses modeled conversions to fill in gaps created by cookie consent requirements and iOS privacy changes. Modeled conversions are estimates, not actual tracked conversions. They inflate reported totals, particularly for broad-match and PMAX campaigns.

What to use instead

Revenue from your source of truth. Your CRM, your payment processor, your order management system. Whatever counts actual closed revenue is your benchmark. Compare Google’s reported revenue to actual closed revenue in the same period. The gap tells you how inflated the attribution is.

Lead quality metrics, not just volume. If you’re generating leads rather than direct sales, track conversion rate from ad-generated lead to closed deal. A campaign with a 20% lower lead-to-close rate is generating lower-quality leads, which won’t show up in Google’s ROAS metric.

Incrementality. The real question is: would these customers have bought anyway without the ad? Incrementality testing (pausing campaigns in geographic regions or for audience segments, then comparing conversion rates) gives you a view of actual lift rather than correlation. It’s more work but much more accurate.

Blended ROAS across all channels. Take your total revenue divided by total ad spend across all channels. This number doesn’t inflate. It just reflects business reality. If blended ROAS is significantly lower than any individual platform’s reported ROAS, you’re double-counting.

A practical approach

Start every reporting conversation with the question: what does our actual closed revenue look like this month, and what did we spend to get it?

From there:

  • Calculate blended ROAS (total revenue / total ad spend)
  • Compare to each platform’s reported ROAS
  • Understand the gap and what’s driving it
  • Make budget decisions based on blended metrics and lead quality, not platform dashboards

Google Ads reported ROAS is useful for within-platform optimization. It’s a poor basis for strategic budget decisions.


d2b2 builds attribution frameworks that connect ad platform data to actual revenue. If your reported numbers and your books don’t match, that’s a solvable problem.