Imp.id

Identifier for this impression, unique within the bid request. Sellers usually number impressions from "1" upward, and every bid echoes the value in Bid.impid. Required in every version.

CurrentstringRequiredSince 2.0

Field facts

Path
imp.id
Object
Imp
Type
string
Requirement
Required
Added
OpenRTB 2.0
Spec section
3.2.4

How it is used

Treat it as an opaque string. It is only unique inside one request, so it cannot serve as a placement key across requests; Imp.tagid does that job.

Example

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

{
  "id": "req-1",
  "imp": [
    {
      "id": "1"
    }
  ]
}

Common mistakes

  • Sending the id as a number, such as 1 instead of "1", is a type mismatch for a string field.
  • Repeating the same id on two impressions in one request makes every bid on them ambiguous.
  • Bidders that answer with their own internal placement id instead of echoing this value produce bids that match no impression. When the validator checks a request and response together it reports openrtb.bid.impid_unknown.

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.1stringYesNo
2.2string, default - impressionYesNo
2.3 to 2.4stringYesNo
2.5 to 2.6-202606stringYesNo

Related fields

Other Imp fields

For a walkthrough of the whole object, read Bid request anatomy.