Each platform (Facebook, Google, TikTok) attributes credit differently based on their own lookback windows and models (last-click, data-driven, view-through, etc.), which often results in overlapping and inflated ROAS if you just add them all together.
Here's how to get a realistic view of ROAS across platforms:
1. Use GA4 as the source of truth
GA4 isn’t perfect, but it applies consistent attribution logic across channels. Focus on these reports:
Model Comparison Tool to compare attribution models (last click vs. data-driven)
Conversion paths to see true contribution
Source/Medium or Campaign reports to tie revenue to channels
2. Apply Deduplication Logic
Don't add up revenue from each ad platform directly—they all claim more than they should. Instead:
Track total revenue from GA4 or backend (Shopify, etc.)
Compare each platform's claimed conversions to GA4’s to get a sense of over-attribution
Allocate credit proportionally if needed
3. Use UTMs + First-Party Tracking
Set up UTMs for every campaign. Combine this with:
A post-purchase survey (“How did you hear about us?”)
Server-side tracking (Meta CAPI, TikTok Events API, Google gtag/CAPI)
4. Build a Custom Attribution Model (if possible)
Use tools like:
Triple Whale, Northbeam, or Segmetrics
Or build a simple weighted model (e.g., 40% to first-click, 60% to last-click)
TL;DR: Rely on GA4 for consistency, don’t add platform ROAS blindly, and layer in UTM, server data, or post-purchase insights to clarify what really drives sales.