Different event IDs
The Pixel and server create unrelated identifiers for the same conversion.
Use the Meta Pixel and Conversions API together without reporting the same lead or purchase twice.
Browser and server events are separate requests. They become one conversion only when the identifying details match.
The Pixel and server create unrelated identifiers for the same conversion.
A browser Lead and a server CompleteRegistration do not describe the same event.
The form’s event ID never reaches the webhook or server function.
Multiple listeners or repeated renders send duplicate Pixel events before CAPI is involved.
A failed request is retried with a fresh event ID instead of reusing the original.
Native CRM tracking, GTM, plugins, and custom code overlap without a shared plan.
Simple CAPI keeps the implementation focused: capture the useful data, connect it to the conversion, send it through a protected endpoint, and validate the result.
Create it at the conversion source before either browser or server delivery begins.
Use the eventID option with the exact event name.
Include the same value in the form, webhook, or backend payload.
A retry should represent the same conversion, not invent a new one.
Confirm browser and server events appear as connected in Events Manager.
const eventId = crypto.randomUUID();
fbq("track", "Lead", {}, {
eventID: eventId
});
await sendToSimpleCAPI({
event_name: "Lead",
event_id: eventId
});Use accurate values, preserve ownership, and validate the event before relying on campaign reporting.
Resolve the implementation details before the campaign starts spending money.
It is the process Meta uses to recognize that a browser Pixel event and a server CAPI event represent the same conversion.
Yes. Use the same event name and the same event ID for the same conversion.
Generate it as close as possible to the conversion action, then pass that exact value to both delivery paths.
No. Retry the same conversion with the original ID. A new ID can make the retry look like another conversion.
Yes, but you lose browser-side signals that may be useful. Deduplication is only needed when both paths send the same event.
Inspect Events Manager Diagnostics, compare event source breakdowns, and review whether several scripts or integrations fire the same event.
Create a client-specific Lead or Schedule endpoint and validate the exact event Meta receives.