OVOscar Villegas
2026-10-11 · Oscar Villegas

Meta pixel counting purchases twice: causes and how to fix duplicates

Meta counts a purchase twice when the same sale reaches it from two places without a shared event_id, for example the pixel and the Conversions API, or two apps or plugins that both send Purchase. It also happens when customers return to the thank-you page from an external payment page and the pixel fires again. The fix is one source per event and the same event_id on the browser and the server event.

The usual causes

  • Pixel and Conversions API both send Purchase, but without the same event_id, so Meta cannot tell they are the same sale.
  • Two tools send the event: a platform app plus a plugin, or an app plus Google Tag Manager.
  • The thank-you page loads twice: after an external payment, a refresh or a return from the payment provider.
  • The Purchase event is set on a page that also loads for other actions.

How to check it

  • Compare one week of real orders against the purchases in Events Manager.
  • In Events Manager, open the Purchase event and look at how many events arrive from the browser and from the server, and the deduplication status.
  • Use the Test Events tool, make one test purchase and count how many Purchase events arrive.

How to fix it

  1. Leave a single tool sending each event to Meta.
  2. Send the same event_id, usually the order ID, with the browser event and the server event.
  3. Fire Purchase only once per order, for example by checking the order ID before sending.

Frequently asked questions

Will Shopify, Meta and Google ever match exactly?

No. Each platform counts in its own way. A small, stable gap is normal; a gap above about 20% usually means something is broken.

Does deduplication need the Conversions API?

Deduplication matters when you send events from both the browser and the server. With the pixel only, duplicates come from double firing on the page.

Need it fixed?

Meta Conversions API · Fixed price: 49 USD. You get the price in writing before any work starts.

More guides

Something broken or worth automating?

Tell me what is happening. You get an answer the same day with what I see and a proposal.

Please enter your name.
So I can reply. Example: name@company.com or +1 555 000 0000Leave an email or WhatsApp so I can reply.
What is happening now and what result you expect. Links or screenshots can come later.Tell me in at least one sentence what you need.