VAST vs VPAID: video ad tags explained
What VAST and VPAID actually are, how Epom serves each across its five video banner types, which VAST versions the placement tag offers, and why VAST is the more transparent format.
VAST and VPAID are two IAB standards you will meet the moment you traffic video in Epom. They are often named in the same breath (“a VAST/VPAID tag”), but they solve different problems: one describes what video ad to play, the other lets the ad run its own code inside the player. Knowing the difference tells you which banner type to pick, why one third-party tag is more transparent than another, and what the VAST tag URLs on a video placement are for.
The two standards, in one paragraph each
VAST (Video Ad Serving Template) is an XML document. It answers “which media file do I play, where does the click go, and which pixels do I fire at each playback milestone?” The player parses the XML, downloads the media file, plays it, and fires the tracking beacons VAST lists (start, first quartile, midpoint, third quartile, complete, and so on). The ad is passive data — the player is in control the whole time. Epom serves VAST 2.0 through 4.3 (IAB never published a 4.3 schema, so the 4.3 tag serves the 4.2 structure under a 4.3 version string, for players and partners that insist on seeing it); each version adds capabilities (3.0 added ad pods and skippable ads, 4.0 separated media from verification and interactivity, and 4.1 is where Open Measurement became usable — see viewability), but the shape is the same: an XML template the player renders.
VPAID (Video Player-Ad Interface Definition) is a runtime contract, not a document. A VPAID creative ships executable code (historically a Flash SWF, later a JavaScript module) that the player loads and hands control to. The code can draw interactive overlays, expand, collect its own metrics, and decide when the ad is “done”. This power is exactly why VPAID is being retired: it is a security and performance liability (arbitrary code inside the player), it doesn’t work in server-side ad insertion, and the industry has moved to VAST 4.x plus Open Measurement for verification. Epom still supports VPAID — deprecated is not the same as removed — but treat it as legacy, and note that a VPAID tag is one of the things Open Measurement does not cover.
A VPAID creative is almost always delivered inside a VAST wrapper: the VAST XML points at a
VPAID media file instead of a plain video. That is why the two names travel together.
Note: VMAP (Video Multiple Ad Playlist) is a third, orthogonal standard — it schedules when ad breaks happen in a content stream (pre-roll, mid-roll, post-roll) and hands each break off to a VAST response. It is not an alternative to VAST/VPAID; it wraps them.
How Epom’s five video banner types map onto this
Every video banner Epom serves ultimately produces (or proxies) a VAST response. The five video banner types differ only in where the video comes from:
| Banner type | What it is | VAST or VPAID |
|---|---|---|
| Local Video | You upload the file; Epom hosts it and wraps it in VAST. | VAST (Epom-generated) |
| External Video | You give a hosted file URL; Epom wraps it in VAST. | VAST (Epom-generated) |
| Third Party VAST/VPAID Tag URL | Another ad server hands you a tag; Epom proxies it. | Either — depends on what the third party returns |
| VPAID Framework | An interactive VPAID framework your network administrator installed, parameterised per banner. | VPAID |
| Advanced Local Video(s) (Beta) | Multiple renditions/media files in one VAST response. | VAST (Epom-generated, multi-MediaFile) |
For the first two and the last, Epom writes the VAST — so it knows the media file, can inject
its own impression and click tracking, and the creative is fully inspectable. For the tag-URL
type, Epom is a proxy: it fetches whatever the third party returns and passes it through
(injecting its own tracking pixels into the <InLine>/<Wrapper> before serving). The
VPAID Framework type is the one case where Epom deliberately serves interactive VPAID.
Corner case: the internal name of the tag-URL type is
VAST_2_0_TAG_URL, but its label is the generic Third Party VAST/VPAID Tag URL — the “2.0” is historical. It accepts any VAST version the partner returns; it does not downgrade the response to 2.0.
Linear vs non-linear (the In-Stream video type)
Independent of VAST/VPAID, a video ad is linear or non-linear:
- Linear — the ad takes over the video slot and plays in the timeline (pre/mid/post-roll).
- Non-linear — an overlay shown over the content while it keeps playing (a banner strip).
On a tag-URL banner you set this with the In-Stream video type field, and it is not free choice per type: linear video is available on every video banner type, while non-linear is limited to the tag-URL, HTML Code and file types — Local/External/Advanced Video and the VPAID Framework are linear-only. Pick the wrong one and a player that expected a linear pre-roll gets an overlay (or vice-versa).
The VAST tag URLs on a placement
A video placement exposes three tag URLs, and the player loads exactly one:
| Tag | Player asks for | Serves |
|---|---|---|
| VAST | A specific VAST version — chosen with the VAST version picker (2.0, 3.0, 4.0, 4.1, 4.2, 4.3; 4.2 by default) | Whatever linked demand resolves, rendered as that VAST version |
| VPAID | An interactive video slot | The VPAID-capable response (at a version fixed on the server — it does not follow the picker) |
| VMAP | A break playlist for a content stream | A VMAP document scheduling VAST breaks (its inner VAST is 3.0) |
The version in the URL tells Epom which VAST dialect to speak back; the demand that fills it is the same pool either way. It is not a purely cosmetic choice, though — the version decides whether the response can be viewability-measured (4.1 and up), which is why the picker defaults to 4.2. See Video viewability and Open Measurement.
Scope: this describes the new interface, where one VAST tag field is driven by a version picker. The classic placement page still shows a fixed row per tag — VAST 3.0, VAST 4.0, VPAID and VMAP — with no picker and no way to reach 4.1, 4.2 or 4.3. If you need a measurable tag, copy it from the new interface.
When Epom requests programmatic video from a DSP on this placement, it advertises support for VAST 2.0, 3.0 and 4.0 plus their wrapper variants in the bid request — so a DSP can return an inline creative or a wrapper chain and Epom’s player will follow it. That list is about what bidders may return, and it is deliberately narrower than the versions Epom serves to your own players.
Why VAST is the more transparent format
This is the trafficking decision the whole page builds toward. A plain VAST creative is declarative XML pointing at a media file and a click-through: you can read exactly what it will show and where it sends the viewer. A VPAID creative is code that runs in the player, so what it does is only visible when it runs. When you have the choice, VAST is the safer format.
Practical decisions
- You have the file and want full tracking and transparency → Local / External / Advanced Video (Epom-generated VAST). Epom owns the markup, injects its own pixels, and the creative is clean.
- A partner hands you a tag → Third Party VAST/VPAID Tag URL. Accept that if they return VPAID you lose some transparency and server-side control.
- You need genuine interactivity → VPAID Framework, understanding it’s legacy.
- You’re buying video programmatically → an OpenRTB banner with video mime types; the DSP’s creatives are scanned when that partner has scanning on.