Ten years ago, publishers sold the same ad slot one buyer at a time. A direct-sold campaign got first look, then an ad network, then another, then whatever was left went to the lowest-priority backfill tag. Each buyer only saw the impression if everyone ahead of it passed. That sequence had a name, waterfall, and for most of the display advertising era it was simply how publishers monetized inventory.
Header bidding replaced that sequence with something closer to an open auction: every connected demand source evaluates the same impression at the same time, and the publisher picks the single highest bid before the page even finishes loading. For a media buyer or DSP owner, the difference is not just plumbing. It changes which impressions your bids ever get a chance to see, how fast a bid decision has to happen, and how much of the auction actually reaches your platform versus getting filtered out upstream.
This guide breaks down how waterfall and header bidding actually work, why the industry largely moved away from sequential calls, and what a DSP owner or media-buying team should understand about where their bids sit in a header bidding auction.
What Is Waterfall Ad Serving?
Waterfall ad serving is a sequential, priority-ranked call chain. The publisher’s ad server holds a list of demand sources, ranked by the price each source has historically paid or guaranteed, and calls them one at a time. If the first source in line does not have a matching campaign or its price floor is not met, the ad server passes the request to the next source down. This continues until someone fills the impression or the list runs out and the slot goes unfilled.
The ranking in a waterfall is usually static, set manually by an ad ops team based on average historical CPMs rather than the real value of that specific impression in that specific moment. A demand source ranked fourth never gets to compete on price against the source ranked first; it only gets a chance if everyone above it declines. That is fundamentally different from an RTB auction, where every participant bids on the same impression at the same time.
The Core Problem With Waterfall
Waterfall’s biggest weakness is that price rank and priority rank are not the same thing, but the sequence treats them as if they are. A demand source with a historically lower average CPM might actually be willing to pay more for this particular impression than the source ranked ahead of it, but the waterfall never lets that bid surface. The publisher loses revenue on every impression where a lower-ranked source would have paid more.
There is also a latency cost. Each hop down the waterfall is a separate round trip: request out, response back, then on to the next source if needed. A slot that has to work through five or six sources before it fills adds up that latency serially, which is part of why page load times became a visible problem as the number of demand sources publishers connected kept growing through the 2010s.
On top of that, waterfall setups are opaque to buyers. A DSP sitting low in the priority order has almost no visibility into how often it is actually seeing the full pool of available impressions versus only the ones nobody above it wanted. Win rate and bid rate become hard to interpret when you don’t know what share of the total opportunity you were even shown.

What Is Header Bidding?
Header bidding is an auction method that lets a publisher offer the same impression to multiple demand sources at the same time, before the page’s primary ad server is called at all. The name comes from where the original implementation lived: a small piece of JavaScript placed in the page’s HTML header that fires simultaneous bid requests out to every connected supply-side platform and exchange, collects the responses within a short timeout window, and passes the single highest bid into the ad server as a line item.
Instead of a ranked sequence, every demand source competes on the actual price it is willing to pay for that specific impression, in parallel, within roughly the same few hundred milliseconds. The publisher’s ad server then runs one final comparison between the winning header bid and any direct-sold or programmatic guaranteed line items, and whichever is genuinely highest wins the slot.
The practical effect for a DSP is that being connected to a header bidding auction means competing on price against every other participant on that specific impression, not competing for a rank position that was decided ahead of time based on unrelated historical averages.
How a Header Bidding Auction Actually Runs
A header bidding call goes through a consistent set of steps regardless of which wrapper or implementation a publisher uses:
- The page begins loading and the header bidding script fires bid requests to every connected demand source simultaneously.
- Each source, including any connected DSPs, evaluates the request against active campaigns and returns a bid within the auction’s timeout window, typically a few hundred milliseconds.
- Bids that arrive after the timeout are dropped entirely, so a DSP’s response speed directly determines whether it gets to compete at all.
- The header bidding wrapper collects all valid bids and passes the highest one into the publisher’s ad server as a dynamically priced line item, alongside any direct or guaranteed deals.
- The ad server runs one final comparison across all eligible line items and renders the actual winning creative.
Because every step of that sequence has to finish before the ad slot renders, the timeout window is the hard constraint. A DSP that cannot receive, evaluate, and return a bid inside it simply never gets counted, which is the same underlying pressure that makes unlimited QPS and low-latency infrastructure matter for a platform that wants to compete broadly across header bidding auctions.
Client-Side vs Server-Side Header Bidding
Header bidding split into two implementation models once publishers started running it at scale, and the difference matters for how much latency the auction adds to a page.
| Model | Where the auction runs | Trade-off |
| Client-side header bidding | In the user’s browser, via JavaScript | Simple to implement and audit, but every additional demand source adds browser-side latency and can slow page load |
| Server-side header bidding | On a server, outside the user’s browser | Adding more demand sources does not slow the page, but the publisher has less direct visibility into each auction and relies on the server-side vendor’s reporting |
Many publishers now run a hybrid setup: a smaller set of high-value demand sources called client-side for transparency, with the rest routed server-side to keep page load fast as the number of connected exchanges and DSPs grows. For a DSP owner, server-side header bidding integrations are generally where higher, more consistent bid volume shows up, since they are not capped by how many client-side calls a browser can realistically make before the page feels slow.

