Device.geo

Where the device is, as a Geo object, which buyers read as the user's current location. Recommended since 2.3; versions 2.0 to 2.2 recommended it when no IP address was sent.

CurrentobjectRecommendedSince 2.0

Field facts

Path
device.geo
Object
Device
Type
object
Requirement
Recommended
Added
OpenRTB 2.0
Spec section
3.2.18

How it is used

Most exchanges fill it from an IP lookup with Geo.type set to 2, and add GPS coordinates with Geo.type 1 only when the app has location permission. Precision is a privacy choice as well as a targeting one: coordinates can point to a home or workplace, so sellers often round or drop lat and lon when consent is missing or regs.coppa is 1, keeping country, region, or postal code. Compare user.geo, which describes the user's home base rather than where the device is now.

Example

Where the field sits in a payload, with everything else left out:

{
  "id": "req-1",
  "device": {
    "geo": {
      "country": "USA",
      "region": "CA",
      "zip": "94105",
      "type": 2,
      "ipservice": 3
    }
  }
}

Common mistakes

  • Putting the device's current location only in user.geo. Buyers looking for current location read device.geo.
  • Sending GPS-precision coordinates when the request's consent signals do not support precise location.

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.

VersionsType in the specRequiredDeprecated
2.0 to 2.2objectNoNo
2.3 to 2.3.1objectRecommendedNo
2.4objectRecommendedNo
2.5 to 2.6-202606objectRecommendedNo

Versioned rules that name this field

Related fields

Other Device fields