Add up the revenue that Meta, Google and TikTok each claim, and the total is often more than the business actually took in. That isn't fraud. Each platform credits itself for any sale it touched, under its own rules, and none of them can see the others.
The result is a reported ROAS that looks healthy while the bank balance tells another story. Here's why the numbers split, and how to rebuild measurement around the number your finance team trusts.
1. Every platform grades its own homework
Each ad platform attributes conversions with its own model and its own click and view windows. A customer who clicks a Google ad, later sees an Instagram ad and then buys can be counted by both. Add view-through conversions and the overlap grows.
Platform ROAS is a useful signal for optimising inside a platform. It isn't a measure of what the business earned.
How to do it- List the attribution setting for every platform you run, including view-through windows
- Add up the conversions each platform claims for one month
- Compare that total with actual orders or closed deals for the same month
- Treat the gap as your over-counting, and track it every month
2. Brand search inflates the average
Campaigns that bid on your own brand name, and broad campaigns such as Performance Max that can serve on brand searches, capture people who were already on their way to you. Those conversions are cheap, and they lift the account's ROAS while adding little new revenue.
How to do it- Report brand and non-brand search separately
- Use brand exclusions in Performance Max where they fit your goals
- Judge prospecting and non-brand campaigns on their own numbers
- Treat brand ROAS as a floor, not as proof of growth
3. Tracking gaps hide real sales
Browser privacy features, ad blockers and consent choices mean pixels miss some conversions. That pulls the other way: some real sales are never credited, and the platforms optimise on incomplete data.
Server-side tracking sends conversions from your server or CRM instead of the browser, which gives each platform a more complete picture to optimise against.
How to do it- Set up Meta's Conversions API and Google's Enhanced Conversions
- Send offline conversions, such as qualified leads, closed deals and refunds, back to the platforms
- Deduplicate events so browser and server conversions aren't counted twice
- Check event match quality every month
4. Pick one number the business trusts
Instead of steering by platform ROAS, choose a metric calculated from your own data: blended ROAS (total revenue divided by total ad spend), customer acquisition cost for new customers, or contribution margin after ad spend.
It won't tell you which campaign worked. It tells you whether marketing as a whole is paying back, which is the question the business is asking.
How to do it- Pull revenue from your store, CRM or accounts, not from the ad platforms
- Divide it by total paid media spend for the same period
- Split new and returning customers if you can
- Agree the metric and its target with finance before the next budget cycle
5. Test for incrementality
The cleanest answer to "what did this campaign add?" is a test. Turn spend off or down for some regions or audiences, keep a comparable group running, and compare the two. Platforms offer conversion lift studies, and geographic tests work across channels.
Tests take time and budget, so save them for the biggest questions, such as a large channel you're unsure about.
How to do it- Pick one large campaign or channel whose value you doubt
- Define a control group by region, audience or time period
- Run the test long enough to get a clear read
- Use the result to calibrate how much platform ROAS overstates
Final thoughts
Platform ROAS is a steering wheel, not a scoreboard. Use it to optimise inside each platform, and judge the whole programme on a number that comes from your own revenue.
When the two disagree, trust the bank account, then find out why.
How we write: articles are drafted by the Swifto team with help from AI tools, then checked and edited by the people who run client accounts. We don't publish statistics we can't source.



