Vendor IDs
Signal collects and provisions vendor-compatible identifiers server-side so server-to-server event delivery maintains the same user-matching quality as client-side vendor pixels. This is what makes it possible to replace vendor JavaScript tags without losing attribution accuracy.
What customers configure
Per source (in the management UI):
- Which vendor identity syncs are enabled — on Pipelines → your pipeline → Identity → ID Syncs. Only the relevant identifier modules are included in the per-source Datafly.js build, keeping the script small.
- Which click IDs to capture from inbound URL query parameters.
- Server-proxied enrichment providers, when an authenticated identity provider is part of the pipeline.
Generation is per-pipeline, sync-gated
Signal only generates a vendor’s identifier (Meta fbp, GA4 client_id, TikTok ttp, Pinterest epik, Snapchat browser ID, …) on pipelines where that vendor’s Identity Sync is enabled. Referencing vendor_ids.* in a destination’s mapping is not enough on its own — the sync is the switch.
Two consequences worth knowing:
- Server pipelines generate nothing. A pipeline with no identity syncs (POS, kiosk, backend sources) never creates fresh vendor IDs. When its events resolve to a known person, the person’s existing vendor IDs — captured on their web sessions — are attached instead, so conversions match the identifiers the vendor has already seen. See Server & In-Store Sources.
- If a destination stops receiving a generated ID, check that the vendor’s Identity Sync is enabled on that pipeline. Earlier behaviour generated IDs whenever a mapping referenced them; pipelines that relied on that should enable the vendor’s sync explicitly.
Click IDs captured from URLs
Datafly.js automatically captures advertising click IDs from URL query parameters on first visit, so paid-traffic conversions can be matched back to the original ad click:
| Parameter | Vendor |
|---|---|
gclid | Google Ads |
fbclid | Meta |
ttclid | TikTok |
epik | |
ScCid | Snapchat |
li_fat_id | |
msclkid | Microsoft Ads |
tduid | The Trade Desk |
Click IDs are attached to the visitor’s identity and replayed with conversion events as required by each vendor’s API.
Vendor IDs in the event payload
On the first event for a visitor, vendor identifiers appear under context.vendor_ids:
{
"type": "page",
"context": {
"vendor_ids": {
"ga_client_id": "...",
"fbp": "...",
"gclid": "...",
"fbclid": "..."
}
}
}After the first event, vendor IDs are retained server-side and attached automatically during delivery; the browser does not need to resend them on every event.
The precise vendor coverage, ID provisioning behaviour, and enrichment provider integrations are covered in the implementation reference shared with your account team during onboarding.