Become a partner

Blog / Google Ad Manager

Google Ad Manager Google AdXpricing rulesprice floorsyieldGAM

Demystifying Google AdX Pricing Rules for Higher Yields

Google AdX pricing rules set the floors that decide which bids win your impressions, and misconfigured floors silently cost publishers yield in every single auction.

by WireAds 2024-12-09 updated 2026-05-27 10 min read
Engineering-schematic cover in Prussian ink and rust red for an article demystifying Google AdX pricing rules
On this page

A floor price in Google Ad Exchange does one specific job: it states the minimum a bidder must pay for your impression. Configured well, that floor raises the clearing price of your auctions without costing you fill. Configured badly, it either rejects bids you would have gladly accepted, or it sits idle while buyers pay less than the impression deserves. Most publishers we work with inherited their floors from an old setup, never revisited them after Google moved AdX to first-price pricing, and lose yield every day as a result.

This article explains the mechanics precisely: how first-price auctions change what a floor actually does, how Google consolidated its previously fragmented floor settings into the pricing rules framework inside Google Ad Manager, which misconfigurations cost the most money, and how to tune floors alongside a demand partner like us at WireAds.

How AdX prices an impression

Google moved AdX to a first-price auction in 2019. Under first-price rules, the highest eligible bid wins and pays exactly the amount it bid. This differs from the older second-price model, where the winner paid one increment above the runner-up bid. The switch changed floor economics fundamentally, and many publishers still reason about floors using second-price logic that no longer applies.

In a first-price auction, sophisticated bidders shade their bids below their true value, because paying your true maximum guarantees zero margin for the buyer. A bidder that values an impression at $4.00 might submit $2.50. Your floor is the one lever that pushes against this shading. A bid below the floor loses the auction outright, so buyers with real intent must clear it. In thin auctions with one or two serious bidders, many buying algorithms bid at or just above a detected floor, which means the floor effectively sets the clearing price rather than the buyer's valuation.

That mechanism creates the core tradeoff. Raise the floor and each cleared impression pays more, but more bids fall below it, and the impression falls through to lower-priority demand or goes unfilled. Lower the floor and fill improves while the clearing price drops. Yield is the product of fill rate and CPM, not one of them alone. The optimal floor sits at the point where the revenue you gain per cleared impression equals the revenue you lose from impressions that no longer clear. Past that point, every floor increase destroys value.

Floors apply per ad unit, per geography, per size, and per platform through pricing rules in Google Ad Manager. A single global floor is almost always wrong, because a US desktop display impression and a mobile web impression in a lower-CPM market clear at prices that differ by an order of magnitude. The pricing rules framework exists precisely so you can express that variation without maintaining separate line items for every combination.

From unified pricing rules to pricing rules

The documentation history matters, because it explains why publishers hold contradictory beliefs about how floors work. Before 2019, floor management lived in several disconnected places: minimum CPMs inside AdX, price floors on individual line items in GAM, and separate settings for Open Bidding. Publishers set a floor in one place, set a conflicting floor in another, and no single screen showed the effective floor for a given impression. Debugging a yield drop meant checking three different consoles.

Google fixed this in two steps. In October 2019, alongside the switch to first-price auctions, the company published its unified pricing rules introduction and rolled out the feature so publishers could manage one consistent floor across AdX and other non-guaranteed demand. The stated goal was simple: one floor per impression, applied uniformly, regardless of which path the bid traveled through the auction.

Google then folded the remaining legacy mechanisms into that framework and consolidated the documentation. What launched as unified pricing rules became the pricing rules feature set inside Google Ad Manager, and the older floor settings either retired or migrated into it. The practical consequence is easy to state: if you last touched your floors before 2019, your configuration predates the consolidation. Legacy minimum CPMs moved into pricing rules during migration, and migration does not always preserve intent. A rule you never wrote may now govern an ad unit you carefully manage, or a rule you wrote with one meaning may now apply more broadly than you intended.

