- Why Your ROAS Numbers Don't Add Up Across Platforms
- The Right Way to Calculate ROAS
- Platform-Specific ROAS Factors You Need to Know
- How to Improve ROAS Across All Three Platforms Simultaneously
- Building a Weekly ROAS Review Process
- When to Get Help With Cross-Platform ROAS
- FAQs
You're running ads on three platforms. Meta says your ROAS is 3.2x. Google says 4.1x. TikTok says 2.8x. On paper, you're printing money. But your actual revenue hasn't moved the way those numbers suggest it should.
That's the core problem with managing performance marketing ROI across multiple platforms at once: every platform measures differently, attributes differently, and reports in a way that flatters itself. If you're making budget decisions based on platform-reported ROAS alone, you're almost certainly misallocating spend.
This article walks through how to calculate ROAS correctly across Meta, Google, and TikTok, why the numbers diverge, and what you can actually do to improve performance across all three without optimizing one at the expense of the others.
Why Your ROAS Numbers Don’t Add Up Across Platforms
Before you can fix anything, you need to understand why the numbers conflict.
Each platform runs its own attribution window and counting method. Meta defaults to a 7-day click and 1-day view window. Google Ads defaults to a 30-day click window for most campaign types. TikTok uses a similar 7-day click and 1-day view window to Meta, but its in-app browser behavior introduces additional discrepancies on top of that.
So when a user sees a TikTok ad, clicks a Meta retargeting ad two days later, and then converts through a Google branded search, all three platforms claim that conversion. Your actual revenue gets reported three times across three dashboards. This is multi-touch attribution overlap, and it's the primary reason your combined platform ROAS always looks better than your actual return.
The fix isn't to trust one platform over the others. It's to build a measurement layer that sits above all three.
The Right Way to Calculate ROAS
The formula is simple:
ROAS = Revenue from ads / Ad spend
Spend $10,000, generate $35,000 in tracked revenue, and your ROAS is 3.5x. The problem is the numerator. "Revenue from ads" means something different depending on where you pull it.
Platform-Reported ROAS vs. Blended ROAS
Platform-reported ROAS is what each ad manager shows you — based on that platform's own pixel or SDK data, its own attribution window, and its own conversion counting logic. It's useful for relative comparisons within a single platform, but it's not a reliable cross-platform metric.
Blended ROAS is total revenue divided by total ad spend across all channels. It's the number that actually tells you whether your paid media investment is working.
Blended ROAS = Total revenue (from your source of truth) / Total ad spend across all platforms
Your source of truth should be your Shopify backend, your CRM, or GA4 with server-side events. Not the ad managers.
What to Track in GA4 for Cross-Platform ROAS
GA4 with properly configured e-commerce tracking gives you a platform-agnostic view of revenue. You need:
purchaseevents firing withtransaction_id,value, andcurrency- Google Ads linked to GA4 with auto-tagging enabled
- UTM parameters on all Meta and TikTok ad URLs (Meta's auto UTM feature helps, but verify it's actually working)
- A custom channel grouping that separates Paid Social, Paid Search, and Paid Video
With this in place, you can pull a GA4 report showing revenue by channel, compare it against your actual ad spend in each platform, and calculate a ROAS that isn't inflated by attribution overlap.
Platform-Specific ROAS Factors You Need to Know
Each platform has quirks that affect how you interpret and improve its reported numbers.
Meta
Meta's ROAS is the most prone to inflation because view-through attribution is on by default. A user who saw your ad but never clicked can still be credited with a conversion if they purchase within 24 hours. For brands running broad awareness campaigns alongside retargeting, this creates significant double-counting.
To get a cleaner read on Meta ROAS:
- Switch your attribution window to 7-day click only when evaluating direct response campaigns
- Use Meta's Conversions API alongside the pixel to reduce signal loss from browser restrictions and iOS privacy changes
- Compare Meta-reported conversions to GA4 purchase events filtered by the
facebook / cpcsource/medium combination
Meta's Andromeda update in 2026 also shifted how the algorithm distributes spend within Advantage+ campaigns, which can cause ROAS to swing significantly week over week without any change in your creative or targeting. Monitoring spend distribution within Advantage+ placements is worth building into your weekly review.
Google's ROAS tends to be the most accurate of the three for bottom-funnel campaigns, largely because search intent is explicit. Someone searching "buy [product]" and clicking a Shopping ad is much closer to purchase than someone who scrolled past a TikTok video.
That said, Performance Max campaigns create their own reporting challenges. PMax consolidates Search, Shopping, Display, YouTube, and Discover into a single campaign type, which means you can't easily see which placement is actually driving your ROAS. A campaign showing 5x ROAS might be entirely driven by branded search — traffic that would have converted organically anyway.
To improve Google ROAS without inflating it:
- Separate branded and non-branded campaigns so branded search doesn't mask non-brand performance
- Use asset group reporting in PMax to identify which creative combinations are driving conversions
- Set target ROAS bidding only after you have at least 30 to 50 conversions in a 30-day window; before that, run maximize conversions and let the algorithm learn
TikTok
TikTok ROAS is the hardest to trust at face value. The platform's in-app browser means many purchases happen in an environment where standard pixel tracking is unreliable, and TikTok's attribution model tends to over-claim on view-through conversions because its content is inherently passive.
The most useful signal on TikTok isn't ROAS in isolation — it's the lift you see in blended ROAS or total revenue when you scale TikTok spend versus when you cut it. Running a holdout test, pausing TikTok for two weeks and comparing revenue to a comparable period, is one of the most reliable ways to understand its actual contribution.
For tracking accuracy on TikTok:
- Implement the TikTok Events API (server-side) in addition to the pixel
- Use UTM parameters on every ad and verify they're passing through to GA4
- Set your attribution window to 7-day click only for direct response campaigns
How to Improve ROAS Across All Three Platforms Simultaneously
Improving ROAS on one platform often means pulling budget from another. The goal isn't to maximize each platform's reported number independently — it's to improve your overall return on total paid media investment.
Start With Budget Allocation Based on Blended Data
Pull your GA4 revenue by channel for the last 90 days. Calculate the actual ROAS for each channel using your ad spend from each platform's billing summary. Then compare those numbers to what each platform reports.
The gap between GA4-attributed revenue and platform-reported revenue tells you how much overlap and over-attribution exists on each channel. The channel with the smallest gap is your most reliable signal. The channel with the largest gap deserves more scrutiny before you scale it.
Fix Attribution Before You Optimize Campaigns
You can't reliably improve what you can't accurately measure. Before adjusting bids, budgets, or creative, make sure:
- Meta Pixel and Conversions API are both firing and deduplicating correctly
- Google Tag Manager is passing clean purchase events to GA4 and Google Ads
- TikTok pixel and Events API are both active
- UTM parameters are consistent and not being stripped by redirects
This is foundational work. Skipping it means every optimization decision you make is built on corrupted data.
Use Creative Testing to Improve Efficiency, Not Just Volume
ROAS stagnates when creative gets stale. On Meta and TikTok especially, ad fatigue happens faster than most teams expect. Running the same creative for more than three to four weeks without a refresh typically causes CPMs to rise and conversion rates to fall — compressing ROAS even if your targeting and bidding haven't changed.
A structured A/B testing process, isolating one variable at a time (hook, offer, format, landing page), gives you a systematic way to improve creative performance without guessing. The goal is to build a library of winning elements you can recombine, not to run one-off tests that don't compound.
Align Offers and Landing Pages to Each Platform’s Intent
Users on Google Search are in decision mode. Users on TikTok are in discovery mode. Users on Meta sit somewhere in between, depending on whether they're seeing a prospecting or retargeting ad.
Sending all three audiences to the same landing page is one of the most common reasons ROAS underperforms. A landing page built for a high-intent Google search visitor — detailed specs, direct purchase CTA — often won't convert a TikTok user who just learned your product exists thirty seconds ago.
Matching the landing page to the platform's typical user intent is one of the highest-leverage improvements you can make without touching your ad accounts at all.
Building a Weekly ROAS Review Process
Improving ROAS across three platforms requires a consistent review cadence, not just periodic audits. A weekly process that takes 30 to 45 minutes can catch issues before they compound.
What to review each week:
- Blended ROAS (total revenue from source of truth / total ad spend)
- Platform-reported ROAS vs. GA4-attributed ROAS for each channel
- Spend distribution within each platform (are budgets drifting toward low-intent placements?)
- Creative frequency on Meta and TikTok (high frequency usually precedes a ROAS decline)
- Conversion rate by landing page (ROAS problems are often CRO problems in disguise)
Keeping a simple spreadsheet with these numbers week over week gives you the context to make confident decisions rather than reactive ones.
When to Get Help With Cross-Platform ROAS
Managing tracking, creative, and bidding strategy across Meta, Google, and TikTok simultaneously is genuinely complex. The tracking setup alone — Meta Pixel, Conversions API, Google Tag Manager, GA4, TikTok Events API — requires technical depth that most growth teams don't have in-house.
If your ROAS has been stuck for more than two quarters despite budget and creative changes, the problem is often in the measurement layer, not the campaigns themselves. Corrupted attribution leads to bad budget decisions, which leads to worse ROAS, which leads to more cuts in the wrong places.
Novametron works with SaaS and e-commerce brands running $5K to $30K per month in ad spend across exactly this stack. The approach starts with getting tracking right before touching campaign structure — because optimizing on bad data doesn't improve performance, it just makes bad decisions faster. If you want a second set of eyes on your current setup, there's a free audit available on the site.
FAQs
What is a good ROAS across Meta, Google, and TikTok combined?
There's no universal benchmark. A product with a 70% gross margin can be profitable at 2x ROAS. A product with a 20% margin might need 6x or higher just to break even. Calculate your break-even ROAS based on your margins and customer acquisition costs, then use that as your floor — not an industry average.
Why does Meta always show a higher ROAS than GA4?
Meta's default attribution includes view-through conversions, crediting purchases from users who saw but never clicked your ad. GA4 uses last non-direct click by default, which attributes far fewer conversions to paid social. The truth usually sits somewhere between the two, which is why using both together gives you a more complete picture.
How do I stop platforms from double-counting conversions?
You can't fully eliminate overlap in platform-reported numbers, but you can minimize it. Server-side tracking (Meta CAPI, TikTok Events API) with proper deduplication keys — event IDs matched between pixel and server events — reduces duplicate firing. Building your primary ROAS calculation on a platform-agnostic source like GA4 or your Shopify backend removes the overlap problem entirely.
Should I use the same attribution window on all three platforms?
Ideally, yes. Comparing Meta's 7-day click plus 1-day view window to Google's 30-day click window is like measuring with two different rulers. Set all platforms to the same window — 7-day click only is a reasonable standard for direct response — when doing cross-platform comparisons.
What is blended ROAS and why does it matter more than platform ROAS?
Blended ROAS is total revenue from your source of truth divided by total ad spend across all channels. It's the only number that tells you whether your overall paid media investment is actually generating a return. Platform-reported ROAS is useful for relative optimization within each platform, but it should never be your primary measure of whether paid media is working.
How often should I adjust bids and budgets based on ROAS data?
Weekly reviews are appropriate for budget allocation decisions. Bid strategy changes should happen less frequently — roughly every two weeks — because most bidding algorithms need seven to fourteen days to stabilize after a change. Making daily bid adjustments based on short-term ROAS swings usually makes performance worse, not better.
Can I improve ROAS without increasing my ad budget?
Yes. ROAS is a ratio, so it improves when revenue increases relative to spend, or when spend decreases relative to revenue. Improving landing page conversion rate, tightening targeting to reduce wasted impressions, refreshing stale creative, and fixing attribution so budget flows to genuinely high-performing campaigns are all ways to move the number without adding a dollar to your budget.
Accurate measurement comes first. Better creative and smarter budgets follow from there. If you're running across Meta, Google, and TikTok simultaneously and the numbers don't add up, start with your tracking stack before you touch your campaigns. That's where most ROAS problems actually live.