The two numbers are not measuring the same event
An ad platform counts a click when its own click handler is reached. A tracker counts a click when the redirect endpoint is reached. Between those two moments sits a browser, a network, and a person who may change their mind. Every event that happens in that window shows up as a discrepancy, and none of it means either system is wrong.
Once you accept that, the question stops being "which number is right" and becomes "is the difference the size I expect". That second question is answerable, and it is far more useful.
Where the missing clicks go
- Abandoned before the redirect completed. Someone taps an ad on a train, the connection drops, they close the tab. The platform recorded the click. Nothing ever arrived at your redirect. On mobile campaigns this alone is routinely a few percent.
- Filtered by the platform after the fact. Ad platforms retroactively remove clicks they judge invalid, sometimes hours or days later. If you compare a fresh platform report against your tracker log, you are comparing a number that is still moving against one that is not.
- Deduplicated differently. Two clicks from the same person within a short window may count as one on the platform and two in your log, or the reverse. Each system has its own rule and neither publishes it in full.
- Prefetch and preload. Some browsers and some link previews fetch a URL before the user commits to it. Your tracker sees a request. No human clicked anything.
- Time zones and cut-offs. The dumbest cause and the most common one. Your platform account reports in one time zone, your server logs in another, and a day boundary lands in the middle of your busiest hour.
How wide is acceptable
There is no official figure, and anyone quoting one precisely is guessing. What matters in practice is stability. A gap that sits between five and ten percent every single week is a measurement characteristic of your setup. The same gap jumping to thirty percent on a Tuesday is an event, and it is worth an hour of your time.
So the useful discipline is not chasing the difference to zero. It is recording the difference every week, per campaign, and watching its shape. Discrepancy becomes a monitoring signal rather than an accounting problem.
What a widening gap usually means
When your tracker suddenly counts far fewer clicks than the platform, the most common causes are a broken redirect on some subset of traffic, a destination that started timing out, or a tracking parameter that stopped being passed on one ad group after an edit.
When your tracker counts far more, look at prefetching, at a link that got shared outside the campaign, and at automated traffic hitting the redirect directly rather than through the ad. That last one is worth taking seriously: a tracking URL that circulates on its own is a tracking URL somebody is testing.
Making the comparison mean something
Three habits make the numbers comparable enough to be worth comparing at all.
- Align the clock first. Set your reporting time zone and your server time zone to the same value, or convert explicitly before comparing. Most gaps that panic people are this.
- Wait for the platform number to settle. Compare against reporting that is at least three days old, so retroactive invalid-traffic filtering has already been applied.
- Compare at the campaign level, not the account level. An account-wide gap of eight percent can hide one campaign at forty and everything else at two.
The point of keeping both numbers
It would be simpler to trust one source. It would also mean that when a platform's reporting changes, or a partner disputes a volume, or a placement starts sending traffic that should never have been billed, you have nothing to check it against.
Two numbers that disagree by a stable, explainable margin are worth considerably more than one number nobody can audit. The discrepancy is not the failure. It is the measurement.