Audit what actually exists in the pricing rules screen rather than trusting what you configured years ago. Export the full rule set, note the targeting of each rule, and identify overlaps before you change anything. Publishers who skip this step frequently tune a floor that a broader rule overrides, conclude that floors do not work, and leave the real misconfiguration in place.

Dynamic allocation and floor competition

Decision flow where a $2.40 open bidding token is blocked by a $3.00 floor gate while a guaranteed line item passes

Floors do not operate in an empty auction. Inside GAM, guaranteed line items, meaning sponsorships, standard reservations and roadblocks, hold impressions at a contracted CPM. Non-guaranteed demand, meaning AdX, Open Bidding and header bidding line items, competes against those reservations in real time through dynamic allocation and floor competition. When a page loads, GAM compares the highest non-guaranteed bid against the value of the reserved impression and awards the impression to whichever side pays more.

Your pricing rule floor gates only the non-guaranteed side of that comparison. If the floor sits at $3.00 and the best exchange bid arrives at $2.40, the exchange loses the impression even when the competing guaranteed line item only pays $1.20. The impression then falls back to the reserved line item at the lower price. In that scenario the floor did not protect yield, it destroyed it: you enforced a $3.00 minimum against demand that never reaches $3.00, and the impression cleared at $1.20 instead.

The correct mental model follows from this. A floor is a guardrail against low-value exchange wins, not a tool for beating guaranteed demand. Guaranteed demand loses to real bids, and real bids come from demand depth, which is a demand-side problem rather than a floor problem. Set floors below the price your exchange demand can realistically clear, so dynamic allocation can do its job and lift impressions above the reserved value on merit.

This interplay also explains why floor changes can produce counterintuitive reporting. A floor increase sometimes raises exchange CPM while total revenue falls, because the impressions the floor blocked moved to cheaper fallback demand. Always judge floor changes on total revenue per impression across all line items, not on the AdX CPM report alone.

Misconfigurations that cost money

Google's GAM pricing rules overview describes pricing rules as the centralized place to manage floors for non-guaranteed demand, and it carries an explicit warning: misconfigured rules cause delivery issues. In our work with publishers we see five patterns repeatedly, and each one has a fix.

  • Floors above clearing demand. The most common and most expensive error. If the market clears an ad unit at $1.80 and the floor sits at $2.50, the rule rejects every serious bid and the impression falls to house ads or lower-value fallback. Fix: baseline the actual clearing bids with the floor removed, then set the floor below the median, not above it.
  • Overlapping rules with unexpected precedence. Pricing rules resolve by specificity, and a broad rule you forgot about can override the narrow rule you wrote last week. Fix: export all rules, map the targeting of each one, and delete or narrow anything that overlaps before adding new rules.
  • One floor across geographies and sizes. A single floor for a mixed inventory pool underprices the segments with deep demand and starves the segments with shallow demand. Fix: segment by geography, size and device, and maintain separate floors per segment.
  • Stale floors. Demand shifts between Q4 and Q1, between summer and the school year, and whenever a major buyer changes strategy. A floor tuned in December can starve fill in February. Fix: re-baseline quarterly and after any significant change in your demand mix.
  • Floors judged on the wrong metric. Teams frequently celebrate a rising AdX CPM that masks a collapsing fill rate and falling total revenue. Fix: evaluate every floor change on total revenue per impression across all demand paths, measured over a full week to average out day-of-week effects.

None of these fixes requires new technology. They require an audit, honest baselines and a measurement window long enough to trust. The publishers who get floors right treat them as a living configuration with an owner, not as a setting someone entered once during onboarding.

How WireAds demand interacts with your floors

