Why Meta, Google Ads and GA4 don't match your orders
The numbers will never match, and adding up every platform's purchases will always give more than your shop's orders. What matters is the ratio: if each platform's share of your orders stays stable from day to day, the gaps are measurement; if one share suddenly drops or doubles, a tag broke.
Published 2026-10-27
Gaps that are normal
- Each platform only counts its own ads, and each claims the order. A customer who clicked a Meta ad on Monday and a Google ad on Thursday can be counted as a purchase by both. Google Ads only reports conversions that followed a Google Ads interaction; Meta's attribution setting decides which clicks and views it credits.
- Different dates. Google Ads reports a conversion on the date of the ad interaction, not the day of the purchase, and conversions can still arrive weeks after the click. GA4 and your shop use the purchase date. Yesterday's numbers in Google Ads will keep growing for a while.
- Consent. Visitors who reject cookies are not measured in full. With Google Consent Mode in advanced mode, Google models part of the gap; Meta and most other pixels simply send nothing.
- Ad blockers and browser privacy features stop some tags from loading, and shorten how long cookies last, which weakens attribution for returning customers.
- Modelled and cross-device conversions are estimates, so a platform can report fractions or more conversions than it could observe.
Gaps that mean something is broken
- A share that drops suddenly. Google Ads went from about 60% of orders to 20% overnight: a tag was removed, a checkout app changed the confirmation page, or a consent update started blocking the tag.
- A share above 100%. A platform reports more purchases than you had orders: the purchase fires twice (reloads of the confirmation page, two pixels, browser plus server without deduplication).
- Purchases with no value or a fixed value. Counts match but revenue does not: the tag is not reading the order total or currency.
- Every platform low by the same amount after a site change. Usually lost click IDs: a new redirect drops
gclid,fbclidand the rest, so sales still happen but are no longer tied to ads.
A daily ratio that tells them apart
Once a day, for yesterday, write down orders from your shop and purchases from GA4 and each ad platform, then divide each platform's number by your orders. Over two or three weeks each ratio settles into a band, for example GA4 at 0.80–0.88. A day outside the band is worth ten minutes of checking. Remember that Google Ads' figure for yesterday will still grow, so compare it with the same day last week at the same age.
Look at the ratio rather than the total: a quiet day lowers every number, but it should not change the shares.
What to check when a ratio breaks
- Place a test order and follow it into the platform whose share moved (see the Black Friday checklist for where to look).
- Check what changed on the site that day: theme, checkout, consent banner, tag manager versions, new landing pages.
- Run the free scan on the order confirmation page and on a landing page: it reports silent tags, duplicate IDs, pixels blocked or firing against consent, missing purchase values and lost click IDs.
Run the free scan: it loads your page in a real browser, accepts and rejects the banner, follows redirects with test click IDs and reports what every platform received.
Check your own site
- Meta pixel checker
- Click ID redirect tester (gclid, fbclid, ttclid, msclkid)
- Redirects drop the gclid and other ad click IDs: how to keep them
Sources
- Google Ads: Data discrepancies, factors and troubleshooting
- Google Ads: Understand your conversion tracking data
- Google Ads: About consent mode modeling
- Meta: Change your attribution window for ad results
- Meta: Handling duplicate pixel and Conversions API events
Based on the platforms' public documentation; menus and names change, so check the linked pages if a step looks different.