1 0 6000 0 600 120 30 https://headerbidding.co 960 0

What is Header Bidding and How it Works?

Header Bidding
From how it started to where we are now — everything you need to know about header bidding.

If you search for ‘header bidding’ on Google, almost all the results are years old. While “waterfall” is one of the reasons header bidding came into existence, it’s not why publishers implement it today. Before you wonder what is ‘waterfall’, let us stop you there. We’ll start from the beginning to help understand the technique. 

Here’s header bidding explained!

The genesis of header bidding can be brought down to a necessity – The need for an efficient, transparent, and flexible way to run programmatic auctions. 

So, the previous technique used to sell ad impressions isn’t as efficient as header bidding. That’s why publishers, regardless of geography, size, and traffic have implemented header bidding and seen an increased ad revenue and demand for their remnant inventories. 

Table of Contents

What is Header Bidding?

Header Bidding is an advanced programmatic technique that increases your ad revenue by opening up your inventory to demand sources, before placing an ad call to your Google DFP (now Google Ad Manager) server. 

It is a way for publishers to conduct direct auctions, so as to bypass the inefficiencies that keep websites from finding the best prices for their ad space inventory.

So, What are the Inefficiencies?

I. Waterfall or Daisy Chaining

Let’s say you are a publisher with ad space to sell on your website. So, here’s a summary of what normally takes place in milliseconds when a user loads a page:

Your site reaches out to its ad server (Google Ad Manager) to get an ad. Usually, the direct-sold ads — the ones negotiated by the site’s own sales team — are served up first to the available ad space. After all, they come under programmatic guaranteed campaigns. 

Sidenote: Familiarize yourself with real-time bidding

What if there’s no direct advertiser willing to serve an ad for this particular user, then the ad space (or ad impression) is made available through Google Ad Manager — in what’s known as a “waterfall” sequence. 

It’s called so because the ad impression is first offered to the top-ranked SSP (based on historical data, not real-time performance), and then if it remains unsold, it goes to the second-ranked and so on.

This means the buyer who has bought more from you (in the past) would sit at the top and whenever there’s an ad request, they’ll receive it first. But when that buyer didn’t buy the ad inventory on your page, then it will be passed down to other buyers until a buyer says ‘I’ll buy the impressions’. 

The problem here is, every time your impressions get passed down to another buyer, the price will also cascade down. In some cases, you wouldn’t be able to pass the request down to the highest bidder (example below). 

In the end, you will be compelled to sell your inventories at subpar prices. 


Let’s take a look at an example. Assume the price floor (the minimum bid to win the impression) is $2. As you can see in the picture above, the $6 bid will be declared as the winner. Although there’s a $9 bid, because of the waterfall sequence, the advertiser with $6 won the auction. The ad request wouldn’t get passed down after a $6 bid as there’s no guarantee to see a higher bid. So, a $6 bid is good enough for the publisher to accept — it cleared the price floor.  

II. Google AdX Privilege

And then there’s the Google factor.

Many of the site publishers utilizing Google’s ad server employ a setting (dynamic allocation) that allows its Ad Exchange (Google AdX) to outbid any of the winning waterfall bidders because AdX gets to do the last bid. This is supposed to maximize yield, but it also puts AdX in a privileged position.

Google will wait to receive the bids from other exchanges and get the ‘last look. Then, it’ll try to outbid the exchanges. For instance, if Google exchange has two bids of $4 and $5, it can choose to submit a $5 bid based on the bid prices from other bidder partners (so that it could win the auction). 

So you can see why site publishers might feel they’re not getting what their ad space is worth. When they utilize waterfall bidding, and when they employ Google’s ecosystem, they might not be receiving the highest price they could.

This arrangement, as Index Exchange vice president Steve Sullivan said, is “meddling with the demand.” It also meddles with the data, he said, because you can’t really tell what your ad inventory is worth.

How does Header Bidding work?

In a simple way, Header Bidding is an advanced programmatic technique that works with a javascript code that is placed in the header part of the page. It begins loading as soon as the webpage loads in the user’s browsers by connecting to its supply-side platforms for bids before the ad server is called.

In a descriptive way, It is a way for the website to directly solicit a simultaneous auction from all the bidders.

The publisher places a line of JavaScript in the website’s header. When a page on the site is loaded, the code reaches out to the connected supply-side platforms (SSPs) for bids before the ad server is called. Bidding is essentially simultaneous, instead of sequential, and focuses on all available impressions, not just the ones available after direct sales.

Header Bidding - Automatad

If they want, publishers can also allow the winning bid to compete with the prices available from the direct-sold ads.

While the header auction (or header bidding or pre-bidding) happens, Google Publisher Tag is paused. Once you get the bids from header bidding partners, GPT calls the Google Ad Manager and sends the secured bids along with it to the server for a secondary auction. 

The secondary auction happens b/w the bids from header bidding partners and other demand partners connected to the ad server (for example, Google Ad Exchange). The highest bidder will get the impression. 

header bidding explained

