Why your ad platform conversions do not match real sales
Why is the conversion count in Meta Ads different from sales in the CRM?
Part of the difference is expected and does not indicate a fault: each platform uses its own attribution window and credits the conversion to the click date, not the sale date. The other part is usually real data loss, caused by tracking blockers, browser limitations, duplicated events or a missing Conversions API. The way forward is separating those two causes before changing anything in the campaign.
This is probably the most frequent question in a results meeting. The ad manager shows one number, GA4 shows another, the sales team quotes a third, and the conversation stalls before reaching the decision that matters.
The good news is that the causes are known and separable. The bad news is that most operations try to fix it by adjusting campaigns, when the problem sits in the measurement.
First, what is expected difference
Before hunting for a defect, it helps to recognise what will never match, and should not.
Attribution window. Meta credits conversions that happened within a window after the click or view. Google uses its own logic. The CRM records the sale when it happens. Three different clocks counting the same event.
Attribution date. Platforms attribute the conversion to the date of the click, not the date of the sale. A deal closed today can appear in last week’s report. In long sales cycles, that alone breaks any month-on-month comparison.
Different attribution models. If a customer saw an ad on Meta, searched on Google and only then bought, both platforms may claim the same sale. Adding the two reports produces a number larger than actual revenue.
None of this is an error. It is the consequence of each system answering a different question.
Then, what is real loss
Beyond the structural differences, there is data loss you can and should fix.
Blockers and browser limits. A meaningful share of visitors block tracking through extensions or default browser settings. Those conversions happen, but the Pixel never records them.
Missing Conversions API. Sending the event from the server as well recovers much of what the browser loses. Without it, the platform optimises on incomplete data. The effect is not only an understated report: it is a campaign learning the wrong lesson.
Duplicated events. The opposite problem, and just as common. Pixel and API sending the same event without a deduplication key, or the tag firing twice on the same page.
Source lost along the way. The lead arrives from the ad, the conversation moves to a messaging app, and nobody records where it came from. The sale exists, but it is born orphaned in the CRM.
How to separate one from the other
The procedure we use in diagnostics follows this order:
- Audit the firing. Check every conversion event in a real environment, confirming it fires once, with the expected parameters.
- Check deduplication. Pixel and Conversions API have to share an event identifier.
- Trace the source through to the CRM. Every opportunity should carry its source from first contact to close, including when the conversation changes channel.
- Compare equivalent periods. Adjusting by click date, not sale date.
- Define the single source of truth. Almost always the CRM. Platforms keep serving optimisation; budget decisions rest on the CRM.
What changes once this is fixed
It is not just a prettier report. With measurement corrected, the optimisation algorithm receives a complete signal and delivers more for the same spend. And results meetings stop spending the first half hour arguing about which number is right.
FAQ
Frequently asked questions
Which number should I treat as correct?
The CRM, when it records the actual sale. Ad platforms are good at optimising campaigns, but each tends to claim the conversions it touched. For investment decisions, use one source of truth and keep the others as optimisation references.
Does installing Conversions API solve it on its own?
It reduces the loss considerably, but it requires correct deduplication with the Pixel, otherwise it creates the opposite problem: conversions counted twice. You also have to send the right matching parameters, or the platform cannot attribute the event to the person who clicked.
How much difference is acceptable?
There is no universal number, but divergences above twenty to thirty per cent between platform and CRM usually indicate a technical problem rather than attribution differences alone. Above that, audit before making budget decisions.
Next step
How much is your operation losing each month?
Almost every company loses opportunities without knowing: conversions never recorded, leads nobody answers in time, budget going to the wrong channel. Within weeks you have that number, and the list of what to fix first.