Post-bid allows a publisher’s mediated demand sources all compete in one auction based on price, after the ad server has picked the post-bid line item.
In post-bid, the competition among your mediated demand sources compete AFTER your ad server has chosen the winning line item (vs. in header bidding, demand sources compete BEFORE your ad server has seen the impression). In post-bid, your mediated demand sources no longer run daisy chain; they all compete in one single line item based on price.
The main reasons we have seen publishers opt for post-bid (instead of header bidding) are:
The Post-bid creative is just a 3rd party tag. Once it’s served to the page, prebid.js runs an auction across all demand sources. The only technical work is to insert the tag Ids into the 3rd party tag’s JSON config for your demand sources. It’s trivial work.
Because post-bid is just a 3rd party tag, your ad server receives the impressions as soon as the page loads. The post-bid setup does not affect the class 1 or exchange spend. Post-bid actually reduces latency compared to a daisy chain mediation setup, because in post-bid all demand sources are requested concurrently, instead of in a waterfall.
Additionally, post-bid does not need additional line items. The initial setup is easier than header bidding.
We’ve listed the advantages of post-bid over header bidding in the previous section. The disadvantages are listed below:
The bid price on the post-bid line item is static (based on historical price). It thus has the typical problems of a 3rd party tag line item. Due to this downside, the Post-bid setup cannot make your demand partners compete with class 1 or exchanges.
In your ad server’s post-bid line item report, you’d only get an aggregated report of all demand sources. You may need to rely on a 3rd party reporting service to record which demand partner wins how much inventory.
|Mediation||Post-bid||Pre-bid (header bidding)|
|Engineering Resources||Not required||Not required||Required|
|Ad Latency||No additional class 1 latency. Waterfall adds latency when networks do not fill.||No additional class 1 latency. Parallel auction for demand sources thus minimum latency.||Additional class 1 latency from the page’s timeout setting.|
|Compete among demand sources||No||Yes||Yes|
|Compete with Class 1 & AdX dynamic allocation||No||No||Yes|
|Block page content from loading?||No||No||No (with prebid.js)|
Yes. Check out the example.