This header bidding arrangement accomplishes several things. All the demand sources are bidding at the same time, which replaces the waterfall’s preferential ordering of buyers. Publishers can determine exactly which demand sources are participating because those are the ones that are called by the JavaScript in the header.

Advertisers get a shot at the best ad inventory. And this process, unlike Google’s ad server, is completely transparent and gives more flexibility to publishers. 

Not least, it also leads to higher rates. Index Exchange’s Sullivan says header bidding can produce “up to a 30 percent lift in rates” for some publishers. SSP PubMatic said that it has seen publisher gains as high as 50 percent in CPMs.

Want to see some real examples of publishers increasing their revenues with header bidding? Then, we got a few case studies for you here

Benefits of Header Bidding

  1. It increases competition and CPMs – As there will be an unbiased pre-auction, bidders would be willing to participate. More bidders, more bids, thus, more competition. Due to the increased competition, the value of your ad impressions (CPMs) will increase drastically. 
  2. It eliminates Waterfall – As we’ve shown previously, header bidding puts everyone on the same ground and allows advertisers of all sorts to bid for your inventory. Hence, as a publisher, you won’t leave money on the table. 
  3. No Google AdX Privilege – In Google Ad Manager, as mentioned above, AdX uses ‘dynamic allocation’ and outbids every other bidder most of the time. But in header bidding, bidders are given a chance to bid simultaneously before sending the request to the ad server. 

Wait, you need to know the wrapper as well. 

Header Bidding Wrapper and Adapter

You need a tag management system, similar to Google Tag Manager, to connect to demand partners, send ad requests, solicit bids, and finally send it down to the ad server (Google Ad Manager). That’s the job of the header bidding wrapper

To put it simply, the wrapper is simply a container that can help you facilitate bids from different demand partners (SSPs) for sending it down to the ad server.  

The ad server will get the bids and then, decides the winner. So, the primary function of the wrapper is to manage multiple demand partners and get bids from them for each and every impression. Prebid is the preferred header bidding wrapper in the space. 

Consider header bidding integration is straightforward — where you, the publisher connect with demand partners. No middlemen and you handle the Header Bidding integration with the help of a wrapper. More on the wrapper here


In nutshell, getting an adapter means getting demand from the supply-side platform. Then, why do we need a wrapper? Because wrappers are the containers that hold the adapters. A Header Bidding wrapper alone cannot help you to integrate demand partners. You need an adapter to get access to an SSP’s demand as we explained earlier.

Adapters are of two types. One type can get you demand (bidder adapters) and the other is to help you with analytics (analytics adapter). You need to know how the bidder partners are performing — eCPM, bid rate, fill rate, etc. — so that you can only keep the best demand. You can read more about bidder adapters here and analytics adapters here

How to Setup Header Bidding?

In order to implement header bidding, You require a wrapper, adapters (or demand partners/SSPs), and you also need to create corresponding orders & line items in your Google Ad Manager account.

The best part is, you don’t have to do it yourself. There are several managed header bidding providers in the market. If you choose to go with one, then they’ll take care of setup, demand partnerships, implementation, and optimization.

You can implement it yourself as well. Typically, publishers go with Prebid. Prebid is the most-used open-source header bidding framework that helps publishers to run header auctions. 

We discussed header bidding setup and implementation in detail

What are the Disadvantages of Header Bidding?

Header bidding can cause latency when implemented poorly. But as the header auctions — calling demand partners, securing bids, and sending it to the ad server — happens on the client-side, there’s a chance for page latency. 

To handle page latency, publishers typically experiment with timeouts (timeout can end the auction and send the available bids to the server, rather than waiting for all the SSPs to respond with a bid), bidder partners, and more

But the discussion regarding latency also led the industry to come up with server-side header bidding. 

What is Server-side Header Bidding?

Server-side header bidding is the header bidding happening on the server-side. When a page gets loaded, the header bidding script calls a server. This isn’t Google Ad Manager or the publisher’s primary ad server. This is a header bidding ad server that conducts the header auctions, secures the bids, and passes them to the page. 

Via the page, the bids get passed down to the ad server.

In client-side header bidding, the browser was handling all the load. In server-side bidding, a server replaces the browser and takes care of the header bidding process. As servers are faster, publishers can reduce the page latency to the minimum.

But server-side header bidding has its own disadvantages. You can read it on our ultimate guide to Server-Side Header Bidding.

So, publishers tend to use hybrid header bidding. That is, some of the demand partners (or SSPs) will be connected to the client-side wrapper and some will be connected via a server-side setup. 

What is Google’s Header Bidding?

Google to counter header bidding, launched its own server-side header bidding product called Open Bidding. Open Bidding (previously, known as Exchange Bidding) can help you run header bidding on the server-side via Google Ad Manager itself. 

You don’t need any external header bidding setup. But some publishers avoid it for certain reasons. Most publishers use it along with their client-side header bidding setup.  

What’s Google Unified Auction?

