A price in advertising is the money that changes hands for one defined unit of inventory: a thousand impressions, a click, an app install, a completed video view. The number means nothing without the unit attached to it, and most arguments about advertising prices are arguments about units, about where the figure was measured, and about which fees had already been deducted. A single impression can carry three or four accurate prices at once.
The reason is structural. Advertising inventory is created continuously and expires instantly, so little of it is priced in advance. In programmatic trading the price is produced in the few dozen milliseconds between a page request and an ad rendering, by an auction whose inputs are a floor set by the seller and bids from buyers who cannot see each other.
What is being priced
The dominant unit in display and video is CPM, cost per mille, the price of one thousand impressions. Mille is Latin for thousand, and the convention arrived from print, where circulation was the only quantity a publisher could count. Search sells clicks instead. Affiliate and performance channels price completed actions, under cost per acquisition or cost per lead.
Programmatic display trades almost entirely in the first of these, to the point that the specification hard-codes it. OpenRTB, the IAB Tech Lab standard carrying bid requests and responses between sellers and buyers, defines the price attribute of a bid as expressed in CPM although the transaction is for a single impression.
Newer inventory has revived the older mix. OpenAI added cost-per-click bidding to its ChatGPT Ads Manager on May 5, 2026, alongside an existing $60 CPM rate and a recommended opening click bid of $3 to $5. Two units on one surface, with no conversion between them that does not assume a click-through rate.
Price in the bid stream
The seller states a minimum first. In OpenRTB the field is bidfloor, a float defaulting to zero and described as the minimum bid for the impression expressed in CPM. Its companion, bidfloorcur, names the currency in ISO 4217 codes and defaults to United States dollars.
The auction rule travels in the same object. The at attribute carries 1 for first price and 2 for second price plus, defaulting to 2, a default now contradicted by practice across the open market. Inside a private marketplace deal, at can take a third value, 3, stating that the number in bidfloor is not a reserve but the agreed deal price. Connected television pods add mincpmpersec, a floor per second rather than per impression, because a thirty-second slot and a six-second slot are not the same product.
The buyer answers with price, a required float on the bid object, and cur, defaulting again to dollars. The specification recommends integer arithmetic for the value, since floating-point rounding on a $0.03 floor is not academic at billions of requests a day.
What the winner actually pays is reported through substitution macros. ${AUCTION_PRICE} carries the clearing price in the currency and units of the bid, after any discount. ${AUCTION_MBR} carries the market bid ratio, clearance price divided by bid price, the single figure telling a buyer how much of its bid the auction kept. ${AUCTION_MIN_TO_WIN} reports the minimum needed to tie.
The specification's own worked example is instructive. With a floor of $0.85 and bids of $1.00, $0.90 and $0.80, a first-price auction returns a clearing price of $1.00 and a minimum-to-win of $0.90. The same three bids in a second-price auction clearing one cent above the runner-up return $0.91. Nine cents on a dollar, decided by nothing the bidders did differently.
Price also leaks. Because the value can travel beyond the exchange, through the publisher and into the browser inside a tracking pixel, OpenRTB allows a macro to be encrypted with a suffix naming an agreed algorithm, written for example as ${AUCTION PRICE:B64}.
Three prices, one impression
What a buyer bids, what the auction clears at and what the publisher banks are three different numbers. The auction mechanism opens the first gap; fees open the second.
Google Ad Manager makes the distinction visible. The bid-level fields in its data transfer files define BidPrice as the offered price for a bid after revenue sharing calculations, and the seller reserve price as the floor after the revenue share. Both are net of the exchange's cut before a publisher reads them.
The size of that cut is contested. GroupM's 2018 audit put demand-side and supply-side platforms at roughly 10% each, while a 2017 study by the Association of National Advertisers with Ebiquity put total fees near 40 cents in the advertising dollar. Google's AdX operated on an average 20% revenue share that Dynamic Revenue Share could vary per impression, according to a complaint filed by Raptive, lowering the fee to win competitive auctions and recovering it elsewhere. The same feature appears in the Virginia court's findings, alongside unified pricing rules, which from 2019 barred publishers from setting higher floors for AdX than for rivals.
Origin and evolution
Impression pricing came first because impressions were all the medium could count, and Google launched AdWords on a cost-per-thousand basis in October 2000. Click pricing arrived from another direction: Jeffrey Brewer presented the pay-per-click model for GoTo.com at a TED conference in February 1998, ranked by bid alone, and Google adopted clicks with AdWords Select in February 2002 under a generalised second-price auction, weighting bids by expected clickthrough rate later that year.
Machine-readable pricing followed the protocol. OpenRTB began as a pilot between three demand-side and three sell-side platforms in November 2010, released a unified 2.0 specification in June 2011, and became an IAB Tech Lab standard with version 2.1 in January 2012. Version 2.5 added billing and loss notices, making a clearing price something a losing bidder could learn rather than infer. Version 2.6 followed in April 2022.
The rule setting the price changed between 2017 and 2019, when exchanges including AppNexus, Index Exchange, OpenX and PubMatic moved to first price and Google Ad Manager completed the transition. Under second price a buyer could name a true valuation and rely on the mechanism to discount it; under first price the winner pays its own number, which created bid shading, a buy-side model predicting the lowest winning price and bidding marginally above it.
What prices look like now
DataBeat's July 2026 report, distributed on August 4, 2026 and drawn from a network tracking over 200 bidders, put overall United States programmatic CPMs up 51.0% year over year. Beneath that headline the levels are low: app inventory at $1.70, web at $1.42, mobile devices at $1.72 and desktop at $1.77. Connected television, at $5.74, sat 12.3% below its June 2025 level despite a 20.7% monthly recovery.
Buyer type shows up in price too. The June 2026 edition found conventional demand clearing at $6.95 against $6.13 for agentic buyers, a 13.4% premium.
Limitations and disputes
Treating a price as a property of an impression rather than of a transaction is the common error. A CPM measured at the demand-side platform includes fees the publisher never sees; measured at the publisher, the same trade excludes them.
Disclosure is the sharper dispute. The Federal Trade Commission and 22 states sued Amazon on August 31, 2026 over what internal documents called a surcharge, alleging that the company ran a generalised second-price auction, computed a price, then replaced it with a higher figure from an undisclosed soft reserve capped only by the winning bid. The complaint, filed in the Western District of Washington as case 2:26-cv-03097, puts the total at about $20 billion across 1.2 million advertisers and states that advertisers were charged their full bid 79% of the time. Amazon's same-day response argued that no advertiser ever paid above its own bid and that relevance-weighted ranking saved advertisers more than $8 billion between 2021 and 2025. The two sides measure against different counterfactuals, so both sets of figures can be correct.
Automated buying added a failure mode with no precedent. IAB Tech Lab shipped AAMP 2.3 on July 30, 2026 with a pricing provenance field after finding agents could generate a plausible CPM where no market data existed. A fabricated price looks the same as a real one.
Disambiguation
A bid is what a buyer offers. A price is what the transaction settles at. Under second price the two are never equal for the winner; under first price they are equal by definition, which moved the discount from the auctioneer to the bidder.
A floor is a minimum, not a price. It becomes one whenever a single bid clears it, which is how floors came to function as the rate card of an exchange.
Cost is the advertiser's total outlay, including data, verification and agency charges no auction produced. A $2 CPM impression can cost $3.
Take rate is the share an intermediary keeps, measured against gross spend rather than margin, which is why a 20% take rate and a slim operating margin coexist.
Recent developments
A federal judge in Virginia found on September 2, 2026 that Google had illegally monopolised two advertising markets, then rewrote the auction rules rather than ordering a divestiture. Unified pricing rules are to be deprecated, publishers regain per-bidder floors, first look and last look are prohibited on open-web display, and real-time bid data from AdX must be shared with rival ad servers. Each item changes how a price forms rather than who owns the pipes.
Fees are moving in parallel. Competitors have priced agentic guaranteed products near 1% against a roughly 20% incumbent take rate, repricing the intermediary layer rather than the media.
Timeline
- February 1998: Jeffrey Brewer presents the pay-per-click model for GoTo.com at a TED conference, ranked by bid alone
- October 2000: Google launches AdWords on a cost-per-thousand-impressions basis
- February 2002: AdWords Select introduces cost-per-click pricing under a generalised second-price auction
- November 2010: OpenRTB launches as a pilot between three demand-side and three sell-side platforms
- June 2011: OpenRTB 2.0 released as a unified display, mobile and video standard
- January 2012: OpenRTB becomes an IAB Tech Lab standard with version 2.1
- 2017: Exchanges including AppNexus, Index Exchange, OpenX, Rubicon Project and PubMatic begin migrating to first-price auctions
- May 15, 2019: Google announces unified pricing rules, replacing earlier price rules on the move to first price
- April 2022: OpenRTB 2.6 adds pod-level pricing fields for connected television
- September 2025: The Federal Trade Commission opens an investigation into reserve pricing disclosure at Amazon and Google
- December 2025: Google removes unified pricing rules from Ad Manager and restores buyer-specific floors
- July 30, 2026: IAB Tech Lab releases AAMP 2.3 with a pricing provenance field
- August 4, 2026: DataBeat reports United States programmatic CPMs up 51.0% year over year
- August 31, 2026: The Federal Trade Commission and 22 states sue Amazon over about $20 billion in alleged advertising surcharges
- September 2, 2026: A Virginia court orders changes to Google's auction rules without divestiture
Related PPC Land coverage
- Explaining first price - The auction rule under which the winner pays its own bid, and the 2019 migration that installed it across programmatic display.
- Explaining second price - The rule it replaced, where the runner-up bid sets what the winner pays.
- Explaining bid shading - How buy-side models predict the lowest winning price and bid marginally above it.
- Explaining rate card - Why the exchange floor became the functional published price once most inventory cleared at auction.
- Explaining take rate - The share of gross spend intermediaries retain, and why it is not the same as margin.
- Google Ad Manager unveils deeper auction insights in data transfer - Bid price, rejection reason and seller reserve price fields, all reported after revenue share.
- US programmatic CPMs gain 51% year over year, DataBeat finds - Device, format and inventory-level CPM levels for June 2026.
- Programmatic buyers gain 13.4% CPM edge over AI agents, DataBeat finds - Measured clearing prices for conventional and agentic demand.
- AI agents buy like TV buyers: 86% fewer auctions, DataBeat finds - Auction participation, clearing prices and the fee levels attached to agentic guaranteed products.
- AAMP 2.3 blocks AI agents from inventing ad prices, IAB Tech Lab says - The pricing provenance field and the fabricated-CPM problem it addresses.
- FTC and 22 states sue Amazon over 20 billion in hidden ad surcharges - The two-stage pricing calculation at the centre of the complaint.
- Amazon charged advertisers their full bid 79% of the time, FTC says - The frequency figure and Amazon's rebuttal, including its $8 billion savings estimate.
- Judge spares Google's ad exchange and rewrites its auction rules instead - The September 2026 remedies covering unified pricing rules, per-bidder floors and first look.
- Raptive sues Google for ad tech monopolization seeking billions in damages - Allegations about Dynamic Revenue Share and per-impression fee adjustment.
- Court clears path for private damages in Google ad tech cases - Findings on unified pricing rules and differential floors between exchanges.
- OpenAI opens ChatGPT Ads Manager to all US businesses with CPC bidding - A surface selling impressions and clicks side by side, with published rates for both.
- Explaining programmatic - Where fixed, negotiated and auction pricing sit within the same automated pipes.
Summary
Who. Publishers and supply-side platforms set floors, exchanges run the auctions that produce clearing prices, demand-side platforms submit bids, and intermediaries deduct fees between the two. IAB Tech Lab defines the fields that carry the numbers, and regulators in the United States are now examining how they are disclosed.
What. Price is the money paid for one defined unit of advertising, most often a thousand impressions under CPM, a click under CPC, or an action under CPA. In programmatic trading it is carried by bidfloor on the request, price on the bid, and the ${AUCTION_PRICE} macro on settlement.
When. Impression pricing dates to AdWords in October 2000 and to print circulation before it, click pricing to 1998 and 2002, machine-readable pricing to OpenRTB from 2010, and the current first-price regime to the 2017 to 2019 migration.
Where. In the bid request and response, in the exchange that clears them, in the fee layers between, and in the reporting each party reads afterwards, where the figures rarely match.
Why. Price is the only variable in the chain that every participant sees differently, which is why disputes over advertising economics tend to become disputes over which number counted as the price.
Discussion