Universal ID Overview
The ID5 Universal ID is a shared, neutral identifier that publishers and ad tech platforms can use to recognise users even in environments where 3rd party cookies are not available or blocked. ID5 enables publishers to create and distribute a shared 1st party identifier to the entire ecosystem. Ad tech platforms that connect with ID5 can decrypt the Universal ID and improve their user recognition capabilities. The ID5 Universal ID is designed to respect users' privacy choices throughout the advertising value chain.
The Publisher first loads its CMP and captures the user’s consent preferences. This is essential before any IDs or ads are requested or delivered
The Publisher calls ID5 (via the ID5 API, a header bidding identity module, or server-to-server) to request the ID5 ID, which can then be placed in cache (in the user’s browser or the publisher’s server) to avoid unnecessary http requests on future page views.
Via the publisher’s header bidding wrapper, or through a direct integration, SSPs receive the ID5 ID in the ad request to their servers
SSPs pass the ID5 ID into the OpenRTB bid request that they send to their DSP partners
(Optional) Outside of the RTB process, SSPs may choose to receive keys from ID5 so they can decrypt the value they receive from publishers (only necessary if the SSP is selling audience segments against ID5 IDs). SSPs who integrate this way will also receive merge instructions from ID5 to link publisher-specific IDs together.
Publisher first loads its CMP and captures the user’s consent preferences. This is essential before any IDs or ads are requested or delivered
The Publisher calls ID5 (via the ID5 API or server-to-server) to request the ID5 ID, which can then be placed in cache (in the user’s browser or the publisher’s server) to avoid unnecessary http requests on future page views.
The data platform’s tag on the publisher’s page retrieves the ID5 ID and passes it, along with any other data signals they normally use, to their servers for processing
The data platform pushes the data to the SSP and includes the ID5 ID in addition to, or instead of, the normal user IDs they pass
Outside of the data ingestion process, SSPs receive keys from ID5 so they can properly decrypt the value they receive in bid requests. SSPs will also receive merge instructions from ID5 to link publisher-specific IDs together.
ID5 Integration Overview
Phase 1: Read & Share
Read the ID5 ID from ad requests (Prebid.js, tags, server-to-server, etc.)
Share the ID5 ID as-received in bid requests to demand partners
Phase 2: Enrich & Use
Enrich all bid requests with an ID5 ID (via server-to-server integration with ID5)
Ingest data with an ID5 ID for use with publisher audience building and selling
Support PMP creation with segments derived from ID5 IDs
ID5 Integration Details
Reading the ID5 ID
If the ID5 Universal ID is available, the
bidRequest object, which is available in the bid adapter module, will contain
userId.id5id. The bidder adapter code should listen to this object and pass it along to its server in the ad call.
An example implementation in the bid adapter might look like this:
We recommend adapters leverage the
pbjs.getUserIdsAsEids() method, though, as it contains a pre-formatted version of the eids array needed to pass on to DSPs. Additional information about retrieving the ID5 Universal ID can be found in the Prebid documentation.
From the ID5 API
If the publisher has integrated the ID5 API, the SSP can retrieve the ID5 Universal ID with a single line of code. This can be used by the SSP in other header bidding integrations or where the SSP has tags directly on page.
For more details about the ID5 API or how to retrieve the Universal ID, take a look at our documentation on Github.
Sending the ID5 ID to DSPs
In OpenRTB Bid Requests
SSPs may pass the ID5 ID within the OpenRTB bid request to DSPs. While OpenRTB still hasn’t standardized the location for the ID5 ID (or other identity provider IDs), the
user.ext.eids array is recommended (but should be agreed upon with your DSP partners):
ID5 Partner Creation
Before getting started with ingesting and using the Universal ID (Integration Phase 3), we need to make sure you have an ID5 Partner account. If you are not already integrated with ID5, reach out to firstname.lastname@example.org and we’ll get you set up right away.
ID5 encrypts the ID that we return in order to enforce the privacy preferences of the consumer and the publisher. To learn more about how to decrypt the ID, please visit Decrypting the Universal ID (login required).
Privacy & Regulations
ID5 has built a privacy-by-design shared ID service for publishers and ad tech vendors. Our service leverages the IAB’s Transparency and Consent Framework (TCF) and US Privacy Framework to capture the user’s privacy preferences.
As a shared ID provider, ID5 acts as a Controller of the Universal ID, and thus, we must receive a valid legal basis to process requests. When we receive a request for the ID5 ID, we check that we have a legal basis to store our user ID in a cookie before proceeding; if we don’t have one, we do not read our cookie or write to it as part of the HTTP response.
When ID5 returns an ID to the page, the value is encrypted in such a way that only platforms that have authorization to process data (based on the consumer’s and publisher’s privacy preferences) are able to decrypt the string back to a stable ID. By doing so, ID5 enforces privacy preferences and regulations, ensuring that no downstream party can understand the ID without the proper legal basis to do so. When the ID is non-decryptable, the request is truly anonymized, preventing any personal data from being retrieved or processed.