Google Ad Manager recently got rid of waterfall sequence (yes, the one that pushed the industry to create header bidding) and announced that there’ll be a single unified auction where the bids from all the demand sources — be it header bidding, Open Bidding, etc. — will get an equal shot at winning the ad impression.

Google Unified Auction

Why Publishers Still Prefer Header Bidding?

Apparently, Google removed its inefficient waterfall sequence and dropped the ‘last look’ advantage that enabled Google AdX to win impressions. So why do publishers still prefer header bidding?

In fact, adoption is only growing, and it’s close to 80%. Simple, when we started to explain header bidding, we said it thrived because of more than one reason. 

For instance, flexibility and transparency play a vital role in attracting thousands of publishers to implement header bidding using Prebid or a provider rather than completely relying on Google. Header bidding wrapper is far more open than a server and publishers can ensure fair auction 100% of the time. 

Besides, client-side header bidding, which Google doesn’t offer, can lead to better CPMs. 

How? Match rates. As demand partners/SSPs are present on the user’s browser, they’ll be able to identify the user (with the help of cookie syncing) better and bid higher. On the other hand, server-side header bidding moves the demand partners from the browser to a server. So, match rates will decrease leading to lower CPMs.

Factors to Consider While Implementing Header Bidding

Although header bidding is a proven technique to increase your ad revenue, you have to follow certain practices. In fact, an improper implementation might result in poor user experience and revenue drop. So, while deploying header bidding consider the following factors.

Demand Partners:

It is important to have strong demand partners to reap the benefits of header bidding. As a publisher, your initial step is to partner with SSPs and any demand partners to have several advertisers bid on your inventory.

Also, it is integral to have the ideal number of demand partners. Higher the number makes the page load slowly as the browser has to receive more bids.

Page Latency:

As you know, in header bidding, the browser makes the call to the demand partners and waits for them to make their bids. This also results in increased page load time. To avoid latency issues and the resulting poor user experience, you can set a universal time out using wrappers. I.e, how long should the browser wait to receive the bids. You can also experiment with a hybrid header bidding setup. 


With the use of a header bidding wrapper, you can also make the header bidding ‘asynchronous’. This will not make the content halt and wait for the ad. The page content will load independently and you can deliver the ad to the user a bit later.


Though we all know how header bidding serves to maximize the yield of the publishers and embraces transparency, you should keep an eye on discrepancies. As soon as any bidder wins the auction on the server, Google Ad Manager records an impression. 

But the header bidding partners wouldn’t record the impression until the actual creative is delivered while the user is on the page. This can lead to a discrepancy of up to 30%. I.e., a substantial loss in revenue. Here’s how to minimize the discrepancy between header bidding partners and Google Ad Manager

What Not to Do?

It’s time to focus on the other side – “What not to do”. 

It’s as important as the best practices and prevents you from losing your revenue. 

So, what are the mistakes you should avoid?

1. Partnering with multiple header bidding solution providers who integrate (almost) the same demand partners to your inventories.

Why it’s a snag?

a) You might end up putting the same impression or inventory up for sale to a single buyer on more than one occasion. This, in turn, makes your bid as a duplicate one. DSPs will eventually identify the source of the duplicate bids and drop/ignore* them while bidding. 

*DSPs typically receive billions of requests per day and decreasing the inefficient ones (such as duplicates) will save the processing power and a lot of bucks. Learn more about Supply Side Optimization (SPO). 

b) Your ad requests are sent to multiple SSPs, but they may all forward the request to the same DSPs. Hence, no varied buyers, less competition, and depreciated CPMs.

c) If you split up and allocate the ad units of a page to different header bidding providers, it doubles the load time and there will be more than one auction happening on the client-side (browser). This, in turn, leads to a lousy user experience and unnecessary adops efforts. 

2. Integrating unknown bidder partners into your inventory. 

In header bidding, SSPs (bidder partners) receive data from your end and allow multiple Demand Side Platforms to bid for your ad impressions. However, there are ad exchanges where DSPs can “see” your audience data, but not bid. This puts your audience data at risk and there’s a possibility of data leakage too.

3. Over Optimization

Agreed. Header Bidding is not a ‘set and go’ approach. It requires periodic audits to determine the underperforming partners and optimize the setup to get higher CPMs. On the other hand, over-optimizing the setup might be bad as not optimizing at all. 

For instance, if you’ve recently set up a floor price, it might take a while for demands to adapt and bid accordingly. Modifying the floors over and over without any considerable time gap will yield you lower CPMs. 

Here’s a detailed guide on optimization

Did we miss answering any questions? Let us know in the comments. Want help in implementing header bidding? Contact us today.

Rasheed Ahamed

Rasheed Ahamed works as Organic Growth Lead at Automatad, Inc. He helps the digital publishing community to find the right information and educates how Automatad's products can help them maximize revenue without hampering user experience.

Header Bidding
Previous Post
Adtech Weekly News
Weekly Roundup: COVI...
Reduce Banner Blindness
Next Post
What is Banner Blind...
Leave a Reply