Video Ads are driving the digital ad spend on the Open Internet. And, VAST tag is propelling the adoption of Video Ads. So, isn’t it makes sense to say VAST tags are responsible for the growth of video ads?
In fact, eMarketer’s latest forecast predicted that video ads will grow 30% this year and will take up 25% of the US digital ad spend.
And, the growth is as impressive in other markets as in the US. As per source, video ad spend will grow at a CAGR of 16.5% in Asia.
What does this mean?
You need to ramp up your video advertising strategy and revisit the jargons you’ve skipped in the past. In this piece, we’ll stick to VAST. Without a doubt, you should have come across terms like VAST, VAST tag, VPAID, etc. when there’s a talk about video ads.
What is VAST, anyway?
At its simplest form, VAST is a script designed to allow video players and ad servers to communicate with each other so that the video ad will be served properly or in an expected manner.
It instructs the video player how to get the ad, where to redirect the user after the CTA, when to render the ad, how long should the ad be run, etc. Besides, information about tracking pixels and other adtech vendors will also be included in the tag.
If you peel the VAST tag, you could find an XML Schema* that describes how the video player should handle the ad from the server and other tracking details.
*XML which stands for eXtensible Markup Langauge is developed to store and transport data. The notable aspect of the language is that it’s both human- and machine-readable. Hence, we use it to let ad tech communicate.
How VAST works?
VAST working process can be summarized in just three events.
VAST Request – This is the request sent by the video player to the ad server in order to retrieve the ad.
VAST Inline Response – The ad server receives the request and responds back with an inline response containing the media files and necessary tracking URLs.
Tracking URLs Pinged – Once the desired/specified events have occurred, the video player will fire the tracking pixels/URLs to let other parties record and measure impressions.
The working varies slightly if a second ad server is involved in the flow.
Who Created VAST?
IAB created VAST and has been updating it since its inception to meet the growing needs of the ecosystem. VAST 1.0 was released in 2008 and now we’re at VAST 4.1 (June 2018 release). However, the adoption rate is slow and the debate still goes on to improve it.
VAST tags are backward compatible, thus, preventing any interruption in the supply chain. All the major video players support some sort of VAST and VPAID to ensure video ads are served as expected.
How VAST 4.1 is better than the other versions?
VAST 4.1 will address key issues and provide significant improvements on Video Ad Serving Template, which is currently used by the adtech. Noticeably,
- AdServingID has been included to simplify the comparison of impressions across the various systems, thus, facilitating better measurement.
- VAST Interactive Templates has been introduced by the Tech Lab to standardize interactive ads.
- Closed captioning feature.
VAST Tag Example
We’ve shared VAST Tag 1.0 and 4.0 here to help you discern the difference and what have been included along the way.
VAST 1.0 Example
<video width="300" height="150"> <duration>00:00:15</duration> <adid>preroll-1</adid> <adparameters apiframework="vpaid"></adparameters> <mediafiles> <mediafile width="600" type="video/mp4" height="396" delivery="progressive" bitrate="496"> <url> <![CDATA[https://iabtechlab.com/wp-content/uploads/2016/07/VAST-4.0-Short-Intro.mp4]]> </url> </mediafile> </mediafiles> </video> </code> <![CDATA[ <a onClick="alert('click');var i= new Image(1,1); i.src='http://app.scanscout.com/ssframework/log/log.png?a=logitemaction&RI=532354&CbC=1&CbF=true&EC=0&RC=0&SmC=2&CbM=1.0E-5&VI=5a33ec4ffcdc3cab1c5680270a506db2&admode=preroll&PRI=4789421146443017981&RprC=0&ADsn=15&VcaI=192,197&RrC=1&VgI=5a33ec4ffcdc3cab1c5680270a506db2&AVI=142&Ust=ma&Uctry=us&CI=1177822&AC=4&PI=567&Udma=506&ADI=5700147&VclF=true';" href="http://www.calphalon.com" target="_blank" rel="noopener noreferrer"><img src="http://s0.2mdn.net/viewad/2401054/300x250_PreRollCompanionBanner_30k.jpg" width=300 height=250 border=0></a> <img src="http://app.scanscout.com/ssframework/log/log.png?a=logitemaction&RI=532354&CbC=1&CbF=true&EC=1&RC=0&SmC=2&CbM=1.0E-5&VI=5a33ec4ffcdc3cab1c5680270a506db2&admode=preroll&PRI=4789421146443017981&RprC=0&ADsn=15&VcaI=192,197&RrC=1&VgI=5a33ec4ffcdc3cab1c5680270a506db2&AVI=142&Ust=ma&Uctry=us&CI=1177822&AC=4&PI=567&Udma=506&ADI=5700147&VclF=true" height="1" width="1"> ]]> </code>
VAST 4.0 Example
<VAST version="4.0" xmlns="http://www.iab.com/VAST"> </Ad id="20010" sequence="1" conditionalAd="false"> <Wrapper followAdditionalWrappers="0" allowMultipleAds="1" fallbackOnNoAd="0"> <AdSystem version="4.0">iabtechlab</AdSystem> <Error>http://example.com/error</Error> <Impression id="Impression-ID">http://example.com/track/impression</Impression> <ViewableImpression id="1543"> <Viewable> <![CDATA[http://search.iabtechlab.com/error?errcode=102&imprid=s5-ea2f7f298e28c0c98374491aec3dfeb1&ts=1243]]> </Viewable> <NotViewable> <![CDATA[http://search.iabtechlab.com/error?errcode=102&imprid=s5-ea2f7f298e28c0c98374491aec3dfeb1&ts=1243]]> </NotViewable> <ViewUndetermined> <![CDATA[http://search.iabtechlab.com/error?errcode=102&imprid=s5-ea2f7f298e28c0c98374491aec3dfeb1&ts=1243]]> </ViewUndetermined> </ViewableImpression> <Creatives> <Creative id="5480" sequence="1" adId="2447226"> <Linear> <TrackingEvents> <Tracking event="start">http://example.com/tracking/start</Tracking> <Tracking event="progress" offset="00:00:10">http://example.com/tracking/progress-10</Tracking> </TrackingEvents> </Linear> </Creative> </Creatives> <VASTAdTagURI> <![CDATA[https://raw.githubusercontent.com/InteractiveAdvertisingBureau/VAST_Samples/master/VAST%204.0%20Samples/Inline_Companion_Tag-test.xml]]> </VASTAdTagURI> </Wrapper> </Ad> </VAST>
How to Create a VAST Tag?
– Using Google Ad Manager
If you use Google Ad Manager (Google DFP), generating a VAST Tag is pretty straightforward.
- Sign in to Google Ad Manager.
- Click Inventory and then Ad units.
- Locate and click your video ad unit.
- Click Generate tags.
- Complete the 3-step process and click Continue after each step (Tag type, Tag Options, and Tag Results)
- Click done.
You can construct the tag manually by using the predefined parameters. For instance, ‘sz’ specifies the size of the master video ad slot. sz=400×300. After defining the values of the necessary parameters, you can stitch it together to make an XML.
AdOps engineers use the parameters to edit/check the VAST tag as there is no value-add in creating it manually.
– Third-Party Tools
In addition, there are a couple of VAST tag generators (offered by the video players) in the market which can help you generate the template.
Note: You need to make sure your video players are supporting the specifications to prevent errors. If you’re using Google Ad Manager, you can take a look at the supporting players here.
VAST Tag Validator
Of course, there’s a handful of options to validate your VAST tags. The best ones are from Google and SpringServe.
In case you don’t know, IAB offers its own VAST validator. It is in beta and you need to be a registered member to access it.
VAST Tag validators work by actually implementing the code. They make the calls to the respective URLs to render the ad creative and track the basic ad events including clicks, ad completion percentage, and ad errors.
Debugging a VAST Tag:
Debugging a tag would be fairly simple as you just have to look at the parameters and the respective values in the tag. However, it doesn’t mean there are no chances for any schema specific/server-side errors.
Some of the VAST errors include:
100 | VAST XML parsing error
Cause: This can be caused when the buyer’s response is either malformed or an otherwise invalid XML document or a redirect VAST URL that fails to resolve successfully.
Recommended action: Alert the buyer
101 | VAST schema validation error
Cause: This can be caused when the buyer’s response is missing required elements or attributes of the XML or contained unrecognized elements, according to the IAB standard.
Recommended action: Alert the buyer.
301 | VAST redirect timeout reached
Cause: This can be caused when a VAST redirect tag does not return a response within the timeout (5 seconds is the default) specified in a wrapper element. It could include request errors, such as an invalid URI, unreachable or request timeout for a URI, security, or other exceptions related to requesting a VAST URI. It could also be due to a high latency connection (for example, 3G) or simply a slow response from a buyer.
Recommended action: Increase the timeout limit of your player via the SDK.
The complete list can be found here.
Benefits of VAST
As obvious as it seems, both publishers and advertisers can save time, technical implementation, and overhauling cost by simply adhering to the VAST standard. Because that’s a universal format everyone uses in the industry.
Whether it is FreeWheel or Google Ad Manager, your player will render and run ads without any errors. And, especially with recent updates (VAST 4.0 and 4.1), verification and viewability vendors can easily get into the VAST tag to do their jobs.
As a whole, VAST is one of the reasons behind the traction of digital video ads in the open internet. Though it’s not perfect, the consortiums and feedback will take us to the best possible solution.
How long have you been using VAST and what is the one thing that needs to be improved in the VAST tag?