Most. Help

Concept

event_id and deduplication: stop double-counting conversions

Double-counted conversions wreck your pixel's optimisation. Learn how the event_id is built from sub_id, event name and UTC time, and the three layers that keep Most from sending the same conversion twice.

event_id and deduplication

If the same conversion reaches your pixel twice, Meta counts it twice — and your optimisation, reporting and audiences all drift. The fix is a stable event_id: a fingerprint that lets Meta recognise and drop duplicates.

How the event_id is built

Most builds the identity of every event like this:

event_id = {sub_id}_{event_name}_{UTC conversion time}

where the time key is YYYYMMDDTHHMMSSffffffZ — the conversion's timestamp in UTC, down to the microsecond. Because the preview, the sending worker and Meta's own dedup all use this exact same key, one conversion has one identity everywhere.

UTC, everywhere

Conversions are loaded from Keitaro in UTC and compared in UTC. Mixing time zones is the classic way to accidentally create two identities for one event — Most avoids it by staying in UTC end to end.

Three layers that prevent duplicates

  1. In the database — a conversion is unique on (click_id, status, datetime), so one Keitaro conversion is stored once.
  2. Before sending — the worker checks (pixel_id, conversion_id, event_name) and skips pairs it has already written, so re-runs can't double-send locally.
  3. At Meta — events already sent successfully (sent or partial) are excluded by their event_id before the next batch, and Meta deduplicates on event_id as a final safety net.

Failed events are the exception by design: error rows don't block a retry, so a conversion that errored once is sent again next run.

Why the time is clamped but the id isn't

Meta rejects events older than 7 days — the same error 2804003 you'd see in Events Manager — so Most clamps the outgoing event_time into a safe window. The event_id, though, is always built from the original conversion time — clamping the delivery time never changes the event's identity, so deduplication stays correct. More on the window in pixel warming.

What this means for you

You can re-run loads, do incremental syncs, and warm a pixel repeatedly without fear: the same conversion is sent once. That's automatic in Most.

Sources

Sources

Let Most handle deduplication

Most builds the event_id and enforces all three dedup layers for you — across re-runs, schedules and multiple pixels. Try a manual send first with the free Pixel Activator.

Related concepts

Guides mentioning this concept

SKAdNetwork and AdAttributionKit: iOS Traffic Reporting in 2026

A practical breakdown of SKAdNetwork and AdAttributionKit reporting: postback windows of 0-2, 3-7, and 8-35 days, random delays, crowd anonymity tiers 0-3, the 64-value conversion budget, and a checklist for reading iOS reports without comparing them to Android.

14 min

Send TikTok Events API events with Pixel Activator

Use Pixel Activator to verify TikTok Events API credentials and one well-defined conversion event before automating delivery. Confirm that the Pixel Code belongs to the campaign, protect the access token, send one mapped event, and inspect TikTok Events Manager before recurring delivery begins.

4 min

Send Snapchat Conversions API events with Pixel Activator

Verify Snapchat Conversions API credentials and a first event with Pixel Activator before connecting a recurring sender. Confirm the web Pixel ID, keep the long-lived CAPI token secret, send one meaningful event with permitted matching data, and inspect platform diagnostics before automation.

4 min

Send Reddit Conversions API events with Pixel Activator

A first-pass checklist for Reddit Conversions API setup in Pixel Activator without designing a request payload. Identify the advertiser account that owns the campaign, use an authorized credential, test one completed action, and record the platform result before enabling recurring delivery.

4 min

Send Pinterest Conversions API events with Pixel Activator

Set up a first Pinterest Conversions API test in Pixel Activator before automating conversion delivery. Confirm the ad account ID, protect the conversion token, choose one supported event, use test mode, and inspect the result in Ads Manager before a recurring sender is enabled.

4 min

Send OpenAI Ads Conversions API events with Pixel Activator

Use Pixel Activator to test OpenAI Ads Conversions API credentials and a carefully chosen conversion event before automation. Confirm the Ads Pixel ID belongs to the campaign account, keep the Conversions API key secret, validate one supported event, then check the result before recurring delivery.

4 min

Send Meta Conversions API events with Pixel Activator

Set up a first Meta Conversions API test in Pixel Activator without designing an API request yourself. Confirm the dataset, protect the access token, map one real business action to a standard event, and check the result in Events Manager before a tracker begins recurring delivery.

4 min

MMP vs Affiliate Tracker: Key Differences, Overlaps, and When You Need Both

A practical breakdown of MMPs, affiliate trackers, postbacks, CAPI delivery, and the stack media buyers need for app-install and web campaigns.

10 min

Meta CAPI Event Delays: What to Check Before You Call It Broken

Meta CAPI event delays are rarely one platform-wide wait. Trace each conversion from the business action and worker queue to Test Events, Events Manager and Ads Manager before changing a working setup.

11 min