Key takeaways
- Shopify, GA4, Meta, and Google will report different revenue — by design.
- Causes: different attribution windows, models, time zones, and tracking loss.
- Platforms over-claim because they can't see other channels' touches.
- Pick your commerce platform as the single source of truth for revenue.
- Use ad platforms and GA4 for in-tool optimization, not P&L accuracy.
Why don't the numbers match?
Each system measures a different thing in a different way. Shopify records actual orders. GA4 models sessions and conversions with its own attribution. Meta and Google each count conversions they believe they drove, using their own windows. Four tools, four methodologies — they were never going to agree.
| Source | What it counts | Why it differs |
|---|---|---|
| Shopify | Actual paid orders | The real revenue ledger |
| GA4 | Modeled sessions & conversions | Its own attribution + tracking gaps |
| Meta | Conversions it attributes | Click/view windows, can't see Google |
| Conversions it attributes | Click/view windows, can't see Meta |
What specifically causes the gaps?
- Attribution windows: a platform may credit a sale up to 7 days after a click or 1 day after a view.
- Double-counting: a buyer who touched both Meta and Google is claimed by both.
- View-through conversions: platforms count sales after an ad was seen but not clicked.
- Tracking loss: blocked cookies, ad blockers, and privacy controls hide some conversions, which platforms then model.
- Time zones and timing: reporting boundaries and order vs conversion timestamps rarely align.
Bigger gaps for upper-funnel channels
Prospecting and view-heavy campaigns show the largest discrepancies, because view-through and long windows inflate their claimed revenue most.
Which number should you trust?
For revenue, trust your commerce platform — it records what customers actually paid. Treat GA4 and the ad platforms as instruments for their own jobs: GA4 for on-site behavior and channel mix, the ad platforms for optimizing campaigns within themselves.
One source of truth ends the debate
Designate Shopify (or your platform) as the revenue ledger. Then nobody wastes hours trying to make Meta and GA4 reconcile to the cent.
How do you work with the discrepancy instead of against it?
- 1
Set the revenue source of truth
Use your commerce platform for total revenue and profit; everything else is directional.
- 2
Use blended ROAS / MER for budgets
Total revenue ÷ total spend can't be double-counted, so it's the honest scale check.
- 3
Track the gap over time
A stable gap is normal; a widening one signals tracking loss or growing overlap worth investigating.
- 4
Optimize in-platform, decide blended
Let each platform's reporting guide its own campaigns, but make budget calls on blended numbers.
Frequently asked questions
Should GA4 and Shopify revenue match exactly?
No. GA4 models sessions and conversions with its own attribution and loses some data to privacy controls, while Shopify records actual orders. A consistent gap is normal; use Shopify as the revenue source of truth.
Why does Meta report more revenue than I actually made?
Meta counts conversions within its attribution windows, including view-through sales and conversions other channels also influenced. Across platforms, these overlapping claims sum to more than your real revenue. Blended ROAS corrects for this.
How big a discrepancy is normal?
There's no fixed figure — it depends on your channel mix, attribution settings, and how much tracking is lost. What matters is that the gap stays roughly stable. A sudden widening is the signal worth investigating.
Keep reading