This entry covers the programmatic advertising meaning. In procurement, a request for bid is a document that invites suppliers to quote for a project.
What a bid request contains
Only two parts are required: an auction ID and at least one impression object. Everything else is optional or recommended, so what a bidder sees depends on the seller. OpenRTB 2.6 deprecated the user's year of birth and gender fields, so buyers should treat them as legacy. The main fields, as defined in OpenRTB 2.6:
| Field | What it carries | Why it matters in retail media |
|---|---|---|
id |
The exchange's unique ID for the auction | Links bids and notices to one auction |
imp |
Each impression for sale: format, placement ID, bidfloor and any pmp deals |
Defines the placement and its minimum price |
site or app |
Where the ad will appear | Separates a retailer's own properties from offsite inventory |
device |
Details of the shopper's device | Informs targeting |
user |
Exchange user ID, buyer user ID, data segments and extended IDs |
Carries audience segments and supports frequency capping |
at |
Auction type: 1 for first price, 2 for second price plus | Sets the pricing rule |
tmax |
Milliseconds allowed for bids | Sets the response deadline |
bcat, badv |
Blocked categories and advertiser domains | Keeps out unwanted categories and competitors |
source.schain |
The entities in the payment path, with a flag for whether the chain is complete | Shows the supply path |
regs |
COPPA, GDPR, US privacy and GPP signals | Flags privacy obligations |
The bidfloor value is the seller's minimum, covered under floor price, and the at value names the rule explained under first-price auction.
How retailer audience data rides in a bid request
Inside a bid request, retailer audience data can travel in two ways.
Deals. A seller can list private marketplace deals inside each impression. Every deal carries its own ID and can set its own floor, an auction type override, a list of allowed buyer seats and a flag for guaranteed deals. An auction type of 3 means the floor is the agreed deal price. IAB Tech Lab's implementation notes say a deal ID should be treated as a targeting token and used whenever the winner may be chosen on more than price alone.
Kroger's Private Marketplace, announced in 2021, was launched to let brands apply Kroger's first-party audiences in their DSP of choice, and the marketplace attempts to protect consumer privacy through a deal ID. The deal ID acts as a targeting token that the buyer's DSP recognizes.
Segments. Audience data can also ride in the user object as data segments from a named provider. The segtax extension labels which taxonomy the segment IDs come from: 4 for the IAB Tech Lab Audience Taxonomy 1.1, and 500 and above for vendor-specific taxonomies. The exchange must publish its segment names and values to bidders in advance.
Bid requests for sponsored product ads
In January 2025 IAB Tech Lab finalized an OpenRTB extension for onsite product listing ads, the paid slots that look like regular product listings and carry a label such as "sponsored". The retailer supplies and renders the creative, and the buyer needs only to provide a product ID.
The extension adds a prodfeed object to the bid request's extension field (bidrequest.ext.prodfeed). Its presence signals that the bidder must understand the retailer's product feed, and it carries information about the feed itself plus allowed and blocked products and categories. A companion change to the Native Ads API adds data type 13, Product ID, to signal that the ad renders from the feed. The release leaves the structure of the feed itself unspecified. The real-time bidding (RTB) entry covers the market launch that followed.
Why it matters for brands and sellers
A DSP prices each impression from what the bid request tells it, plus any data it can match to the request's user IDs. When a retailer's audience arrives as a deal ID, the deal decides which buyers may bid and at what floor. Before you plan offsite audiences, check which deals and segment taxonomies a network passes, starting from the retail media networks hub or the profile of Kroger's retail media network. The segtax value decides how a segment ID is read, so confirm it before comparing audiences across networks.
Read the auction type and floor as well. Together they set the pricing rule and the minimum price before your own bid logic runs. The regs object tells a bidder which privacy rules apply to the impression, and the supply chain and blocked-advertiser fields support supply-path checks and competitive separation.
Related terms
- Real-time bidding (RTB): the auction a bid request starts.
- Bid response: the bidder's reply to the request.
- Floor price: the minimum set in the
bidfloorfield. - Private marketplace (PMP): where deal IDs come from.
- First-party data: what retailer audience segments are built from.
- Ad exchange: the platform that usually sends the request.
Frequently asked questions
What is a bid request?
A bid request is the message an ad exchange or supply-side platform sends to potential buyers when an ad impression is for sale. Under OpenRTB it must include an auction ID and at least one impression, plus recommended details about the site or app, device and user, so bidders can decide whether and how much to bid.
What information is in a bid request?
A bid request describes the impression for sale, the site or app, the device and the user, along with any private marketplace deals, the auction type, the time limit for bids and privacy signals. OpenRTB 2.6 deprecated the year of birth and gender fields. Audience data travels in data segments and extended identifiers.
What is OpenRTB?
OpenRTB is the IAB Tech Lab protocol that standardizes how sellers and buyers of ad impressions communicate in real-time auctions. Its stated goal is a common language between buyers and sellers. It started in November 2010, became an IAB Tech Lab standard in January 2012, and version 2.6, which succeeded 2.5, is its current 2.x release.
What is the difference between a bid request and a bid response?
The bid request describes what is for sale and goes from the exchange to bidders. The bid response comes back from each bidder, and its bids are in essence an offer to buy the impression. An empty HTTP 204 response is the simplest way for a bidder to signal no bid.