What is post-bidding? And how does it work?
Maximizing yield is a constantly shifting goal post for web publishers and their ad operations teams. There’s always something new around the corner that promises that little extra bit of lift in CPMs, fill rate, impressions, or any of the other metrics that are tied to overall yield.
In this guide, we’ll talk about post-bidding, a technique that publishers are using in conjunction with header bidding to drive incremental revenue from inventory that would have otherwise gone unfilled. We’ll explain what post-bidding is, how it works, its advantages and disadvantages, how it’s different from header bidding, and finally—does it belong in your ad stack?
What is post-bidding?
Most publishers are familiar with and use header bidding (aka pre-bidding) as part of their programmatic monetization strategy. By allowing multiple demand partners to bid on available impressions in real-time and on equal footing, header bidding delivers better overall yield and overcomes some of the efficiencies associated with the older waterfall method of ad serving.
However, header bidding can fall short of achieving a 100% fill rate, especially if the timeouts are not optimized, page latency is too high, or there are not enough demand partners in the mix. To improve fill rate, publishers can either review and optimize the header bidding wrapper configuration or use post-bidding to monetize the unfilled inventory—ideally both.
In a post-bid setup, demand sources compete after the ad server has chosen the post-bid line item. This is different from header bidding, in which demand sources compete before the ad server has seen the impression. As you’ll see later, that small change makes a big difference.
How does post-bidding work?
Here’s how the post-bid setup works:
- The webpage sends an impression to the ad server (like GAM).
- The ad server chooses a line item among direct-sold ads, participating exchanges (like AdX), and the post-bid line item based on a unified auction.
- The post-bid line item wins based on historic price in this case (as shown in the illustration courtesy of Prebid.org).
- The post-bid line item’s creative is served to the page. The creative runs an auction via the wrapper (like Prebid.js), which then displays the highest price creative in that ad slot.
Advantages of post-bidding
- Easy to implement: Compared to header bidding, there’s very little engineering or development work required to configure post-bidding. All you have to do is insert the third-party tag in your ad slot. Once that’s done, Prebid.js will run the auction across all demand sources each time a post-bid line item wins the auction.
- No additional latency: Since post-bid is just a third-party tag, the ad server receives the impression as soon as the page first loads. This way, the post-bid setup neither contributes additional latency nor affects other ad spend. In fact, by calling all demand sources concurrently, it runs faster compared to the legacy daisy chain mediation setup.
- Can set a fallback: The post-bid is used to monetize any impressions that have gone unfilled by direct-sold campaigns, primary header auction, and connected exchanges but even the post-bid auction can go unfilled. In those scenarios, publishers can configure post-bid line items with fallback settings, including defaulting to a house ad.
Disadvantages of post-bidding
- No dynamic allocation: The post-bid line item is picked based on historical price after the impression is rejected by the ad server. The static price means that the post-bid setup cannot make header bidding partners compete on an equal footing with Google AdX, and you lose out on the bid competition linked to header bidding.
- Prebid.js is loaded for each post-bid item: If multiple ad units on the page fall into the post-bid scenario, each creative will load and run Prebid.js separately. This means more work for the browser. This isn’t necessarily a problem, as the primary content of the site has probably already been loaded before the post-bid calls begin.
- Reporting can be harder: In the ad server’s post-bid line item report, you’ll find aggregate revenue reporting for all the demand sources that participated in the auction. You might therefore need a third-party analytics provider to parse bid-level data and provide enhanced reporting, including revenue breakup by different demand sources.
Post-bidding vs. Header bidding
|Auction trigger||After the ad server has declined the impression||Before the ad server has seen the impression|
|Engineering resources||Not required||Required|
|Ad latency||Parallel auctions after the page load translate to no additional ad serving latency||Contributes additional ad serving latency as auctions happen during page load|
|Can complete among all available demand sources||Yes||Yes|
|Can compete with direct-sold and Google AdX||No||Yes|
Does post-bid have a place in your ad stack?
Post-bidding is a technique used for generating incremental revenue from impressions that have been declined by the ad server at first pass. No matter how well-configured your header bidding stack is, achieving a 100% fill rate is unlikely. This is where post-bid can add value by allowing demand sources to complete for the remnant inventory based on historical price.
However, since post-bid is essentially just a third-party tag, it does not allow demand sources to compete with direct-sold or AdX, which limits bid competition and monetization opportunities. Moreover, Prebid.js is loaded for every single instance of post-bid. So if the primary header bidding setup is not optimized, and too many impressions default to post-bid, the user’s browser will be overworked, and the monetization opportunity for the publisher will be limited.
In conclusion, post-bid can help squeeze out a little extra bit of revenue without any negative impact on user experience, but it’s definitely something to configure and test after the main auction set up before the post-bid event is sufficiently optimized and running as well as it can.