Prebid integration🔗
51Degrees adds three kinds of data to OpenRTB bid requests: Device Detection properties, the 51Did probabilistic device identifier, and IP Intelligence location data. Buyers can use this data to target and value impressions, and to recognize the same device across requests without cookies.
Try it. To experiment with a simple Prebid OpenRTB transaction, use the Prebid.js developer tool. It runs a Prebid.js auction with the 51Degrees RTD module, for your own browser or a sample device, and shows the OpenRTB bid request before and after 51Degrees enriches it.
What the integration provides🔗
| Enrichment stream | Prebid.js RTD Module (client-side) | Prebid Server (server-side) |
| Device Detection - make, model, OS, screen, device ID | ✅ | ✅ |
| 51Did - probabilistic device identifier | ✅ | - |
| IP Intelligence - IP address and geo | ✅ | - |
The client-side RTD module delivers all three streams. The server-side Prebid Server modules currently deliver device detection only.
Implementation options🔗
You can enrich bid requests in the browser or on your Prebid Server.
Client-side Prebid.js RTD module🔗
Use this when you want the full enrichment set (device, 51Did, IP Intelligence) and maximum device-detection accuracy. The module runs in the user's browser, can read JavaScript APIs for precise device identification (best for distinguishing Apple models), and calls cloud.51degrees.com to fetch the data.
Setup: Prebid.js RTD Module Documentation
Resource Key properties. Create the key at configure.51degrees.com. To populate every field the RTD module writes, include:
- Device Detection (
device.*):DeviceId,DeviceType,HardwareVendor,HardwareName,HardwareNamePrefix,HardwareNameVersion,HardwareModel,PlatformName,PlatformVersion,ScreenPixelsHeight,ScreenPixelsWidth,ScreenPixelsPhysicalHeight,ScreenPixelsPhysicalWidth,ScreenInchesHeight,ScreenInchesWidth,PixelRatio,ThirdPartyCookiesEnabled. - IP Intelligence (
device.ip,device.geo.*):Latitude,Longitude,CountryCode3,Iso31662Lvl4,ZipCode,TimeZoneOffset,AccuracyRadiusMin,LocationConfidence. - 51Did (
user.eids):IdProbLic,IdProbGlobal. Issuing the 51Did forstandardorpersonalizedusage also needs a License Key that carries the 51Did product (see the 51Did section below).
Server-side Prebid Server (Java and Go)🔗
Use this when you need faster response times or want to centralize detection logic. Prebid Server currently adds device detection properties only. Both the Java and Go implementations share a single Prebid.org module documentation page: Prebid Server 51Degrees Module Documentation
Enrichment streams🔗
Device properties🔗
The modules detect the device from HTTP headers (and, client-side, JavaScript signals) and map the result onto the OpenRTB device object: make, model, os, osv, hwv, h, w, pxratio, ppi, and devicetype. A 51Degrees device ID is attached in an ext field that links to 250+ further properties in the property dictionary.
The device-ID field name currently differs by integration:
| Integration | Device-ID field | Extras |
| Prebid.js RTD Module | device.ext.fod.deviceId | device.ext.fod.tpc (whether third-party cookies are enabled in this browser session, 1 or 0) |
| Prebid Server (Java and Go) | device.ext.fiftyonedegrees_deviceId | - |
The RTD module additionally reports whether third-party cookies are enabled in the current browser session. The ThirdPartyCookiesEnabled property is mapped to device.ext.fod.tpc as 1 (third-party cookies are enabled in this browser session) or 0 (disabled), and is omitted when this is unknown. See Third-party cookie detection for how the signal is detected.
For the full field-by-field mapping between OpenRTB and 51Degrees properties, see OpenRTB mappings.
51Did🔗
The 51Did is a signed, probabilistic 51Degrees device identifier (a base64 OWID envelope). It lets a buyer reconcile the same device across requests independently of cookies or IDFA, because it is derived from the device, IP, and declared usage purpose rather than from stored state. See 51Did (51Degrees Identifier) for the identifier-versus-value distinction and the licensing model.
The RTD module surfaces the 51Did in the OpenRTB 2.6 user.eids array as a single source entry:
mm: 5marks the match method as probabilistic.- The two
uidsare the license-tier identifier (idproblic) and the global-tier identifier (idprobglobal), in that order. ext.tdlnames the Model Terms for Marketing on every entry, by the address of version 2, the version in force. When thetdlUrlmodule parameter is set, its address follows the Model Terms in the list.
The 51Did is delivered by the RTD module only. Issuing it for standard or personalized usage purposes needs a License Key that carries the 51Did product, and the non-marketing purpose is available in the free tier. See 51Did (51Degrees Identifier) for licensing and PMP (Preference Management Platform) for capturing the user's marketing preference that feeds id.usage.
IP Intelligence🔗
From the request IP the RTD module adds the IP address and, when confident, an approximate location to the device object:
device.ipanddevice.ipv6are always set when available.device.geo.*(lat,lon,countryas ISO-3166-1 alpha-3,regionas ISO-3166-2,zip,utcoffset,accuracy) is set only when location confidence is high or medium.device.geo.typeis2(IP-derived) anddevice.geo.ipserviceis511(high confidence) or512(medium).
The RTD module adds IP and location data to the bid object. It does not add connection type, carrier/ISP, ASN, or MCC-MNC. Contact us if you need those fields. See OpenRTB mappings. See IP Intelligence overview for the underlying IP data.
Enriched bid request examples🔗
Client-side (RTD module) - full enrichment🔗
Server-side (Prebid Server) - device detection only🔗
Use cases🔗
📰 Publishers can:
- Create device-specific ad placements and set floor prices by device capability.
- Analyze traffic by device type and approximate location.
🎯 Advertisers can:
- Target specific device models and serve the right creative format (video vs. static).
- Target specific geographic areas.
- Reconcile a device across requests with the 51Did, without cookies or IDFA.
⚙️ Ad Tech Platforms can:
- Build device- and geo-aware bidding algorithms.
- Use the 51Did to build cookieless audience segments and improve reporting.
💬 Support🔗
- Technical questions: support@51degrees.com
- Integration assistance available for custom implementations.
- Performance optimization guidance for high-volume scenarios.
