Skip to content

Deduplication

How Convultra stops the same conversion being counted or forwarded twice, and how the four deduplication windows work.

article |4 min |Updated Sep 2026
On this page · 6 sections

Convultra prevents duplicate conversions from being counted or forwarded to ad platforms, so your numbers and your ad platform reports stay accurate. Deduplication is automatic; providing unique identifiers makes it precise.

How it works

When a conversion arrives, Convultra checks it against several deduplication methods before accepting and forwarding it. A duplicate is silently dropped.

Deduplication methods

Four methods, each with its own time window:

MethodCatchesDefault window
Conversion IDThe same business identifier (orderId, leadId, transactionId) arriving twice. The most precise signal, so always pass one.24 hours
Click IDThe same click ID (gclid, fbclid, msclkid and so on) producing a second conversion of the same type.60 minutes
Event IDAn exact duplicate event, usually a double-fired tag. Every conversion carries a unique event ID; this is also the ID shared with any pixel you keep running, so the ad platform counts the conversion once.5 minutes
FingerprintRapid repeats from one device with no ID at all, built from device, browser, IP and event metadata.5 minutes

For best results, always pass a unique business identifier such as orderId or leadId. It gives the engine a definitive signal, and the other methods only have to catch what slips past it.

Configuration

Go to Settings → Tracking → Deduplication. Each of the four methods has its own window: Conversion ID in hours, the other three in minutes. Change a number and it is saved automatically; there is no Save button and no on/off switch, because deduplication is always on.

Longer windows stop more duplicates but can block a legitimate second purchase. If customers can genuinely order twice in a day with the same identifier (unusual, since order IDs should be unique), shorten the Conversion ID window. If a thank-you page tends to be reloaded hours later, lengthen the Event ID window.

Best practices

  • Always provide unique identifiers. orderId for purchases, leadId for leads, transactionId for custom conversions.
  • Keep the windows sensible. The defaults suit most sites. Too short lets real duplicates through; too long blocks legitimate repeat conversions.
  • Fix double firing at the source. The Event ID and Fingerprint windows are a safety net for tags that fire twice, not a substitute for fixing the tag.

Example: unique identifiers

// Purchase with orderId -- best for deduplication
Convultra.trackPurchase({
  orderId: 'order_abc123',   // unique per order
  value: 149.99,
  currency: 'USD'
})

// Lead with leadId -- best for deduplication
Convultra.trackLead({
  leadId: 'lead_xyz789',     // unique per lead
  value: 50.00,
  email: 'jane@example.com'
})

Deduplicating against your pixel

If you keep Google’s tag or the Meta Pixel installed alongside Convultra, both may report the same conversion. Convultra sends the same event ID with its server-side upload that the browser event carries, and the platform keeps one. For Meta this needs your Pixel ID entered on the Meta integration. See Meta is showing more purchases than my store for the common causes of over-counting.

Reading the windows programmatically

get_project and get_tracking_health in the API return the four deduplication windows in force, which is useful when explaining why two tools report different counts.

Still seeing duplicates? Work through Troubleshooting: duplicate conversions.

Next in Data and accuracy Click ID persistence →