Why Your GA4 ROAS and Google Ads ROAS Disagree
Two ROAS figures, one campaign, wildly different answers. Here is what each platform is actually measuring and which one should drive your budget.

GA4 says your campaign returned 3.2. Google Ads says 5.8. Same campaign, same dates, and now you have to decide whether to increase the budget.
Both numbers are calculated correctly. They are measuring different things, and knowing which is which tells you what to do with them.
What each one is actually calculating
Google Ads ROAS is revenue attributed to Google Ads clicks divided by Google Ads spend. It counts a sale if the customer clicked a Google ad within the conversion window, and it books it against the click date.
GA4 ROAS is revenue attributed to the Google Ads channel by GA4’s own attribution model, divided by the same spend. GA4 looks at the whole journey across every channel and shares the credit.
So Google Ads is answering “did a Google click contribute to this sale”. GA4 is answering “how much of this sale should Google get credit for”. Those questions have different answers by design.
Why Google Ads usually reports higher
It claims the whole conversion. GA4 might give Google 40 percent of a sale that also involved email and organic search. Google Ads counts 100 percent of it.
It includes modelled conversions. Where consent or browser restrictions block measurement, Google estimates. GA4 is more conservative.
It uses click date. Revenue lands on the day of the click rather than the day of the purchase, which shifts numbers within any short reporting window.
It counts view through and engaged view conversions on some campaign types, which GA4 handles very differently.
This is the same underlying reason that conversion counts never match between the two platforms.
Which one should drive decisions
Use Google Ads ROAS for in platform decisions. Bid adjustments, budget shifts between campaigns, deciding what to pause. Smart Bidding optimises against that data, so managing to a different number means arguing with the system you are relying on.
Use GA4 ROAS for channel level decisions. Whether paid search deserves more budget than email or social. GA4 sees the whole journey and is far better at that question.
Use your own numbers for the truth. Take real revenue from Shopify or your CRM, subtract refunds and cost of goods, and divide by total marketing spend. That is the only figure that reflects whether the business is making money.
The number almost nobody calculates
Blended ROAS. Total revenue divided by total marketing spend, ignoring attribution entirely.
It is crude, and it cannot tell you which channel worked. But it cannot be gamed by attribution settings either, and it is very good at catching the situation where every platform reports success while the bank balance disagrees.
If your platform ROAS is climbing and your blended ROAS is flat, your channels are competing to claim credit for the same sales.
When the gap means something is broken
A consistent gap is normal. Google Ads reporting 30 to 60 percent higher than GA4 is unremarkable.
Investigate when:
The gap swings wildly month to month rather than staying stable.
GA4 reports higher than Google Ads, which usually means duplicate revenue in GA4.
Neither number is close to your real revenue.
Revenue values look wrong, for example when currency or refunds are mishandled.
What to do about it
Pick one number as your operating metric and stick with it. Document the typical gap so nobody rediscovers it every quarter and panics.
Then check the gap monthly. A stable difference is a healthy setup. A moving one is a signal worth investigating.
Need this fixed properly?
If your ROAS figures disagree so much that nobody trusts the reporting, sorting out which number to manage to is usually the first fix. I set up and repair tracking for ecommerce stores and lead generation businesses, so the numbers in your ad accounts match the money in your bank account.
Have a look at what I do, or book a call and we can go through your setup together.






















