
Bid shading is when an advertiser's buying platform lowers its bid in a first-price auction to roughly what it expects is needed to win, instead of bidding the full value it puts on the impression. Buyers do it because in a first-price auction the winner pays exactly what it bid, so bidding the full value means overpaying.
For you, the publisher, that means the price you're paid on each impression is set by a model on the buyer's side, not by the buyer's real willingness to pay. When only one or two buyers compete for a slot, that model can push your price down a long way. When lots of buyers compete, it can't.
This guide explains what bid shading is, walks one auction through with real numbers, and shows the settings on your side that actually matter. If you'd rather have floors and demand tuned for you, that's part of our header bidding service.
What is bid shading in programmatic advertising?
Bid shading is a feature of demand-side platforms (DSPs) that cuts a buyer's bid before it's sent, aiming for the lowest price that still wins. The DSP predicts the clearing price for that impression from past auctions, then bids a little above that prediction.
The idea is old. In auction theory, bidding below what something is worth to you is simply called shading your bid. In ad tech the word took off around 2019, when the big exchanges switched from second-price to first-price auctions and buyers suddenly needed a way to stop paying full price.
Here's the part most guides skip. Bid shading isn't a discount the seller agrees to. You don't see it, you can't opt out of it, and it doesn't show up as a line in your reports. You only see its effect: the winning bid, which is now the price you're paid.
If the buyer side is new to you, our guide to DSPs and SSPs from the publisher's side explains who sits where in the chain.
First-price vs second-price auctions
A first-price auction charges the winner what it bid. A second-price auction charges the winner just above the second-highest bid. Bid shading only exists because of the first kind.
Google's own best-practices guide for Ad Manager puts it plainly: "In a second-price auction, the highest bidder pays the second highest price." In a first-price auction, the same guide says, "buyers pay what they bid." (Source: Google's Unified First-Price Auction best practices.)
| Second-price auction | First-price auction | |
|---|---|---|
| Winner pays | Second-highest bid plus a small increment | Its own bid |
| Best bidding strategy for the buyer | Bid what the impression is worth to you | Bid what you think it takes to win |
| Role of the floor | Closes the gap between the top two bids | Sets the minimum winning bid |
| Where you see it today | Rare in the open market | Google Ad Manager, AdSense and most SSPs |
Google moved Ad Manager to a unified first-price auction in 2019. In its announcement, Google said first-price auctions have "a neutral to positive impact on a publisher's total revenue." The same post says buyers "will receive the minimum bid price to win after the auction closes." Hold on to that last line. It's the data that makes shading work.
Inside the bid request itself, the auction type is a field. The OpenRTB 2.6 specification defines at as "Auction type, where 1 = First Price, 2 = Second Price Plus." So every DSP knows which game it's playing before it bids. If you want the bigger picture first, here's the full chain of auctions an impression passes through. Our real time bidding guide walks through the other fields buyers read in that request.
{
"id": "req-7f3a",
"at": 1,
"imp": [{ "id": "1", "bidfloor": 0.80, "bidfloorcur": "USD" }]
}
That snippet is a trimmed example. "at": 1 tells the buyer it's a first-price auction, so its shading model switches on.
How does bid shading work?
Here's how bid shading works in one line: the DSP predicts the lowest price that will win this impression and bids just above it. The DSP's model learns from every auction it joins and every win and loss it records.
In practice, the steps look like this:
- The buyer's campaign values your impression at, say, $4.00 CPM. That's its "true" bid.
- The DSP looks at what impressions like this one cleared at before: same site, ad size, country, device, time of day.
- It also looks at its own win rate at different prices on similar supply, and at any minimum-bid-to-win feedback the exchange sends after the auction.
- It sends a lower bid, close to the predicted clearing price. If it loses too often at that level, the model nudges future bids up. If it keeps winning easily, it nudges them down.
The buyer never bids more than its true value, and Ad Manager's auction model page confirms the other side of that promise: "the winning buyer is never charged more than the bid it submits."
So shading is a feedback loop. It isn't a fixed percentage off. That's why claims like "shading cuts publisher CPMs by X%" don't hold up across sites. The cut depends on how much competition each impression gets.
A worked example with real numbers
One auction shows the whole story. These numbers are made up for the example, but the maths is exactly how each model prices the win.
Two buyers want the same 300x250 slot on your page. Buyer A values it at $4.00 CPM. Buyer B values it at $2.50 CPM. Your floor is $0.80.
| Auction model | Buyer A bids | Buyer B bids | Winner pays (your price) |
|---|---|---|---|
| Second-price, $0.01 increment | $4.00 | $2.50 | $2.51 |
| First-price, no shading | $4.00 | $2.50 | $4.00 |
| First-price, both buyers shade | $2.70 | $2.10 | $2.70 |
| First-price, shading, only Buyer A shows up | $0.90 | no bid | $0.90 |
| Same as above, floor raised to $2.00 | $2.05 | no bid | $2.05 |
Look at rows one and three. With healthy competition, a shaded first-price auction lands close to where the old second-price auction would have landed. That's the reason Google could say first-price was neutral to positive for publishers overall.
Now look at row four. When Buyer B drops out, Buyer A's model learns there's no one to beat and bids just over the floor. Your price falls from $2.70 to $0.90 on that impression, and nothing on your side changed except the competition.
Row five is the floor doing its job. But a floor is a blunt tool, and we'll get to why in a moment.
The single biggest defence against bid shading is a second real bidder. Shading pushes your price toward the next-best bid, so the stronger the next-best bid, the less shading can take.
Who uses bid shading?
Most major DSPs apply bid shading automatically in first-price auctions, and some let the advertiser tune or switch it off for a campaign. It's a buy-side feature. SSPs and exchanges don't shade bids on your behalf.
Some buyers turn shading down on purpose. A brand campaign that must hit a reach target may care more about winning than about the exact price, so it bids closer to full value. A performance campaign chasing a target cost per action will usually shade harder. You'll see both kinds bidding on the same slot.
The minimum-bid-to-win data from Google's announcement matters here. Each time a buyer wins or loses, it learns more about your clearing prices. Over time, the DSPs that buy your inventory most often get the best picture of what they really need to pay.
How bid shading affects publisher revenue
The impact on publisher revenue is uneven. Bid shading lowers revenue on impressions with weak competition and does little on impressions with strong competition. Your total effect depends on how much of your inventory sits in each group.
In our reviews, the slots that suffer most share a pattern:
- Below-the-fold units with low viewability, where few buyers want to pay much.
- Traffic from countries where only one or two buyers bid on your site.
- Pages where the same buyer reaches the slot through several SSPs, so it competes against itself.
- Unusual sizes that most campaigns don't carry creatives for.
Here's what we'd watch for in your own numbers. If your eCPM slipped while fill rate and impressions held steady, and the drop sits in a few countries or units rather than everywhere, thin competition plus shading is a likely cause. If the drop is spread evenly across everything, look elsewhere first: seasonality, a lost demand partner or a policy issue.
AdSense publishers are in a first-price auction too. Google moved AdSense to first-price in 2021 to line it up with Ad Manager and AdMob. Our AdSense CPM and RPM guide covers that change and what it means for your reports.
What publishers can do about bid shading
Bid shading for publishers comes down to this: you can't turn it off, but you can make it matter less. The levers are more real competition per impression, floors set from your own data, and clean supply paths.
1. Add real competition, not duplicate paths
Every independent buyer that bids on an impression raises the price a shading model has to beat. That's why Prebid.js header bidding and Google's own demand competing in one auction usually help more than any floor tweak.
The catch: more SSPs isn't the same as more buyers. If three SSPs all sell your slot to the same DSP, that DSP sees three copies of one impression and can bid low on all of them. Pick partners that bring different demand, and drop ones that only resell the same buyers.
2. Rebuild floors for first-price
Floors work differently now. Google's first-price guide says floors "no longer serve the purpose of closing the gap between the highest bid and the second bid." In a first-price auction a floor only sets the minimum winning bid. Ad Manager's pricing rules help page says the same thing: "Lowest winning bid must be no less than the floor price."
We still find floors that were set during the second-price era and never touched. Those were often high on purpose, to squeeze the gap between the top two bids. In a first-price auction, a floor that's too high just blocks bids you would have taken. Look at the bid landscape for each unit and country, then set floors that cut off only the lowest bids.
Two details in Ad Manager trip people up:
- "If two pricing rules target overlapping inventory, the rule with the higher price applies." A forgotten broad rule can override your careful narrow one.
- Google's guide notes that if no rule matches, "the unified floor price defaults to 0 (zero)." No floor at all on a thin slot invites very low shaded bids.
3. Use the floor signal in Prebid with care
In Prebid, the Price Floors module describes a floor as "the price to beat," and it "will mark all bids below the floor as bids rejected." That floor is sent to bidders, so a shading model can see it. A well-set floor gives the buyer a sensible target. A floor that changes wildly from page to page just teaches the model to wait for the cheap ones.
4. Make each impression worth more to buyers
Shading starts from the buyer's true value. Raise that, and the shaded bid rises with it. Viewable placements, fast pages, clean ads.txt and sellers.json entries and low invalid traffic all lift what a buyer is willing to pay. Our guide to how buyers purchase your ad space lists the checks buyers run before they spend.
Common mistakes we see with floors and shading
Most of the damage we see blamed on bid shading is really a floor or demand problem. These are the ones we fix most often:
- One sitewide floor. A single $1.50 floor blocks good bids in low-value countries and is too low for your best US desktop slots. Split floors by country group, device and unit.
- Raising floors after a drop. If eCPM fell because a buyer left, a higher floor cuts fill on top of the lower prices. Fix the competition first.
- Testing floors for a day. Shading models adjust over time. Give a floor change at least a week of comparable traffic before you judge it.
- Judging by eCPM alone. A higher floor can raise eCPM and lower revenue. Always compare total revenue per 1,000 page views.
If your reports don't show bids by unit and country, our reporting and yield service sets that up first, because floors set without that data are guesses.
Bid shading FAQ
These are the questions publishers ask us most about bid shading, answered in a line or two each.
Can publishers turn off bid shading?
No. Bid shading runs inside the buyer's DSP before the bid reaches your ad server, so there's no setting for it on the sell side. You can limit its effect with more independent demand and floors set from your own bid data.
Does bid shading lower my CPM?
It lowers the price on impressions with little competition and has a small effect on busy impressions. Overall, Google reported first-price auctions as neutral to positive for publisher revenue when it switched Ad Manager in 2019, but your mix of slots and countries decides your own result.
Is bid shading the same as a second-price auction?
No, but it often lands near the same price. A second-price auction sets the price from the next-highest bid. Bid shading has each buyer guess that price in advance. With strong competition the two come out close. With weak competition, shading can go much lower.
Do floor prices stop bid shading?
Floor prices set the lowest bid that can win, so a shaded bid can't go under the floor and still win. They don't stop shading above the floor. A floor set too high blocks bids and cuts fill, so set floors from your own bid data.
Are AdSense publishers affected by bid shading?
Yes. AdSense runs a first-price auction since 2021, so buyers bidding through Google's demand can shade their bids there too. AdSense gives you no floor controls, which is one reason larger sites move to Ad Manager with header bidding.
How do I know if bid shading is hurting my revenue?
Look for an eCPM drop that's limited to a few countries, devices or ad units while impressions and fill stay steady. Then count the number of bidders on those impressions. Few bidders plus falling prices points to thin competition, which is where shading bites.
Your next step
Bid shading is the buyer's answer to first-price auctions, and it's here to stay. The way you keep your prices up is the same as it's always been: more real buyers on every impression, floors that fit a first-price auction, and inventory buyers trust.
If you want a second pair of eyes on your floors and demand mix, send us your site and we'll tell you where the competition is thin.
More guides in this topic
- Programmatic Advertising for Publishers in Plain English
- How an Ad Auction Works for Website Publishers
- What Is a Supply Side Platform? A Publisher Guide
- DSP vs SSP Explained From the Publisher's Side
- Programmatic Display Advertising Explained for Publishers
- Prebid.js Setup Guide for Publishers, Step by Step
- Programmatic Media Buying Explained for Publishers
- DMP for Publishers and When You Actually Need One
- Contextual Advertising Explained for Website Publishers
- What Are Third Party Cookies? A Guide for Publishers
- Walled Garden Advertising Explained for Publishers
- Real Time Bidding Explained for Website Publishers
- Ad Network vs Ad Exchange for Publishers Explained
- Privacy Sandbox for Publishers After Google Retired It
- What Is a Universal ID? A Guide for Publishers
- First Party Data Strategy for Publishers (2026 Guide)
- What Is Cookie Syncing? A Plain Guide for Publishers
- Bidstream Data Explained for Publishers (2026 Guide)
- Traffic Shaping in Programmatic Advertising for Publishers


