Guide · Header bidding

What is header bidding? A practical guide for publishers

Header bidding lets many advertisers compete for your ad space at the same time. Here's how it works, why it pays more and how to start.

By the Pub Premier team · Updated November 1, 2026

Header bidding in one sentence

Header bidding is a programmatic advertising technique in which a publisher offers each ad impression to multiple demand partners (SSPs and ad exchanges) at the same time, before the ad server makes its decision, so that the highest bid wins.

The problem with the waterfall

Before header bidding, ad space was sold through a waterfall: the ad server offered an impression to one buyer at a time, in a fixed priority order. If the first buyer passed, the impression fell to the next one — often at a lower price.

The waterfall has two big weaknesses:

  • Buyers never compete directly. A buyer lower in the chain might have paid more, but never got the chance.
  • Priorities are based on historical averages, not on what each buyer would pay for this specific impression.

How a header bidding auction works

  1. A visitor opens a page. A small script (the wrapper) runs in the page.
  2. The wrapper sends a bid request for each ad slot to several demand partners at once.
  3. Each partner returns a bid (a price) within a short timeout — typically around one second.
  4. The bids are passed to the ad server as key-values.
  5. The ad server compares them with its own demand (for example Google demand) and serves the highest-paying ad.
Because every partner bids on every impression, real-time competition replaces fixed priorities — and the price of your inventory goes up.

Prebid.js, the open-source standard

Prebid.js is the most widely used header bidding wrapper. It is open source and maintained by Prebid.org, an independent organization. Each demand partner provides a bid adapter, and the publisher configures which adapters run on which ad units, with which timeout and price granularity.

TermMeaning
WrapperThe script that runs the auction in the page (e.g. Prebid.js).
Bid adapterA module that lets one demand partner bid.
TimeoutHow long the wrapper waits for bids before sending them to the ad server.
Price granularityHow precisely bids are bucketed when passed to the ad server.
RTD moduleA real-time data module that adds signals (such as attention or context) to bid requests.

Client-side vs server-side header bidding

Client-side header bidding runs the auction in the visitor's browser. It's transparent and widely supported, but every extra partner adds browser requests. Server-side header bidding (for example Prebid Server) moves the auction to a server, so the browser makes one request and many partners can bid. Many publishers combine both: key partners client-side, the rest server-side.

Header bidding and page speed

  • Load the wrapper asynchronously so it never blocks your content.
  • Use a sensible timeout (often 1,000–1,500 ms) and review it with real data.
  • Only keep partners that win auctions; remove those that rarely bid.
  • Lazy-load ads below the fold so auctions run when the slot is about to be seen.

How to get started

Running header bidding yourself means managing a wrapper, partner contracts, ad server line items and reporting. Joining a monetization platform such as Pub Premier gives you an existing setup: you verify your site with an ads.txt line, place your ad tags, and the auction runs for you, with results in your dashboard.

Apply to Pub Premier or see how our header bidding works.

Put this into practice with Pub Premier.

Premium demand, header bidding and a transparent dashboard — free to join.