top of page

About VAST tags

The Interactive Advertising Bureau (IAB) has released a specification known as the Digital Video Ad Serving Template (VAST) to standardize the communication requirements between video players and the ad servers.

 

To deliver a video ad within a video player, the video player makes an ad request using an Ad Tag to a VAST compliant ad server.

An ad tag is a simple HTTP based URL that typically appears as follows:

 

 

 

In response, the ad server returns a VAST data structure - an XML template that declares the following:

  • The ad creatives to play

  • How they should be played

  • What to track as they play

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

When ads are served directly from a publisher’s system to the video player, the VAST ad serving process is as follows: 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The diagram below illustrates the process for serving ads when a secondary ad server is involved: 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ad Types Supported by VAST 

 

 

In-stream video ads may be a video that plays before, after or in the middle of the publisher’s content video (Linear), or the ad may be an image ad that overlays content video while the content video is in progress (NonLinear). 

Some Linear and NonLinear Ad types are described in further detail below: 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Macros

 

 

Sometimes ad servers would like to collect metadata from the video player when tracking event URIs are accessed. For example, the position of the video player playhead at the time a tracking event URI is accessed is useful to the ad server and is data that can only be known at the time of the prescribed tracking event. This data cannot be built into the URI at the time the VAST response is built and served.

 

 

The following macros enable the video player to provide certain details to the ad server at the time tracking URIs are accessed.

 

  •  [ERRORCODE]: replaced with one of the error codes listed in section 2.4.2.3 when the associated error occurs; reserved for error tracking  URIs. 

  •  [CONTENTPLAYHEAD]: replaced with the current time offset “HH:MM:SS.mmm” of the video content.

  •  [CACHEBUSTING]: replaced with a random 8ddigit number. 

  •  [ASSETURI]: replaced with the URI of the ad asset being played.

 

 

When replacing macros, the video player must correctly percentdencode any characters as defined by RFC 3986. 

 

 

VAST doesn’t provide any guidance on URI format, but using the [CACHEBUSTING] macro simplifies trafficking, enabling ad servers to easily search and replace the appropriate macro for cache busting.

 

 

Additional Information:

 

 

 

 

 

 

bottom of page