We are an SSP and an ad network, we work CPM-based, and we pay Net 30. Our demand stack combines Prebid, OpenRTB, Google MCM, Google AdX demand and direct deals from global and local brand agencies, all pushed into our SSP so every source bids against your inventory simultaneously. Our ad sources are premium and we filter unwanted ads strictly, which keeps brand quality high across the inventory we monetize. That demand depth is what makes floor tuning meaningful in the first place: a floor only reveals value when real bids exist to clear it.

When you connect through Google MCM, your inventory stays in your own GAM instance, and your pricing rules govern the AdX slice of demand. Our OpenRTB and direct deal demand typically reaches you through header bidding or Prebid Server, which means it competes before the GAM auction runs. The top header bid becomes a price-keyed line item, and AdX must beat it through dynamic allocation. Your pricing rule floor applies to the AdX bid, not to the header bid, so the two need tuning as a pair. A floor set far above the level where AdX demand typically clears hands impressions to header demand at whatever price it offered, even when an AdX bid above the header price existed below your floor. The fix is directional: set floors below realistic AdX clearing levels and let the competition between demand paths decide the winner.

We work globally across web, app and CTV/OTT, in every country with Google monetization, so segment-level data matters more to us than account-level averages. Use our CPM calculator to translate your impression volumes and revenue targets into target CPMs per segment, so your floors reflect arithmetic instead of instinct. Then watch the results in our revenue analytics, which breaks fill rate and CPM down by geography, size and device, exactly the granularity floor tuning requires. When a floor change moves one segment, you see it in that segment rather than guessing from a blended number.

A floor tuning workflow that holds up

A repeatable process beats intuition, and the following sequence works for the publishers we partner with.

First, audit. Export every pricing rule, note its targeting and its floor, and identify overlaps. Second, segment. Split inventory by geography, size, device and platform, and assign each segment its own measurement. Third, baseline. Remove or minimize floors for a clean seven-day window and record the clearing bid distribution per segment; you cannot tune against a number you have never observed. Fourth, set initial floors modestly below the median clearing bid per segment, so the floor blocks only the bottom of the bid distribution. Fifth, iterate. Raise floors in steps of five to ten percent, one segment at a time, and measure over full weekly cycles to avoid weekday-versus-weekend noise. Sixth, re-baseline quarterly, because the bid distribution you tuned against will drift.

One caveat deserves emphasis. Floors tuned against thin demand produce noise, because one or two bidders cannot reveal a market price. Floors tuned against deep, competing demand produce signal. If your current demand stack is thin, connect the WireAds SSP first and let our combined Prebid, OpenRTB, AdX and direct deal demand bid on your inventory, then tune floors against the resulting bid distribution. The order of operations matters: demand first, floors second.

Pricing rules reward precision and punish neglect. The publishers who earn the most from AdX set floors per segment, keep them below realistic clearing levels, measure total revenue rather than exchange CPM alone, and revisit the whole configuration on a schedule. The mechanism is not mysterious, it is arithmetic, and the audit described above typically pays for itself in the first measurement window.

Related

Keep reading.

Bottle-green etched cover on parchment comparing Google AdX and AdSense for publishers considering an upgrade
Google Ad Manager

Google AdX vs. AdSense: When is it Time to Upgrade?

AdSense shares 68% of display revenue and runs a single demand source, while AdX demand cl...

2026-06-10 · 9 min
Engraved slate-blue and sand duotone cover for a step-by-step guide to first-price auctions in Google AdX
Google Ad Manager

A Step-by-Step Guide to First-Price Auctions in Google AdX

Google AdX has run a unified first-price auction since 2019, meaning the winning buyer pay...

2026-05-07 · 8 min
Isometric instrument-panel cover in moss green and amber for seven advanced Google Ad Manager strategies
Google Ad Manager

7 Advanced Google Ad Manager (GAM) Strategies to Boost Ad Revenue

Seven field-tested Google Ad Manager configurations, from unified pricing rules to first-p...

2025-03-19 · 11 min

The WireAds market brief

Monthly CPM trends and monetization tactics for publishers. No spam, one email a month.