SpringServe allows publishers to include video header bidding (both client-side and server-side) as part of their demand stack.
NOTE: On VPAID supply tags, these demand tags are automatically added to a Broadcast tier of targeted supply tags' waterfalls.
Creating Header Bidding Demand Tags
To create new header bidding demand tags, go to the Demand tab and begin the standard demand tag creation process which can be done through a specific demand partner, campaign, or in the Demand tab by selecting "+Demand".
Enter the desired settings for the tag as usual, and set the tag Demand Class to Header Bidding
Once this demand class is selected, a few new options will appear. These are:
Platform
Select the platform this header bidding tag belongs to. This will reveal the bid parameters specific to that platform, as well as an icon next to platform indicating which integration types are supported (i.e. client-side and/or server-side). More information on integrating tags from these platforms can be found in the "Supported Platforms" section below.
Floor Type
Choose which type of floor will be applied to the bids coming through this tag. A Static floor is a fixed rate that SpringServe will use to ignore any bids that fall below the entered value.
NOTE: Depending on the demand partner, this floor may not be the same as the floor entered in the bidder's platform. See "Supported Platforms" for more information on what to enter for each partner.
A Dynamic margin will adjust the floor value depending on the rate of the supply tag (e.g. a 20% dynamic margin on a $10 supply tag will submit a floor of $12).
NOTE: A demand partner with a dynamic margin running on a supply tag with revshare or dynamic payment terms will set the submitted floor to $0.01.
Floor Rate/Margin
The static value or margin to calculate when SpringServe submits the floor in the header bidding request.
Bid Parameters
The platform-specific id(s) that connect this demand tag with the header bidding partner's tag. This can usually be found in the endpoint of the partner's tag (for more details, reference "Supported Platforms").
Adding Header Bidding Demand Tags to Supply Tags
Connecting header bidding tags to supply follows the standard process in SpringServe.
Either navigate to the Supply Tags tab on the header bidding demand tag to Add Manually or Copy From Demand
Or once the demand tag has been created, add it from the Demand Tags tab on the desired supply tag:
Adding header bidding demand tags will enable BroadFall on the targeted supply.
NOTE: Header bidding demand tags must be inside a broadcast-enabled tier and cannot serve on Flash or VPAID None supply.
Supported Platforms
Audience Media TV
Supported Integrations: Client Side and Server Side
Beachfront
Supported Integrations: Client Side and Server Side
To add a Beachfront header bidding demand tag, select Beachfront from the Platform drop-down.
Once the floor has been set, input the App ID.
bRealTime (EMX Legacy)
Supported Integrations: Client Side
To add a bRealTime header bidding demand tag, select bRealtime from the Platform drop-down.
Once the floor has been set, input the Placement ID.
NOTE: bRealTime's header bidding integration is done through Xandr, so the optional bid parameters used in the Xandr platform can be used here as well.
Conversant
Supported Integrations: Client Side
To add a Conversant header bidding demand tag, select Conversant from the Platform drop-down.
Once the floor has been set, input the Site ID.
DMX
Supported Integrations: Server Side
Digital Remedy
Supported Integrations: Client Side and Server Side
district m
To add a district m header bidding demand tag, select district m from the Platform drop-down.
Once the floor has been set, input the Placement ID.
NOTE: Similar to bRealTime, district m's integration is done through Xandr, so the optional bid params for Xandr can potentially be applied here.
EMX Digital
Supported Integrations: Client Side and Server Side
Elemental TV
Supported Integrations: Server Side
Facebook Audience Network (Beta)
Supported Integrations: Client Side
Freewheel (Beta)
Supported Integrations: Client Side
GumGum
Supported Integrations: Server Side
Improve Digital
Supported Integrations: Client Side
Index Exchange
Supported Integrations: Client Side and Server Side
To add an Index Exchange header bidding demand tag, select Index Exchange from the Platform drop-down.
Once the floor has been set, input the SiteId.
NOTE: Please check with your Index Exchange account representative to make sure that header bidding is enabled on their end.
InMobi
Supported Integrations: Server Side
LKQD
Supported Integrations: Client Side and Server Side
NoBid
Supported Integrations: Server Side
OneTag
Supported Integrations: Client Side
OpenX
Supported Integrations: Client Side and Server Side
To add an OpenX header bidding demand tag, select OpenX from the Platform drop-down.
Once the floor is set, input the delivery domain and the ad unit id into their respective fields in "Bid Parameters".
NOTE: Please check with your OpenX account representative to make sure that header bidding is enabled on this ad unit.
The delivery domain and ad unit id can usually be found in the OpenX endpoint, with the ad unit id identified by the auid= parameter – e.g. https://testing-d.openx.net/v/1.0/av?auid=987654&cb={{CACHEBUSTER}}&url={{URL}}&vwd={{WIDTH}}&vht={{HEIGHT}}&c.size=small
Origin Media
Supported Integrations: Server Side
PubMatic
Supported Integrations: Client Side and Server Side
To add a PubMatic header bidding demand tag, select Pubmatic from the Platform drop-down.
Once the floor has been set, input the Publisher ID, Ad Slot, and select the linearity.
PulsePoint
Supported Integrations: Client Side and Server Side
Rubicon
Supported Integrations: Client Side
To add a Rubicon header bidding demand tag, select Rubicon from the Platform drop-down. Once Rubicon has been selected, set the floor do its desired type and value.
Rubicon requires a number of bid parameters, these include account id, site id, zone id, and size id. These can usually be found in your Rubicon endpoint:
The size id in Rubicon indicates the position of the video ad.
Size ID | Position |
---|---|
201 | Pre-Roll |
202 | Interstitial |
203 | OutStream |
204 | Mid-Roll |
205 | Post-Roll |
207 | Vertical Video |
Once you've obtained these 4 ids, just input them into the bid parameters of the demand tag and save.
Smaato
Supported Integrations: Server Side
Smart Ad Server
Supported Integrations: Client Side and Server Side
Sonobi
Supported Integrations: Client Side and Server Side
SpotX
Supported Integrations: Client Side and Server Side
To add a SpotX header bidding demand tag, select SpotX from the Platform drop-down.
When setting the floor for SpotX Header Bidding tags, it's important to keep in mind that SpotX returns net bids, so the floors should be set to a net rate despite the fact that often such rates are displayed in gross within the SpotX platform.
NOTE: For SpotX in particular, both performance and overall bid behavior have historically been adversely affected by mismatched floors. It is because of this that SpringServe recommends that floors in SpotX are set to an equivalent value to the floor in SpringServe, and recommend static floors over dynamic floors.
Once the floor set, the only bid parameter required is the SpotX Channel ID. This can be found on the selected channel in SpotX:
Or in the url or that same page in parentheses:
Or in the SpotX tag itself just before "?VPAID":
Lastly, input this channel id in its respective field in SpringServe.
Synacor
Supported Integrations: Client Side and Server Side
TappX
Supported Integrations: Server Side
Telaria
To add a Telaria header bidding demand tag, select Telaria from the Platform drop-down.
If a static floor is chosen, set the floor rate based on the minimum net CPM that is expected from Telaria. Though floors in Telaria's platform are usually set at their gross values, the bids they return in header bidding are net which means that reporting in SpringServe will show Telaria net revenue and the floor set in SpringServe must be the net CPM.
Once the floor type and rate/margin is set, the required bid parameters are Supply Code and Ad Code.
The supply code is the "code" of the parent supply for this Telaria tag. For example, if I have an ad unit called "Header Bidding Tag" whose parent supply in Telaria is "Example.com", the supply code is the string of characters in the Code field for Example.com:
The ad code is the "code" of the Telaria ad unit itself, so in this case, the string of characters in the Code field for Header Bidding Tag:
Alternatively, both of these ids can be found in the exported ad code of the ad unit.
The supply code is the id directly before "ads.tremorhub.com" (in red), and the ad code is found in the "adCode" querystring parameter (in purple).
Once these ids are retrieved, input them into their respective fields in SpringServe.
TheMediaGrid
Supported Integrations: Client Side
TripleLift
Supported Integrations: Client Side and Server Side
Unruly
Supported Integrations: Client Side and Server Side
Name | Description | Example | Type |
---|---|---|---|
Path | String issued by Unruly to the publisher | mvo | str |
Placement ID | ID issued by Unruly to the publisher | 123456 | str |
Zone | String issued by RhythmOne to the publisher | 1R | str |
Verizon Media
Supported Integrations: Client Side and Server Side
Name | Description | Example | Type |
---|---|---|---|
Pub Id | Publisher ID of the publisher provided by Video SSP | mypub | str |
Site Id | Identification number of the site | 12345 | str |
Placement | ID of the RTB Inventory source setup in Video SSP platform for this ad unit | 123456 | str |
rewarded | Is the inventory a Rewarded Video 0 = No, 1 = Yes | 1 | str |
Vuble
Supported Integrations: Client Side
To add a Vuble header bidding demand tag, select Vuble from the Platform drop-down.
Once the floor has been set, input the Publisher ID, Zone ID, and select the Environment and Context.
Yieldmo
Supported Integrations: Server Side
Yield Nexus
To add a Yield Nexus header bidding demand tag, select Yield Nexus from the Platform drop-down.
Once the floor has been set, input the SPID and set the "Is An Interstitial" flag.
Xandr
Supported Integrations: Client Side and Server Side
To add a Xandr header bidding demand tag, select Xandr from the Platform drop-down.
If a static floor is chosen, set the floor rate based on the minimum net value that is expected from Xandr (i.e. the minimum RPM you wish to see in Xandr reporting for this tag). Since Xandr returns net to publisher bid values, the revenue in SpringServe should line up closely with the revenue in your Xandr account.
Once the floor type and rate/margin is set, the only bid parameter required is the Xandr Placement ID. This id can either be found in the ID column of the placement in Xandr:
Or in the id querystring parameter of the exported tag:
NOTE: This must be a video-enabled Xandr placement. Make sure that Video is included as an allowed media type in the placement settings and that the Xandr url in the exported placement looks something like "http://ib.adnxs.com/ptv" and not "http://ib.adnxs.com/ttj".
Enter this placement id in its respective field in SpringServe.
Optional Parameters
SpringServe offers publishers the ability to pass additional parameters on header bidding demand tags for certain platforms. If optional params are available for that platform, you should see a place to add them in the "Bid Parameters" section of the demand tag settings. Simply click "+Optional Parameter" to add a new parameter. Clicking this button will allow you to choose from a drop-down of keys, with a field for the values to the right. These params will be different depending on the platform that is selected.
NOTE: Users must pass values that are compatible with that key. Macros are accepted as well for certain keys, but not all. See tables below for reference.
Xandr Optional Parameters
(see Xandr documentation for complete descriptions of each param)
Parameter | Example Input | Macros Accepted |
---|---|---|
code | 1234567 | yes |
context | 1 | no |
ext_inv_code | 22 | yes |
frameworks | 2,3,4 | no |
keywords | key=value&external_id=5419 | yes |
maxduration | 60 | no |
mimes | 1,2 | no |
minduration | 15 | no |
playback_method | 2 | no |
position | 1 | no |
prevent_deals | false | no |
skippable | true | no |
NOTE: "Keywords" is Xandr' parameter for custom key-value pairs. These should all be inputted in the same field, separated by ampersands.
DO NOT include the "kw_" prefix in the keys that is sometimes found in other types of Xandr calls.
OpenX Optional Parameters
Parameter | Example Input | Macros Accepted |
---|---|---|
customParams | key=value&list[]=entry1&list[]=entry2 | yes |
NOTE: The "customParams" parameter for OpenX is an object that allows strings and string arrays. In the example above, the object contains both a list, list = ['entry1', 'entry2'], and a string, key='value'.
Rubicon Optional Parameters
Parameter | Example Input | Macros Accepted |
---|---|---|
inventory | rating[]=5-star&prodtype[]=tech&prodtype[]=mobile | yes |
visitor | ucat[]=new&search[]=iphone | yes |
NOTE: Both of the Rubicon optional params are objects that take string arrays as their values.
SpotX Optional Parameters
(see SpotX documentation for complete descriptions of each param)
Parameter | Example Input | Macros Accepted |
---|---|---|
ad_mute | false | no |
content_id | 9876543210 | yes |
custom | category=sports&wgt=9&vid=test | yes |
NOTE: Similar to Xandr "keywords", the SpotX "custom" parameter is where custom key-value pairs should be inputted, separated by ampersands.
Removing Fees for Bidders Returning Gross Prices
Some bidders will return bid prices that are gross to the seller, meaning that the bidder's fee(s) have not been taken out of the bid price. This is problematic because it has the potential to give those bidders an unfair advantage over others that return net bids, and it can cause issues for rev share/dynamic supply tags that rely on an accurate revenue number to calculate cost.
In order to solve for such bidders, SpringServe has the option on the Demand Partner or the Campaign to remove a fee % directly from the bid price. This will allow SpringServe to net out the bids from such bidders and report on this net amount as opposed to the gross value.
NOTE: Enabling this option means that the fee is taken out of the revenue in reporting instead of being logged as a third party fee.