Skip to content
adscapi

Event ID & Dedup Key Generator

Generate a stable event_id to send from both the browser pixel and the server Conversions API, so every platform deduplicates the two into one conversion.

Random
A fresh UUID for each conversion. Generate once and pass the same value to pixel and CAPI.
Deterministic
Derive a stable id from a natural key (order id, invoice number). Wins over random when set.
event_id
crypto.randomUUID() — regenerate anytime.
Send the SAME id from both sides
// browser pixel
fbq('track', 'Purchase', {}, { eventID: '…' });
// server (adscapi)
await adscapi.track('purchase', { value: 49, currency: 'USD' }, { eventId: '…' });

Platforms merge the browser pixel and server CAPI events that share this event_id into one conversion. Fire both with the same id so you get better match quality without double-counting.

Frequently Asked Questions

Related Tools

Discover more free tools to fix your tracking

Event Payload Playground

Pick a canonical conversion event, fill the fields, and see the exact JSON payload adscapi builds — before you write a line of code.

Try it now

PII Hash Previewer

Type a raw email or phone number and see the normalized value plus its SHA-256 hash — the exact rules adscapi applies per platform. Nothing leaves the browser.

Try it now

Platform Coverage Explorer

Search all 26 ad platforms adscapi dispatches to — support level, required secrets, and setup docs, always in sync with the library registry.

Try it now

Ready to fire one event to every ad platform?

adscapi is free and open source. Set your platform tokens, call track() once, and every configured Conversions API receives the event — hashed the way each platform expects.