Header Bidding: Why can’t header bidding be done server side?
What’s the reason all header bidding implementations are client side, can’t the same be achieved server side? So instead of a waterfall do an auction by getting pre bids from all the demand partners? What would be the down side to that?
This question was asked on Quora, below is my answer.
Header bidding is designed to expose the clearing price of exchange and SSP auctions so that a publisher’s technology can make an informed decision about which ad to serve. These prices are pitted against each other as well as the publisher’s demand from their primary ad server, usually Doubleclick.
In a perfect world all of this would be done on the server side. The primary benefits would be reduced payload size and lower latency in the browser. It’s not likely to happen, however. It would require SSPs, exchanges and ad servers to figure out how to work with each other in a server-to-server relationship. These companies tend to be competitors; count that as a business reason that will prevent a server side solution.
Additionally, Real-Time Bidding (RTB) is already a server side auction with discrete buy-side demand sources simultaneously bidding on inventory. It is very likely that a server-side header bidding solution would just end up looking exactly like RTB. And, once again, client side header-header bidding would probably come about to try and take advantage of the disparate server-side header bidding solutions.
Ad tech is an endless cycle of invention and reinvention. Buyers and sellers are always on the look out for novel solutions that can give them a little more reach, or make them a little more money, or out-innovate the competition. In the case of header bidding, it comes at a small cost to the user experience with the addition of latency on the page render and a slightly bigger payload.
Edit: There was some back and forth in the comments on this question and I added a technical problem that faces a server-side header bidding solution. SSPs and exchanges need to see the browser cookies to identify the user. That identification is passed on to the DSPs who can then recognize the audience segments in which the user belongs. If the requests are not made from the client (browser) then no cookies can be seen by the SSP or exchange.