Tech Stack · Ad Serving

What is VAST in CTV advertising?

VAST stands for Video Ad Serving Template. It is an XML-based protocol developed by the IAB that defines how a CTV app (or any video player) requests an ad from an ad server and receives back the instructions for playing it.

When a CTV app reaches an ad break, it sends an HTTP request to an ad server URL. The ad server responds with a VAST XML document containing: the media file URL (the actual video), the ad duration, tracking event URLs (for impression beacons, quartile fires, and completion), and click-through URLs. The CTV app reads the VAST response, fetches the video file, plays it, and fires the tracking beacons at the correct moments. VAST does not deliver the video itself — it delivers the instructions for playing it.

VAST is also used in wrapper chains: a VAST response that points to another VAST URL rather than a media file directly. This is common in programmatic CTV, where a DSP's VAST wrapper points to a verification vendor's VAST, which points to the actual creative. Each wrapper adds a network hop and a potential failure point — VAST error code 303 (wrapper limit reached) is one of the most common delivery errors in India CTV campaigns running deep wrapper chains.

The current standard is VAST 4.x, which added SSAI compatibility, interactive elements, and viewability measurement support. In India, VAST 2.0 and 3.0 are still common on older CTV app implementations, which limits support for newer measurement features.

Related questions

For a full technical breakdown, see the VAST in CTV knowledge base article.