By David Springall, Founder & CTO of Yospace.
In a previous post I discussed the concept of “prefetch” for live streams. In this post I’m discussing “prebidding” which is an add-on to prefetch, so if you haven’t read the prefetch post yet I suggest you go through that first – you can find it here.
“Prebidding” is analogous to the concept of “header bidding”, an approach to selecting advertising demand that has become very popular because of its ability to optimise advertising revenues on websites. Header bidding allows advertisers to participate in an online auction for placement on the page while the page is being loaded.
In practical terms, individual advertisers do not participate in the auction, but instead bids are aggregated by systems called Supply-Side Platforms (SSPs) which in turn solicit bids from Demand-Side Platforms (DSPs). It is with the DSP, that the advertiser (or their buying agent) establishes the commercial contract for payment on placement.
Until the concept of header bidding came along, a webpage would get advertisements from a first-party ad server (for example, DoubleClick for Publishers) which would be set-up to define a ‘pecking order’ of SSPs or DSPs that would be given the opportunity to place an ad. If an SSP or DSP couldn’t place an ad, the next SSP/DSP in line would be given the opportunity.
There were a number of problems with this approach. The first was that this cascade could simply take a long time to execute. The second was that it didn’t reflect the fact that the best price could come back from any of the SSPs in the chain – only the first price above the publisher’s bid floor was used, not the best price. And finally, the further down the pecking order an SSP/DSP would be the less insight into how many placement opportunities a given publisher was able to supply.
Having an accurate idea of how many placement opportunities a given publisher is making available is critical to optimising the bid responses. Header bidding allows all SSPs or DSPs to be treated equally by calling to them simultaneously, rather than in a cascade, meaning the best price across all SSPs can be seen and everyone gets to see the placement opportunities and, importantly for the user experience, it’s faster.
Prebidding takes this concept of header bidding to video advertising inserted into a live broadcast stream. In live streaming multiple ad breaks can be viewed by the same user during a single streaming session. This new logic exists inside the Yospace system that is responsible for delivering the stream to the user rather than the header of a web page, hence why the feature is named “prebidding” and not “header bidding”.
The system also solves another issue for the broadcaste, which is the separation of advertising by industry type. If, for example, the first ad in an ad pod (ad break) is a first-party sold automotive ad, prebidding allows the ad server to ensure that no other automotive ad is included in that pod. In addition, if an automotive ad comes back from the SSPs at a higher CPM than the first-party sold ad then the ad server could swap out the first-party sold ad, if the broadcaster configured it to do so. Obviously, there are many nuances to where a broadcaster would want to prioritise higher-priced third party advertising over their own sold ads, but the technology would let them do this.
Until now a typical workflow for server-side ad insertion (SSAI) for live streams has looked like the first workflow here (1. Typical SSAI ad calls):
As you can see from the diagram, the ADS has not had visibility in advance of the SSP decisions. It decides which ad in the pod are to be programmatic but without the foresight to know the CPM or content type of the programmatic ads that are to be stitched into the stream.
In the second diagram (2. Typical prebidding SSAI ad calls), prebidding allows the ADS to see the CPMs and ad types returned by SSPs in the ad call from the SSAI system (Yospace). As a result the ADS is able to make a fully informed decision on which ads to place, resulting in realising the maximum value of the ad pod while ensuring an advertisers message is not diluted.