They are not measuring the same thing
The instinct is to assume one system is broken. Before spending a day on that, understand that an ad platform and an analytics tool are built to answer different questions, and they would disagree even if both were installed perfectly.
Meta and Google Ads answer: “of the people I showed this ad to, how many later converted?” They know who saw the ad, because they served it, and they count a conversion against the ad even if the person came back two weeks later through a different route.
GA4 answers: “for the conversions that happened on this site, where did the visit come from?” It sees the visit, not the ad impression. If the last meaningful click was organic search, that is what it credits.
So one system counts outward from the ad and the other counts backward from the conversion. The same sale genuinely belongs to both stories. That is the root of most of the gap, and no amount of reinstalling will close it.
The four mechanisms that create the gap
Attribution windows
Meta’s default counts a conversion if someone clicked the ad within a set number of days beforehand — and, historically, also if they merely saw it. GA4’s default attribution works on a different model and a different window. Two systems with different windows will never produce the same total, and the wider window always reports more.
The view-through part is the one worth understanding. A conversion credited because someone scrolled past your ad is a real thing to know, but it is not the same claim as “this ad caused this sale”, and mixing the two into one number is how budgets get misallocated.
Last click versus first touch
Someone sees your Facebook ad on Sunday, does nothing, searches your business name on Wednesday, and buys. Meta says the ad did it. GA4, by default, credits the search. Both are defensible. Neither is complete. The ad created the demand that the search harvested, and any single-number answer throws one of those facts away.
Modelled and estimated conversions
Where consent is refused or cookies are unavailable, the platforms do not simply report less — they estimate what they cannot see and include it. That estimate is usually reasonable in aggregate and is genuinely useful for optimisation, but it is a model, not a receipt. GA4 also models. Your CRM does not, which is exactly why your CRM number is the lowest.
Different definitions of the same event
This is the one that is actually your fault, and the only one you can fix outright. If Meta’s conversion fires when the form is submitted and GA4’s fires when the thank-you page loads, they will differ by every submission that failed validation or never finished loading. If one deduplicates repeat submissions and the other does not, one person submitting twice is one conversion or two depending on which report you open.
How to tell a real problem from normal disagreement
Normal disagreement is a steady, proportional gap. The platform reports more than GA4, GA4 reports more than your CRM, and the ratios stay roughly the same month to month. That is healthy and you can work with it.
A real problem looks different, and these are the patterns worth acting on:
- A sudden step change on one date. Steady for months, then a cliff. Something broke that day — a site change, a new consent banner, a tag removed. Find what shipped on that date.
- One system at or near zero. Not a discrepancy. That is a broken installation.
- The platform reporting more conversions than you have actual enquiries. Check for a conversion firing on page load instead of on submission — it is the single most common tracking fault I find, and it quietly makes every campaign look profitable.
- The gap growing steadily over months with no single break point. Usually a consent or browser-privacy change affecting an increasing share of visitors.
If you want a procedure for confirming the tracking works rather than assuming it, that is a separate walkthrough and it takes about fifteen minutes.
Which number should you run the business on?
Use each one for the job it is good at, and stop trying to reconcile them into a single truth.
- The ad platform’s number is for the platform’s decisions. Meta optimises towards what Meta can see. Feeding it accurate conversion signals matters enormously, and its own count is the right input for its own bidding.
- GA4 is for comparing channels against each other. One system, one set of rules, applied to every channel. That is the comparison the platforms cannot give you, because each only sees its own traffic.
- Your CRM or enquiry list is the number you should report to yourself. It counts real people who really contacted you. It is the lowest number and the only one nobody modelled.
The discipline that fixes most of the confusion is simple: pick one system as the official record for business decisions, use the others as instruments, and never mix them in the same sentence. Revenue reported from three sources in one slide is how a meeting ends without a decision.
Make the gap smaller where you legitimately can
You cannot close it, and anyone promising perfect reconciliation is selling something. You can narrow it:
- Fire both systems’ conversions on the same event, defined the same way. If one uses the thank-you page, both should.
- Pass a stable identifier so repeat submissions deduplicate consistently in both.
- Align the attribution windows where the platform allows it, so you are at least comparing similar periods.
- Record conversions server-side as well as in the browser, so an ad blocker or a failed script does not silently delete the record.
- Keep a dated log of every change to the site, the tags and the consent banner. When a number moves, the log tells you why in seconds.
That last one costs nothing and saves more diagnostic time than any tool.
Where to start
If your numbers disagree and you do not know whether that is normal, start by establishing which event each system is counting. The GA4 and GTM setup checklist covers the configuration, and if you would rather have it checked properly, a tracking audit answers the question directly: what fires, when, and whether it arrives.