Header bidding is one of the main stream technology in ad tech, I would like to give you a brief introduction of how ad selling work on your browser before we goes to header bidding.

Waterfall

It is one of the oldest and the most traditional method. If there is a website, CNN for example. CNN can work with multiple agents A, B, and C. When a user comes in, CNN will ask agent A and see if it want to buy it. If not then ask agent B, and so on until some one take it. So there will have a priority between these agents. The order of agents will depend on their deal with CNN.
waterfall

Header Bidding

What about Header Bidding? using the above example, when a user comes in, CNN delay agent A's request and ask agent B and C how much will you bid on this impression. After gathering all the bids, then send them to agent A for final auction with A. Whoever has higher bid wins. Usually this agent A will be Google double click.
headerbidding1

Comparison

Waterfall:

  • pros: Good user privacy because not all the agent get the user information.
  • cons: Low performance(if the waterfall goes on) and cannot maximum publisher's revenue because you cannot guarantee other agent won't bid higher than previous one.

Header Bidding:

  • pros: Good performance and can maximum publisher's revenue while all the agent is in the auction.
  • cons: Unfriendly user privacy because all the agent will get user information.

So how is exactly they perform? Below is a experiment I did on weather.com using Ad Footprint. Usually, it takes 100~400 ms for each agent to offer their bid. if you have 5 agent, it will take 2 sec in worst case in waterfall method but 400ms in Header bidding.

ad_footprint_bid
(I recommend you play it by yourself. it is not clear to show it on GIF.)

Other facts about Header Bidding

First price auction vs Second price auction

There's also some problems when migrate waterfall to header bidding. One of them is First price auction and Second price auction. Traditionally with waterfall method, there will be only one auction in Ad Exchange. So most of company use Second price auction(winner only pays the second highest price instead the highest price) to save some money for advertiser. It is obvious that there is no reason you need to pay $3 if $2 is enough to win the auction.

But then comes the problem. There are actually two auction in Header Bidding. One is hold by agent itself, another one with all the agent.

For example,
Agent A's winner bid is $5, and after second price it become $1.
Agent B's winner bid is $4, and after second price it become $2.

So it is sadly agent A lose the auction because it use second price auction. And after this, more and more ad exchange start adopting first price auction which use original price to bid.

More pressure on DSP

auction
From above diagram, you can see there are duplicate bidding in one auction. Currently there are 6 agents per publisher in average. So it put a bid pressure on DSP.