What is header bidding?
Header bidding is a programmatic advertising technique that lets multiple demand partners bid on a publisher’s ad inventory simultaneously, before the publisher’s ad server is called. Instead of offering each impression to buyers one at a time, header bidding runs a single unified auction where every connected partner competes at once. The winning bid is passed into the ad server, so the publisher’s own direct deals and programmatic demand compete on equal footing. The result is more competition per impression — and, typically, higher yield than the older method it replaced.
Why it replaced the waterfall
Before header bidding, most publishers used a waterfall (also called a daisy chain). Ad networks were ranked by their historical average price, and each impression was offered to them in sequence until one accepted. This had two big problems:
- Estimated, not real, pricing. Networks were ordered by past averages, so a buyer lower in the chain might have paid more for a specific impression but never got the chance to bid.
- Latency and lost fill. Every failed pass added delay, and impressions could go unsold even when demand existed.
Header bidding solves this by asking everyone for a real bid on the actual impression, at the same time.
Client-side vs server-side
There are two common ways to run a header-bidding auction:
- Client-side (browser): The auction runs in the user’s browser, usually via the open-source library Prebid.js. It gives access to rich first-party signals but adds some load to the page.
- Server-side: The auction runs on a remote server, which supports many more demand partners without slowing the page — at the cost of some signal fidelity.
Many publishers run a hybrid: a handful of high-value partners client-side, and the long tail server-side.
What publishers should watch
Header bidding increases competition, but it has to be implemented carefully:
- Timeouts. Set an auction timeout that balances more bids against page speed.
- Page performance. Poorly configured setups can hurt Core Web Vitals; lazy loading and asynchronous scripts help.
- Partner count. More partners is not always better — each one adds weight, so the goal is the right partners, not the most.
Done well, header bidding turns every impression into a live auction. That is why it is a core part of a modern publisher monetization stack, alongside Google Ad Manager and direct deals.