What's the difference between user.id and user.buyeruid?
Answer
user.id is the exchange's own identifier for the user (typically from the exchange's cookie), while user.buyeruid is the buyer's identifier for that same user, as mapped by the exchange for that specific bidder. buyeruid is populated from a prior cookie sync: the exchange looks up its cookie ID in its match table and inserts the DSP's corresponding ID before sending the request. A DSP can act on buyeruid directly for targeting and frequency capping; user.id is only meaningful to the exchange unless you have built your own mapping.
Fields in this answer
| Field | Type | Since | Status in 2.6 |
|---|---|---|---|
user.id | string | 2.0 | Current |
user.buyeruid | string | 2.0 | Current |
Go deeper
More questions on privacy, identity, supply chain, and versions
- How do I pass GDPR consent in an OpenRTB bid request? Set regs.gdpr to 1 when the request is subject to GDPR and put the TCF consent string in user.consent.
- How do I pass a GPP string in OpenRTB? Put the Global Privacy Platform consent string in regs.gpp and list the applicable section IDs in regs.gpp_sid.
- GPP vs us_privacy: which should I send? Send GPP (regs.gpp plus regs.gpp_sid) where your partners support it; the US Privacy signal was deprecated by IAB Tech Lab on January 31, 2024 in favor of GPP.
- How do I signal CCPA in OpenRTB? Put the US Privacy string in regs.us_privacy, which is a first-class field in OpenRTB 2.6; on 2.5 and earlier it travels as regs.ext.us_privacy per the IAB extension.
- How do I signal COPPA in an OpenRTB request? Set regs.coppa to 1 when the request is subject to the COPPA regulations established by the US FTC, and 0 when it is not.
- What is the DSA extension in OpenRTB? The DSA transparency extension carries EU Digital Services Act ad-transparency data through OpenRTB 2.x ext blocks.
All 93 questions are listed in the OpenRTB FAQ.