Analytics and Tracking

Deduplication

Also called event deduplication, dedupe

The matching step that collapses two reports of one action into a single counted conversion.

Quick facts: Deduplication

Category
Analytics and Tracking
Also called
event deduplication, dedupe
Level
Intermediate
Affects
Conversion counts, cost per acquisition, budget decisions
Where to see it
Meta Events Manager, server-side Google Tag Manager, your own order records
In this article4
  1. How deduplication works
  2. Why deduplication matters
  3. Where deduplication goes wrong
  4. How to act on it

How deduplication works

Modern measurement deliberately reports the same action twice. The browser fires a pixel when the purchase page loads, and your server sends the same purchase through an API. That redundancy is the point — each source catches events the other loses — but it leaves the platform holding two messages about one sale.

Deduplication is the matching step that collapses them. The platform compares the event name and the identifier carried on each message, and where both agree it keeps one and discards the other. Some platforms will also fall back to other signals, but a shared identifier is the only method you can rely on, because it is the only one that is unambiguous.

Timing plays a part too. The two copies are expected to arrive within a reasonable window of each other; a server send that is queued for hours may arrive after the platform has stopped looking for a match.

Why deduplication matters

When it fails, every commercial number moves in the flattering direction. Conversions inflate, cost per acquisition falls, return on ad spend rises. Nothing looks broken — a report full of double-counted sales looks like a report of a good month, which is exactly why the fault can run for a long time before anyone questions it.

Bidding is affected as much as reporting. Automated strategies optimise towards the conversions they are told about, so if duplication is uneven across campaigns, audiences or devices, the system shifts budget towards whichever segment happens to double-count most. You then scale the wrong thing on the strength of numbers you trusted.

Where deduplication goes wrong

Most failures come down to the two copies not agreeing. The event ID is generated separately on each side, so the values never match. The event name differs — one send uses the platform’s standard name, the other a custom variant. Or only one copy carries an identifier at all, which is enough to break the match.

There is a second family of duplicates that has nothing to do with server sends: the same tag firing twice on the same page. This happens when a tag is hard-coded into the theme and also added through a tag manager, or when a confirmation page can be reloaded or reached again from the browser’s back button.

The instinctive fix — remove one source — is usually the wrong one. Deleting the server send restores the count but gives back the completeness you added it for.

How to act on it

Start by finding out whether you have a problem, because the symptom is subtle. Compare the platform’s conversion count against the orders or enquiries in your own system for the same period. Your own records are the truth; a platform reporting materially more actions than you actually received is duplicating.

Then check the mechanics: one identifier generated per action and shared by both sends, identical event names, and both copies dispatched close together. Meta’s Events Manager and a server-side tag container both report on matching, so use their output rather than guessing. Re-check after any website rebuild or theme change, since a lost identifier or a second hard-coded tag is easy to introduce and invisible from the front end — this is routine work in an analytics and tracking setup and worth scheduling rather than waiting for a report to look odd.

Do and do not

Do

  • Match on a shared identifier and an identical event name
  • Compare platform counts against your own order records
  • Re-check after every website or theme change

Do not

  • Remove a source to make the numbers look right
  • Hard-code a tag that the tag manager also fires
  • Assume matching happens without an identifier

Questions people ask about this

How can I tell if my conversions are being double counted?

Compare the platform's conversion count with your own records — orders in your ecommerce admin, or enquiries in your inbox and CRM — over the same date range. Some difference is normal because of attribution and modelling, but a platform reporting substantially more actions than you actually received points to duplication rather than clever attribution.

Does deduplication happen automatically?

Only if you give the platform something to match on. The mechanism is built in, but it relies on both copies of the event carrying the same identifier and the same event name. Send them without a shared identifier and the platform has no way to recognise them as one action, so it records both.

Should I just remove the pixel to stop duplicate conversions?

No, that trades one problem for another. The browser pixel and the server send each capture events the other misses, so removing either reduces how much you actually see. Fix the match instead: one identifier created per action, shared by both sends, with identical event names on each.

Related terms

Found this useful?

Share it, or ask an AI to summarise it

Back to the glossary

Knowing the term is the easy part

Applying it to your own site and budget is the work. Book a call and I will tell you what actually applies to you.