Guide · Measurement
Why Shopify, Metaand GA4 never agree
Add up what every platform claims and you will usually get more revenue than your store actually took. Nothing is broken. Each system is answering a different question over a different window, and two of them changed the rules in 2026. Here is what each one is measuring, and what to trust instead.
01 · The mechanism
Nobody is lying.Nobody is comparable.
An attribution window is how far back a platform looks before claiming credit for an order. Every platform picks its own, and they are not close to each other.
| Platform | Default window | What it is really counting |
|---|---|---|
| Meta | 7-day click 1-day engage-through 1-day view |
The most inclusive configuration available, which produces the highest reported return on ad spend. Most accounts run it without having chosen it. |
| Google Ads | 30-day click | More than four times Meta's click window, on a data-driven model. A direct comparison of the two numbers is not a comparison of two channels. |
| TikTok | 7-day click 1-day view |
Closest to Meta, and still not identical, since the view definition and the deduplication differ. |
| 30-day click 7-day view |
The longest view window in common use, which is why B2B reporting tends to look generous. | |
| GA4 | 90-day lookback data-driven |
Sessions that begin with a click to your site, often last-click for paid social. It has no concept of a view-through at all. |
| Shopify | The order | Last click, and it does not care what happened before the session. The only one of these that is counting money rather than credit. |
One line in that table explains most of the argument you have been having. GA4 cannot see a view-through, because someone who saw an ad and did not click never created a session. Meta counts that order. GA4 attributes it to direct or organic. That single structural difference is estimated to account for 15 to 30 percent of the gap between the two systems.
You are not reconciling two versions of the truth. You are reconciling two definitions.
Between Meta and Shopify specifically, a 20 to 30 percent gap is normal and expected. Materially larger than that usually points at a conversions API problem rather than a philosophical one, and that is worth investigating rather than accepting.
The deeper issue is that even a perfectly configured platform number is not measuring what you want it to measure. Across 253 media-mix models covering $383M of spend, platform-reported return on ad spend ran two to five times above true incremental impact. Deduplicating the claims gets you a cleaner number. It does not get you an incremental one.
02 · Free, no email required
Add up everythingyour platforms claim
Put last month's reported revenue from each platform next to what Shopify actually recorded. The overflow is the double count, and it is usually the first time anyone has looked at it as one number.
Last 30 days
Each platform's own reported revenue, as it appears in that platform.
What each platform claims
Use each platform's default window, whatever it happens to be, because that is the number your team is actually looking at. The point of this is not to configure the windows to match. It is to see what happens when four systems each claim the same orders. This is a de-duplication, not an incrementality test.
What the arithmetic says
Updates as you type. Nothing is sent anywhere.
Meta Google Email SMS Double counted
| Paid channel | Reported ROAS | De-duplicated | Change |
|---|
Read the second bar carefully. Apportioning actual revenue in proportion to what each platform claimed is a crude method, and it assumes every platform over-claims by the same factor, which is not true. It is a first approximation that removes the double count. It does not tell you what would have happened if you turned a channel off, and only a holdout test or a media mix model can answer that.
03 · 2026
Meta changed the rulestwice this year
If your reported conversions fell this year and nobody could explain why, this is almost certainly it. Both changes made the numbers smaller and more honest, and both broke comparison with anything before them.
-
12 January 2026
The view windows were removed
Meta permanently deleted the 7-day view and 28-day view attribution windows from Ads Manager and the Ads Insights API. Requests for those fields now return empty. Awareness campaigns, video, and anything with a longer consideration cycle were hit hardest, since those relied most on view-through credit.
Reported conversions fell 15–40% for affected accounts. Performance did not change. Measurement did.
-
March 2026
A click became a click
Meta redefined click-through attribution to require an actual link click. Social interactions like likes and saves moved into a separate engage-through category with a one-day window. The stated goal was alignment with Google Analytics, which only ever counted link clicks.
Retargeting took the hit. Those campaigns leaned on engagement being counted as clicks. If yours looks worse now, the old number was flattering it.
Two practical consequences follow, and both are easy to get wrong.
First, do not compare data across those dates. A drop between February and March is not a performance decline, it is two different measurement systems being placed side by side. Set a new baseline from mid-March onwards and evaluate from there. The Compare Attribution feature in Ads Manager will show you how conversions distribute across settings without changing anything live, which is the safest way to see where they moved rather than assuming they vanished.
Second, engage-through conversions will never appear in GA4, because a like does not create a web session. That is expected behaviour rather than a tracking fault, and chasing it will waste a week.
The gap between Meta and GA4 should be narrower after March than before it. It will not be zero, and any agency telling you it should be does not understand what the two systems are counting.
04 · The independent source
Ask the customer.No platform owns that.
One question on the order confirmation page produces the only attribution data no ad platform can inflate, no privacy change can break, and no window can distort. It is also the cheapest thing on this page.
What good looks like
- 40–80%Response rate range reported for well-implemented surveys on the confirmation page. One vendor reports averages above 45% across its base, which is a vendor number and should be read as a best case.
- 2–3 maxQuestions. The attribution question goes first. Response rate collapses as you add more, and one good question beats five mediocre ones.
- "First"Ask how they first heard about you, not how they heard about you. That single word is what separates awareness from the last click your pixel already knows about.
- 2–4 weeksBefore the data is directionally reliable. You want a few hundred responses before moving budget on the back of it.
What it will not do
- Recall biasPeople remember the last thing they saw, not the first. Careful question wording reduces this. It does not remove it.
- Response biasEngaged customers answer more often than indifferent ones, so the sample skews toward people who like you. At a 40% response rate, 60% of your buyers are still silent.
- Buyers onlyA post-purchase survey can only survey people who bought. It explains the past. It cannot tell you whether a channel you have not tried would work.
- Not a replacementIt is a third reading to triangulate against, not a new single source of truth. Treating it as gospel repeats the mistake you are trying to fix.
Even with those limits it is the highest-value hour of setup available to most brands, because it is the only source that sees the channels a pixel structurally cannot: podcast, radio, word of mouth, influencer mentions and increasingly AI assistants. One vendor's benchmark data flagged a more than tenfold rise in AI assistant mentions, with roughly one in seven brands now seeing customers name one. No ad platform will ever report that for you. The survey belongs about seven days into the post-purchase flow if you are not putting it on the confirmation page.
05 · The operating rule
Stop reconciling.Start triangulating.
The mistake almost every brand makes is treating this as an accounting problem that has a correct answer waiting at the end of it. It does not. Four systems will never agree because they were never measuring the same thing, and the hours spent making them match are hours not spent on the question that matters.
What we run instead is four readings, each used for what it is good at.
Platform reporting, inside a channel only. Meta's numbers are fine for deciding which ad beats which ad, because both sides of that comparison are measured identically. They are not fine for deciding whether Meta beats Google.
One blended number you control. Total revenue over total spend, calculated the same way every week, from Shopify. It cannot be inflated by anyone and it moves when the business moves. The contribution map on the hub builds it against margin rather than revenue, which is the version worth reporting.
The survey, as a sanity check on the mix. When the survey says 30 percent of customers first heard about you somewhere your dashboards do not mention, that is the finding. Not a number to average against the others.
Holdouts, before any large reallocation. Turn a channel off in a region or for a period and watch what actually happens to revenue. It is the only method on this list that answers the incrementality question, and it is uncomfortable precisely because it is the real test.
If a number cannot change a decision, stop producing it weekly.
That last one is the discipline. Most attribution work is performed rather than used. A blended figure, a survey and a willingness to run a holdout before moving serious budget will out-perform a dashboard that reconciles four platforms to two decimal places and gets consulted by nobody.
Common questions
Straight answers
How big a gap between Meta and Shopify is normal?
Twenty to thirty percent is typical and expected. Meta counts view-throughs and engage-throughs that Shopify has no way of knowing about, and Shopify counts on last click.
Materially wider than that usually points at a conversions API problem rather than a definitional one, and that is worth fixing. Check event match quality and deduplication between the pixel and the server-side events before assuming the gap is philosophical.
Our Meta conversions dropped this year and nothing changed. Why?
Two platform changes, not a performance decline. On 12 January 2026 Meta removed the 7-day view and 28-day view attribution windows entirely, which cut reported conversions by 15 to 40 percent for affected accounts. In March it redefined a click to require an actual link click, moving likes and saves into a separate one-day engage-through bucket.
Do not compare across those dates. Set a new baseline from mid-March and use the Compare Attribution feature in Ads Manager to see where the conversions moved rather than assuming they disappeared.
Should we just match all the attribution windows?
You cannot, and chasing it burns weeks. GA4 has no concept of a view-through, so no setting makes it count what Meta counts. Shopify does not have a window at all in the same sense.
What is worth doing is documenting every platform's current setting in one place so at least you know what you are looking at. Then stop trying to make them agree and use a blended number for cross-channel decisions.
Is a third-party attribution tool worth it?
Sometimes, and later than most brands buy one. A tool gives you a consistent cross-channel view, which is genuinely useful once spend is large enough that a reallocation decision is worth real money.
What it does not give you is incrementality. It is another model with another set of assumptions, and brands routinely run one while still making budget calls off Meta's self-reported figure. A post-purchase survey costs a fraction as much and answers a question no tool can.
What is a good MER?
The one your margin can carry, which is a different number for every brand. Marketing efficiency ratio is total revenue over total ad spend, and its value is that nobody can inflate it, not that there is a benchmark to hit.
Convert it to contribution before judging it. A 4x MER is comfortable at 60 percent margins and a loss at 25 percent. Work out your own ceiling and measure against that.
How do we run a holdout without losing revenue?
Start small and geographic. Turn one channel off in a set of regions that resemble the rest of your market, hold everything else steady, and compare revenue per region against the control group over two to four weeks.
You will lose some revenue in the test cells. That is the cost of finding out, and it is almost always less than the cost of funding a channel for another year on a number that was two to five times its real contribution.
Methodology
Sources
This page ages faster than anything else we publish. It is dated at the top and re-checked twice a year.
- Attribution window defaults. 2026 cross-platform attribution guides documenting Meta at 7-day click with 1-day engage-through and 1-day view, Google Ads at 30-day click, TikTok at 7-day click and 1-day view, LinkedIn at 30-day click and 7-day view, and GA4 on data-driven attribution with a 90-day lookback.
- The January 2026 change. Reporting on Meta's permanent removal of the 7-day view and 28-day view attribution windows from Ads Manager and the Ads Insights API on 12 January 2026, following an October 2025 developer announcement, with reported conversion declines of 15 to 40 percent for affected accounts.
- The March 2026 change. Reporting on Meta's redefinition of click-through attribution to require a link click, with social interactions moved to a separate engage-through category on a one-day window, and the stated objective of alignment with Google Analytics.
- The GA4 view-through gap. Analysis attributing 15 to 30 percent of the Meta-to-GA4 discrepancy to view-through conversions, which GA4 has no mechanism to record because no session is created.
- Typical Meta to Shopify variance. 2026 agency guidance putting a 20 to 30 percent gap in the normal range, with wider gaps treated as a signal of a conversions API problem.
- Platform against incremental ROAS. An analysis of 253 media mix models covering $383M of advertising spend, finding platform-reported return on ad spend running two to five times above measured incremental impact.
- Post-purchase survey benchmarks. 2026 vendor and agency documentation reporting response rates in the 40 to 80 percent range for confirmation-page surveys, an above-45-percent average reported by one platform across its own base, best practice of two to three questions with the attribution question first, and a two-to-four-week window before data becomes directionally reliable.
- AI assistant attribution. Benchmark data from a post-purchase survey platform reporting a more than tenfold rise in AI assistant mentions, with roughly one in seven brands now seeing customers cite one as a discovery source.
Vendor-published response rates are marketing material and we have labelled them as such in the text rather than quoting the top of the range as fact. Where a figure comes from a single vendor's own base, that is stated.
What to do with this
One blended number.
One question at checkout.
Those two things take an afternoon and beat any dashboard that reconciles four platforms and gets opened by nobody. Then run a holdout before you move anything serious.
