Dynamic Bid Floor Pricing: The AI System Publishers Don't Realize They Have

Publisher networks across the open web are watching organic traffic shrink. Yet Ezoic publishers still saw a 27% EPMV increase year-over-year in Q1 2026. That’s the epitome of what used to be a traffic story turning into a modern day pricing story.
Publishers can’t bring more sessions into existence — AI Overviews, zero-click search, and shifting referral patterns are seeing to that. What they can control is how precisely each remaining session is priced. And the lever doing most of that work, quietly on every impression, is the bid floor.
Most publishers set a floor once and forget it, or let an ad partner set one and assume it’s fine. It’s not. Every impression served below what a bidder would have paid is money left on the table. Every floor set too high pushes legitimate demand out and lifts your unfilled rate. No static number gets this right.
Here’s what sophisticated dynamic flooring actually looks like — and why it’s one of the levers separating publishers who grew revenue this quarter from those who didn’t.
What a bid floor actually is
A floor is the minimum CPM a publisher will accept for an impression. Set it too low, and the auction clears for less than demand was willing to pay. Set it too high, and bidders walk away — leaving you with unfilled inventory and lost revenue.
For most of programmatic’s history, the answer has been a single number, set manually, rarely revisited. The reason most floors underperform isn’t that publishers set the wrong number. It’s that they set a number at all. As Mile CEO and IAB Tech Council member Vijay Kumar told MarTech Edge earlier this year, most publishers’ floor strategy is “still largely manual and backward-looking.”
The variables that actually move floor value
A single floor is structurally inadequate for the same reason a single price tag would be inadequate for an airline seat. The right number depends on too many things at once.
- User: A returning visitor with purchase intent is worth more to an advertiser than a first-time crawler. The floor should reflect that.
- Device: Mobile and desktop command different CPMs from different advertiser categories. A floor that works on desktop may be too high (or too low) on mobile.
- Geography: A US-based session in a high-income zip code is a fundamentally different inventory unit than an international session, even on the same content.
- Ad unit: An above-the-fold leaderboard and a below-fold rectangle are not the same product. Charging the same floor for both is a blunt instrument.
- Time of day: Advertiser budgets deplete through the day. Q4 afternoons look nothing like Q1 mornings. A floor set at 9 a.m. may be wrong by 2 p.m.
- Individual bidder behavior: This is the one most publishers have never heard of — and it’s the most consequential variable in any header bidding floor strategy.
Buy-side bidders increasingly use bid shading: algorithms that bid just enough to win, not what they’d actually pay. Some DSPs hug the floor, so whatever you set, they bid ever so fractionally above it. Raise the floor by $0.10, they pay $0.10 more. Others ignore floors entirely and bid on their own valuation signals, paying what the impression is worth to them regardless of what you ask for.
That means the optimal floor for each bidder is different. Raising the floor on a floor-hugger means more revenue on every impression they win. Raising the floor on a value-bidder means nothing — until you raise it past their valuation, at which point they stop bidding altogether and you’ve created risk for no upside.
Most publishers run the same floor against every bidder. That’s an ineffective strategy, if you can call it one at all. It’s playing the game of averages — and in this case, the averages cost serious money.
Why AI is the only way to solve this
Multiply those six dimensions together (e.g. user × device × geography × ad unit × time × bidder) and you get a combinatorial problem no human and no static rules engine can solve at scale. There are simply too many auction contexts, and each one is changing.
The clearest way to frame what dynamic floors actually do: dynamic floors are about best fit. Not “always higher,” not “always lower,” but “correct for this auction segment at this point in time.” Or, as Kumar put it in the MarTech Edge interview, floors need to be treated as “dynamic, responsive signals — not fixed thresholds — that react to live demand, bidder behavior, and competition in real time.”
That’s the right mental model. AI is a mechanism for matching the floor to the auction shape — segment by segment, bidder by bidder, hour by hour.
Ezoic’s system doesn’t just set floors; it learns from auction outcomes. When a bidder wins at a price significantly above the floor, that’s a signal the floor was too low. When a floor is raised and fill rate drops, that’s a signal it went too far. The system adjusts continuously, in real time.
The depth of Ezoic’s system is what makes real-time floor-setting possible in the first place. Programmatic auctions resolve in milliseconds. In that window, Ezoic’s floor ops engine has to weigh years of accumulated auction outcomes, identity signals, and bidder-level behavioral patterns against the impression in front of it — and return a floor calibrated to that specific auction context before the auction closes. The sophistication is what makes the speed possible. Most platforms can do one or the other. Doing both, at that depth, in that window, is the actual differentiator.
What this looks like in practice
Picture two bidders competing for the same impression on the same page. Bidder A is a floor-hugger. Whatever the floor is, Bidder A bids fractionally above it. Bidder B ignores floors entirely and bids based on its own user-level signals, sometimes well above the floor and sometimes not at all.
A static floor treats both the same way. A dynamic system learns the difference. It raises the effective floor for Bidder A, capturing more revenue on every impression Bidder A wins. It leaves Bidder B’s effective floor alone, because raising it would only risk pushing legitimate demand out without changing the bid Bidder B was going to make anyway.
Same impression. Two different floors. Two different outcomes. The publisher never touches a setting.
The revenue impact
In Q1 2026, Ezoic publishers grew revenue 8.0% year-over-year, and EPMV grew 27.1% over the same period across the network. Those numbers are consistent with the goals of yield optimization: more value extracted per session, without needing more sessions.
And the Q1 trajectory wasn’t a one-time spike. EPMV climbed steadily throughout the quarter, demonstrating a 38% improvement from start to finish. That’s the kind of trajectory you’d expect when a full optimization stack includes dynamic flooring among other yield levers that’re continuously learning across millions of auctions.
The gains also aren’t diluted by network-wide averaging. Yield optimization operates at the individual site level, which means publishers with stronger identity coverage and well-tuned configurations tend to see disproportionate lift. The network number is the floor, not the ceiling.
The two publishers
Two publishers in the same niche, with the same traffic and the same ad placements, can end a quarter with meaningfully different revenue. The difference is rarely audience or content but it’s the depth of optimization running behind every impression. Pricing more precisely. Routing demand more intelligently. Compounding small advantages, auction by auction.
Most publishers can't say with confidence how their floors are performing per bidder, per ad unit, per hour or whether the "dynamic" system they're paying for is actually learning in real time. If you haven't audited your full yield stack recently, the question isn't whether you're leaving money behind. It's how much. Talk to Ezoic → See what your network looks like under dynamic floor optimization built to learn auction by auction.


