Skip to content

Programmatic and trading

OpenRTB and DOOH: The Impression Multiplier

OpenRTB 2.6's DOOH support: how the dooh object and imp.qty.multiplier turn one play into many billable impressions, and how a measurement layer feeds the multiplier.

17 min readUpdated

OpenRTB and DOOH: The Impression Multiplier

OpenRTB is the common language of bid requests and responses in programmatic advertising; with version 2.6 it gained dedicated support for digital out-of-home (DOOH). This article explains OpenRTB’s DOOH support, the dooh object, and the imp.qty.multiplier field — the mechanism that turns a single play into many billable impressions — and how a measurement layer feeds that multiplier into the bid stream, in technical but accessible terms.

Where does the multiplier enter the bid stream? The four steps of the bid stream: the play slot, the bid request, the highlighted imp.qty.multiplier field and the billable impression. OPENRTB 2.6 Where does the multiplier enter the bid stream? 01 Play slot A screen becomesfree to play an ad andthe slot goes toauction. CREATED 02 Bid request The SSP builds therequest; the doohobject marks it asDOOH inventory. CARRIED 03 imp.qty.multiplier The coefficientstating how manybillable impressionsone play equals; itcan be fractional. MULTIPLIED 04 Billableimpression Plays × multiplier;billing and reportingrun on this number. The multiplier may be modeled or measured; which of the two it is, is the question a buyer should ask.

What is OpenRTB, and why does it matter in DOOH?

OpenRTB is an open protocol maintained by IAB Tech Lab. In a programmatic transaction, it standardizes which fields, in which structure, a bid request and response must contain so that the sell side (SSP) and the buy side (DSP) can understand each other. This lets different providers speak a common format, with no need to write a separate integration for every screen network. We cover the full programmatic chain in the programmatic DOOH article; here we focus on that chain’s “grammar.”

OpenRTB was originally designed for web and mobile display advertising; in those environments an ad is usually shown to one person on one device, so one impression corresponds to one person. DOOH is different: a single play on a single screen is seen by many people at once. This structural difference required a DOOH-specific adaptation of the protocol.

DOOH support in OpenRTB 2.6

OpenRTB 2.6 added DOOH to the protocol as a first-class object. Two main innovations stand out. The first is a dooh object placed in the bid request; this object signals that the transaction belongs to DOOH inventory and carries screen-related context (such as publisher and inventory information). The second is the fields that define quantity within the impression object: imp.qty and the multiplier inside it.

The critical concept here is the impression multiplier. On the web, a bid request means “one impression,” whereas in DOOH a play can correspond to more than one impression. The imp.qty.multiplier field expresses exactly this: it is a coefficient stating how many billable impressions a single play equals.

An important technical detail is that this value can be fractional. The multiplier can take not only whole numbers but also decimal values — for example, 14.2 or 0.32. This flexibility is necessary: the estimated number of people seeing a screen during a play is rarely a whole integer; measurement or modeling often produces an average such as 14.2. In a low-traffic moment, or across a partial viewing window, the multiplier may fall below 1, for example 0.32.

How does the impression multiplier work?

Consider an example. A 10-second ad plays on a screen, and over that slot it is measured or modeled that roughly 14.2 people see the screen. In the OpenRTB bid request, this play is represented as an impression opportunity, but the imp.qty.multiplier field carries the value 14.2. So a single play corresponds to 14.2 impressions for billing and reporting purposes.

Concept Web display ad DOOH
What one play equals 1 impression (1 person, 1 device) Multiple impressions (many people, 1 screen)
Field carrying the multiplier Not needed imp.qty.multiplier
Value of the multiplier 1 Can be fractional (e.g. 14.2 or 0.32)
Source of the multiplier Measurement or modeling data
Where the multiplier sits in the bid request The nesting inside a bid request: where the dooh object and imp.qty.multiplier live, with the measurement or modelling data that feeds the multiplier at the base. OPENRTB 2.6 Where the multiplier sits in the bid request 05 BidRequest · dooh object Request root; the dooh object marks inventory as DOOH 04 imp Represents one play as an impression opportunity 03 imp.qty The fields defining the quantity of that opportunity 02 qty.multiplier Billable impressions per play; the value can be fractional 01 Measurement or modelling Feeds the multiplier: model estimate or anonymous count

To understand how the multiplier relates to billing, you need to know what an impression means in DOOH. We cover in detail how an impression is defined and counted in the what is an impression article. In short: a DOOH impression rests on a person’s opportunity to see the screen, and the quantification of that opportunity enters the bid stream through the multiplier.

How does measurement feed the multiplier?

The multiplier’s value is not arbitrary; it comes from a data source. Traditionally, that source is models derived from mobile-location and panel data: the number of people who passed a given location at a given hour is estimated, and that estimate is converted into a multiplier. This approach is widespread, but it answers “who passed that point,” not “who looked at the screen.”

A computer-vision-based measurement layer can feed the multiplier directly with observed data. By measuring anonymous people counting in front of the screen, dwell time, and head-pose attention (face turned toward the screen), it produces an estimated number of people who actually had the opportunity to see the screen during that play; this number can be placed into the bid request as the multiplier. A privacy-critical distinction applies here: this method performs face detection, not face recognition. No one is identified; the output produced is only an aggregate, anonymous number.

Measurement data flowing directly into the multiplier is a significant qualitative shift in the sector. A modeled multiplier is an estimate based on past patterns; a measured multiplier rests on observation of the moment itself. This distinction is also the essence of why measurement can become a pricing basis — what the sector calls a currency: the buyer gains stronger evidence that the impression it pays for corresponds to a real opportunity to see.

Still, it is worth being honest: the quality of the data feeding the multiplier varies from method to method. While people counting, dwell, and head-pose attention measurement are technically sound, demographic breakdowns (such as age estimation) carry wider margins of error. Whether a multiplier is “modeled” or “measured,” and which methodology produced it, are the key questions a buyer should ask when evaluating it.

Summary

OpenRTB 2.6 added DOOH to the programmatic protocol via the dooh object and the imp.qty.multiplier field. This multiplier turns a single play into multiple billable impressions and can take fractional values. The data feeding the multiplier may be modeled or measured; computer-vision-based, anonymous, aggregate measurement can give the multiplier an observed basis grounded in the moment itself.

Frequently asked questions

What is OpenRTB?
OpenRTB is an open protocol maintained by IAB Tech Lab. In programmatic advertising it standardizes which fields, in which structure, bid requests and responses carry, so that different buying and selling platforms communicate in a common format.
What is the impression multiplier?
The impression multiplier is a coefficient stating how many billable impressions a single play in DOOH equals. In OpenRTB 2.6 it is carried in the `imp.qty.multiplier` field. Because more than one person sees a single screen, this multiplier converts a play into an impression count.
Can the impression multiplier be a fractional value?
Yes. The `imp.qty.multiplier` does not have to be a whole number; decimal values such as 14.2 or 0.32 are valid. This is because the estimated number of people seeing a screen during a play is rarely a whole integer.
Where does the multiplier's value come from?
The multiplier is fed by a data source. Traditionally it is modeled from mobile-location and panel data; in computer-vision-based measurement it can be produced directly from anonymous people counting and attention data in front of the screen. Whether the data is modeled or measured determines the multiplier's reliability.