Device.ip
The IPv4 address closest to the device, as a dotted-quad string. Recommended through OpenRTB 2.5; the 2.6 table drops that label, but buyers still depend on it.
Field facts
- Path
device.ip- Object
- Device
- Type
- string
- Requirement
- Optional
- Added
- OpenRTB 2.0
- Spec section
- 3.2.18
How it is used
Buyers use the IP for geo lookup, fraud screening, and household matching. On mobile, finding the device's real address means reading forwarding headers from the left and skipping carrier-internal ranges. Sellers often truncate it under privacy restrictions: the COPPA guidance in OpenRTB 2.5 recommends removing the lowest 8 bits, which turns 203.0.113.57 into 203.0.113.0. A truncated address still supports country and region lookup but not household-level targeting.
Example
Where the field sits in a payload, with everything else left out:
{
"id": "req-1",
"device": {
"ip": "203.0.113.57"
}
}Common mistakes
- Sending the address of a proxy, load balancer, or server-side ad insertion host instead of the viewer's device, which makes every viewer behind it look like one household.
- Putting an IPv6 address here. IPv6 belongs in
device.ipv6.
Version history
Added in OpenRTB 2.0, and present in the latest snapshot. The table shows how each version's spec text types the field.
| Versions | Type in the spec | Required | Deprecated |
|---|---|---|---|
| 2.0 to 2.2 | string | No | No |
| 2.3 to 2.3.1 | string | Recommended | No |
| 2.4 | string | Recommended | No |
| 2.5 | string | Recommended | No |
| 2.6-202210 to 2.6-202606 | string | No | No |