Skip to content
TROUBLESHOOTING

Duplicate transaction_id: one purchase counted multiple times

The same order shows up in measurement more than once because the purchase event fires repeatedly with the same transaction_id. Why it happens and how to handle it.

5 min Read Intermediate Updated 7.6.2026

One order shows up twice or more in your data. Unlike doubling between the pixel and server-side, this time it's that the purchase event fires repeatedly with the same transaction_id — typically because of thank-you page behavior.

Why it happens

  • Refreshing the thank-you page. The customer reloads the order confirmation page and the purchase event fires again.
  • The back button. Returning to the thank-you page fires the event again.
  • Multiple tags. The same event is deployed more than once.

The common thread is that the same transaction_id is sent multiple times. Yet transaction_id is exactly the key by which the purchase should be counted once.

How to handle it

  • 1. Fire the purchase event only once per order — not on every load of the thank-you page. A flag in storage helps (e.g. that this order was already sent).
  • 2. Ensure a unique, stable transaction_id from the store's order ID.
  • 3. Use transaction_id to deduplicate across the pixel and server-side — see deduplication.

How to verify the fix

After fixing it, refresh the thank-you page and confirm in preview / DebugView that the purchase doesn't fire a second time. Compare the conversion count with the order count in your store.

Did this article help you?
✓ Thank you for the feedback