Where DSPs Fit Into the Header Bidding Stack
A DSP does not run a header bidding auction itself, publishers and their wrappers do that. What a DSP does is sit as one of the connected demand sources, receiving the simultaneous bid requests a header bidding call generates and responding through whichever SSP or exchange connection routes that publisher’s inventory.
Because a single impression can now reach a DSP through several different paths at once, header bidding also made supply path optimization a much bigger deal than it was in the waterfall era. The same publisher slot might be offered to a DSP through three or four different SSPs simultaneously, each taking its own cut along the way. A DSP owner who can see and manage which paths it is bidding through, rather than accepting every duplicate route by default, keeps more of its budget going toward actual media rather than redundant intermediary fees.
Trade-Offs Programmatic Buyers Should Watch
Header bidding solved the priority-rank problem, but it introduced its own set of things a media buyer or DSP owner needs to manage rather than assume away.
Page latency is the most visible one. Every additional client-side demand source adds a bit more time before the page is fully interactive, and publishers that stack too many connections without discipline can hurt their own user experience and, downstream, their ad viewability. Buyers evaluating a publisher’s inventory quality should factor in how heavy that publisher’s header bidding wrapper is, not just its raw bid volume.
Duplicate bid requests are the other one. Because header bidding lets a publisher connect the same DSP through multiple SSP paths, a single impression can generate several nearly identical bid requests reaching the same DSP within the same auction. Left unmanaged, that inflates bid request volume without adding real opportunity, and it is one of the reasons transparency measures like ads.txt and sellers.json exist, so a DSP can verify which paths are authorized and which are redundant or unauthorized resellers.
Header Bidding vs Waterfall: Which Should You Care About as a Buyer?
Most premium publisher inventory has already moved to header bidding, so in practice a media buyer or DSP owner is not choosing between the two models, they are making sure their platform is built for the one that is now standard. That means fast, reliable bid responses within tight timeout windows, connections broad enough to be included across many publishers’ wrappers, and enough visibility into supply paths to avoid paying redundant fees on duplicate routes to the same impression.
Where the distinction still matters practically is in evaluating a DSP platform itself. A platform that throttles queries per second or caps how many exchange connections it can maintain will structurally lose out in header bidding auctions, the same way a low-ranked source used to lose out in a waterfall, just for a different underlying reason: it cannot respond to every simultaneous bid request in time rather than never getting called at all.
Ready to Bid Into Every Auction, Not Just the Ones You’re Called For?

AdTech Europe gives agencies, ad networks, and media-buying teams a fully owned DSP built for header bidding’s simultaneous, high-volume auctions, with unlimited QPS and no throttling, whether through a white-label rental, a license, or a full source-code acquisition. Every plan connects to 1,000+ SSP integrations out of the box, so bid volume scales with the campaigns running on the platform rather than a rented seat’s fixed allowance. Current pricing for all three ownership models is on the pricing page.
If you want to talk through how your current setup handles header bidding volume, or see what owning the platform would change, schedule a programmatic strategy meeting with the AdTech Europe team.
FAQs
What is the difference between header bidding and waterfall?
Waterfall calls demand sources one at a time in a fixed priority order, so a lower-ranked source only competes if everyone above it passes. Header bidding calls every connected demand source at the same time and lets the single highest real bid win, regardless of historical rank.
Why did publishers move away from waterfall ad serving?
Waterfall’s fixed priority order meant a lower-ranked source could never outbid a higher-ranked one on a specific impression, even when it was willing to pay more, which left revenue on the table and slowed pages down as more sequential calls stacked up.
What is the difference between client-side and server-side header bidding?
Client-side header bidding runs the auction in the user’s browser, which is simple to audit but adds page load time as more demand sources are added. Server-side header bidding runs the auction on a server, keeping the page fast but giving the publisher less direct visibility into each bid.
Does header bidding slow down page load times?
It can, especially with heavy client-side setups connecting many demand sources, since each one adds a round trip before the auction resolves. Server-side and hybrid implementations exist largely to reduce that impact while still reaching broad demand.
How does header bidding affect a DSP’s bid volume?
Header bidding exposes a DSP to every impression from a connected publisher simultaneously rather than only the ones a waterfall passed down to it, which generally increases bid volume, but only if the DSP can respond within the auction’s timeout window at scale.
What is supply path optimization and how does it relate to header bidding?
Supply path optimization is the practice of identifying and favoring the most direct, cost-efficient route to a given impression when multiple paths exist. Header bidding made this more important because the same impression can now reach a DSP through several different SSP connections at once, each taking its own fee.
Do DSP owners need to configure anything for header bidding to work?
A DSP does not control the publisher’s header bidding wrapper, but it does need fast, reliable connections and enough query capacity to respond to simultaneous bid requests within the auction’s timeout window, along with visibility into supply paths to avoid bidding on redundant duplicate routes.