Thank you! We’ve received your message and will contact you soon.

The Encyclopedia of Video Ad Serving: What VAST, VPAID, VMAP, MRAID, SIMID, and OMID Are and Why You Should Care

Aug 14, 202613 min read
Author Photo
Vladyslav Betsun AdTech Expert
head image

TL;DR:

  • Core Definition: Video ad serving delivers digital video creatives from ad servers to video players using standardized tag stacks (XML schemas and APIs).
  • VAST & VMAP: VAST transfers media files, tracking events, and layout metadata across Web and CTV, while VMAP structures multi-ad insertion schedules across long-form content.
  • VPAID Deprecation: Legacy VPAID enabled ad interactivity but carries an estimated 30% rendering error rate and security vulnerabilities, driving modern deprecation.
  • SIMID & OMID: The modern successors decouple ad responsibilities – SIMID controls publisher-side media rendering and interactivity, while OMID handles advertiser viewability verification.
  • MRAID: Standardizes mobile in-app rich media execution across diverse native mobile SDKs.
  • Platform Implementation: Enterprise platforms like Epom Ad Server utilize modern VAST 4.2, SIMID, and OMID tags to ensure low-latency ad delivery across Web, Mobile, CTV, and OTT environments.

Video is the dish best served warm…

With US digital video ad spend projected to reach 081.9 billion in 2026 (+11% YoY), the underlying technical infrastructure that serves those ads has never mattered more. While 91% of marketers actively run video campaigns, as Google IMA SDK engineer Ryan Thompson noted, "VPAID and SSAI don't work well together – in fact they don’t work at all," making legacy VPAID execution a primary cause of broken SSAI streams and ad revenue loss – making tag stack optimization critical for ad delivery.

Not all video ad platforms handle these formats the same way. The tag stack a platform supports – VAST, VPAID, VMAP, MRAID, or SIMID and OMID – determines what ad types you can actually run and how reliably they deliver without incurring rendering timeouts.

Today, we dig into the technical architecture of video ad serving: how video ads work under the hood, which tags serve what purpose, and how to serve high-performing video ads without technical delivery failures.

Meet VAST, VPAID, VMAP, MRAID, SIMID, and OMID. Let’s roll!

Video Ad Standards Comparison (VAST, VMAP, SIMID, OMID, MRAID)

Protocol / Standard Primary Function Execution Layer Interactivity Support Security & Latency Risk Recommended Modern Use Case
VAST (4.2) Standard for describing and tracking video ad delivery XML Schema Basic (Click-through, tracking events) Minimal risk; fast, player-native execution Primary delivery & tracking layer for Web, CTV, OTT
VMAP Defines structure and timing of multi-ad playlists XML Template (uses VAST) None (playlist structure only) Low risk; timing handled by player Long-form video ad breaks (Pre/Mid/Post-roll)
VPAID (Legacy) Legacy interactive ads & measurement inside player Executable JS / ActionScript in-player High (Custom games, overlays, in-ad logic) High risk (~30% error rate, security & stability issues) Deprecated; migrate to SIMID + OMID
SIMID Secure interface for interactive media separated from player Decoupled Iframe (sandboxed) High (Client-side interactive content) Low risk; player controls sandboxed iframe Modern interactive video ads (branded experiences)
OMID Standardized viewability and impression verification Open Measurement SDK (OM SDK) API None (measurement only) Low risk; single, standardized API footprint Viewability & impression tracking across formats
MRAID (3.0) Rich media and interstitials in mobile apps In-App Native SDK API (ad container) High (Mobile native touch/gestures, expandable units) Moderate risk; depends on SDK and app implementation Mobile in-app rich media, expandable, and interstitial ads

How Does Video Ad Serving Work?

*All video ads are served with the help of video ad tags. Before we move on to them, it’s important to understand the differences in terminology so you don’t get further confused.

Since the first-ever video ad was broadcast on WNBT in 1941, what video ads consist of has changed completely, even as the core idea of pairing ads with content has not. Just like their TV ancestors, video ads can’t exist without the main content, but the ads themselves are quite different.

How Are Video Ads Served?

From a technical standpoint, video ads are served in two ways:

  • Instream

According to the latest IAB guidelines, instream videos are ads served inside the main video player and played with the sound on by default. Like on TV💀 or YouTube, the main player stops when an instream ad launches.

  • Outstream

The video ads that live outside the main video player are called outstream video ads. They don’t require an HTML5 video player and run on mute.

Which one’s better? Well, they serve different purposes, but for the most curious, we’ve already touched upon Instream vs. Outstream ads.

What Video Ad Types Are There?

One more thing before we move on. Ads can also be divided into types based on how they interact with the main content.

Ad Format Category Placement Location Audio Default Player Dependency Key Ad Placements
Instream Linear Inside main video player On by default Requires HTML5 video player Pre-roll, Mid-roll, Post-roll
Instream Non-Linear Inside video player overlay On or Muted Requires HTML5 video player Bottom-third banner overlay, side-scroll
Outstream Non-Linear Outside video content Muted by default No dedicated video player needed In-article, In-feed, Interstitial

What Is Video Ad Serving Template (VAST)?

*We’ll call VAST, VPAID, and others – tags just for the ease of readability.

VAST is responsible for 90% of the ads you’ll see online. This IAB template, initially launched in 2008, is the basis of modern video ad delivery and has been updated several times since to keep pace with how video is consumed.

Technically, VAST is not an ad tag; VAST is an XML schema standard defined by the IAB Tech Lab VAST Specifications that structures ad tags to serve video ads to players – handling timing, media files, and tracking events.

This is the core mechanic of how VAST transfers important metadata, including the media file, tracking elements, and ad format details, from the ad server to the video player.

VAST is the foundation that most video ad serving technology is built on, which is why understanding it first makes everything else easier to follow. Without a working VAST implementation, none of the more advanced standards in this article have anything to build on.

What’s this metadata? VAST consists of:

  • Media file with the ad creative;
  • Tracking elements that map to video events (impression tracker);
  • Ad format (out-in-stream/pre-mid-post-roll, overlay/non-overlay, etc.).

What are the examples of VAST? In raw code, the VAST tag looks something like this:

the examples of VAST video ad tag

With that out of the way, let’s discuss how these elements work together.

How do VAST ads work?

The way video tags work is similar at its core; we’ll explain the basics with VAST.

  • Step # 1. Request. The video player calls an ad server for an ad.
  • Step # 2. Response. The ad server gets the request and responds with a media file and a tracking URL.
  • Step # 3. Tracking. Once the main video triggers, the video player launches the impression tracking URL.
how VAST ad tags work

What Are the Benefits of VAST?

As we’ve mentioned before, most online video ads are served through VAST, and that can be explained by its three core benefits:

  • Seamless and quick communication between ad tech elements;
  • A universal tool that eliminates the need for custom video ad players, thus saving resources;
  • Simplicity of code reduces the risks of playback errors;

What Are the Versions of the VAST Tag?

Each version of the VAST tag builds and improves upon the formula. We, however, don’t really know why anyone would want a full changelog, but since it’s a really popular question, here you go:

VAST video ad tag versions

From VAST 1.0 to modern VAST 4.2, updates introduced Mezzanine files, Universal Ad IDs, and server-side verification nodes. According to IAB Tech Lab VAST Documentation, VAST 4.2 provides the foundational architecture required for low-latency CTV and SSAI streaming environments.

What is VPAID?

Video Player Ad Interface Definition (VPAID) is a block of code that allows video players and video ad units to interact. Currently, there are two versions of VPAID with VPAID 2.0 support and ad resizing.

How Does VPAID work?

A quick glance at the steps below will seem oddly familiar if you’ve read carefully. That’s right, VPAID operates similarly to VAST, but for a better understanding, let’s glide upon the details.

  • Step # 1. Request. The video player sends an ad request to the ad server.
  • Step # 2. Response. The ad server responds with a VAST XML that contains the VPAID.exe ad unit.
  • Step # 3. Communication. The video player and the VPAID ad unit communicate by exchanging information about ad unit properties and video events. In the meantime, the user sees the ad.
  • Step # 4. Impression tracking. The ad unit and the video player send the impression data to their ad servers.
how does VPAID work

VAST vs. VPAID. How to Distinguish VAST from VPAID?

What is the difference between VAST and VPAID? VPAID came as a more advanced and complex version of VAST that allowed serving interactive ads and rich media + tracking how the users interact with them. But that hardly explains anything, so let’s dig deeper.

The VAST and VPAID difference comes down to what each one is actually responsible for. VAST is the delivery layer; VPAID is the interaction layer that sits on top of it.

Okay, big-brain time.

Difference 1. Purpose

VAST establishes communication between the ad server and video player, while VPAID connects the video player and video ad units.

That means that the main mission of VAST is to ensure that video ads run in the video player just how the ad server tells them to. The main objective of VPAID is to build upon this foundation and make sure that more complex ads can interact with the video player.

Difference 2. Form

That’s why VPAID is an executable code that can be implemented in JavaScript or ActionScript.

However, if publishers want to serve VPAID ads, they must ensure their video player supports VPAID API.

VPAID can work independently, but that would be like making a pickup when you can order a delivery. Thus, VPAID is usually served in a VAST template, so you get the simplicity and stability of VAST with the cool features of VPAID.

Difference 3. Functionality

So, what are these features that justify the VPAID hassle? The most notable are:

  • Auto-resume of content after the ad is played;
  • Support of interactive elements;
  • Override when the ad takes too long to load (stops the ad, resumes the content);
  • Resizing of the ad.

VAST vs. VPAID Architectural Comparison

Dimension VAST (Video Ad Serving Template) VPAID (Video Player Ad Interface)
Primary Purpose Standardized video ad delivery & metadata transfer Interactive ad execution & custom event tracking
Code Structure Static XML Schema Executable JavaScript / Flash ActionScript
Control Ownership Video player retains full playback control Ad unit takes control of video player execution
Security Profile High (No arbitrary script execution) Low (Executable script run inside player context)
Rendering Failure Rate Extremely low (<0.5%) High (~30% error/timeout rate)
SSAI / CTV Support Fully supported Not supported (Requires client-side JavaScript)

Both VPAID and VAST serve single video ads, but what if you need multiple ads? Let’s talk about VMAP.

What is VMAP?

Video Multiple Ad Playlist (VMAP) is an XML template that allows playing multiple ads during the video. Yup, nothing too complicated about it.

Once you understand how VAST VPAID VMAP relate to each other, the whole video ad serving stack becomes much easier to work with. VAST handles delivery, VPAID adds interactivity, and VMAP controls when and how often ads appear across longer video content.

VMAP is used in combination with VAST. Think about VMAP as the timecode feature on YouTube. During a video, VMAP tells the player when each of the multiple ads has to launch.

It doesn’t specify which ad has to play; that’s the job of an ad server.

Why Is VMAP Used?

VMAP is a tool designed to solve really specific problems. Let’s say you’re an advertiser who wants to insert an ad into a YouTube video or other user generated content where you have no direct control over the player.. You don’t have much control over ad timestamps; neither does the content publisher.

VMAP allows to configure the number of ads, ad breaks, and their availability. Needless to say, how useful it is.

VMAP doesn't make much sense if you control the player directly, but for syndicated or shared videos distributed across third-party environments, it becomes essential. But to be honest, that’s rarely the case for advertisers.

The VMAP should look something like this:

how does VMAP work

MRAID. SIMID & OMID vs. VPAID

This article is getting really long, but we still have three more video ad tags to cover. Don’t worry; we’ll be as brief and efficient as possible.

What Is MRAID? What Are the Benefits of MRAID?

Mobile Rich Media Ad Interface Dimensions (MRAID) is IAB’s API created to serve rich media ads on mobile platforms.

Java, Swift, Kotlin, Objective-C, and hundreds of SDKs — the diversity of stuff that has to be supported makes serving video ads on mobiles one huge hot mess, and MRAID aims to fix that.

The IAB Tech Lab MRAID Specifications defines MRAID as a "write once, run anywhere" standard. With mobile in-app video advertising accounting for 098.28 billion (39.5% of total mobile ad spend), MRAID allows advertisers to serve rich media across diverse app SDKs without custom code.

We’d love to talk even more about this unsung hero, but for the sake of keeping it short, here are three things you have to keep in mind about MRAID:

  • Currently, there are three versions of MRAID, with MRAID 3. 0 being the latest. What’s cool is that all these are backward compatible + the latest iteration supports ad resize, expenditure, and even native device functions (like device orientation);
  • Not all mobile rich media ads run with MRAID. Some providers develop their own framework instead.
  • MRAID 3.0 supports some of the VPAID events related to reporting.

Now that you know of MRAID, let’s move to more controversial stuff.

What’s Wrong with VPAID?

Remember everything good we told you about VPAID? Well, the standard has a lot to be desired.

Firstly, VPAID was designed for interactivity first and measurement second. Consequently, programmatic auctions report an average VPAID rendering failure rate of up to 30% due to 5-second wrapper timeouts and unhandled JavaScript exceptions, causing significant publisher revenue drop-off according to Media Rating Council Viewability Standards.

If a video fails to render — publishers don’t get paid for impressions and lose the ad revenue which definitely sucks.

Secondly, VPAID is vulnerable to exploits and data leaks. That mostly relates to VPAID creatives served through older versions of VAST, but as you might’ve noticed, ad businesses are really conservative in how they operate.

What is SIMID? What Is OMID? Are they the same thing as VPAID?

IAB is fully aware of all these issues; that’s why VPAID is no longer updated. The successors to VPAID are SIMID and OMID.

So, what is SIMID?

Secure Interactive Media Interface Definition (VPAID) is basically VPAID, but more secure and more accessible. SIMID supports mobile, OTT, and even SSAI.

In fact, the list of changes is even broader. SIMID has:

  • Better playback stability;
  • Better error handling;
  • Better UX(at least IAB states that);
  • Better data security;
  • More control for publishers.

How does it do this? SIMID separates the interactive part of the ad from the media asset the user sees. In short, it gives playback control to the video player itself rather than being the boss of ad placement (thus giving publishers more freedom).

SIMID API model

What about OMID?

While SIMID covers the publisher’s side, Open Measurement Interface Definition (OMID) is responsible for better transparency for advertisers.

MID (managed via the IAB Tech Lab Open Measurement SDK) is an open-source API designed to streamline how advertisers measure viewability and verify impressions. How does it improve upon VPAID?

Firstly, with VPAID, advertisers needed multiple SDKs to verify ads; now they have one.

Secondly, with VPAID, placed ads required access to the whole page rather than just a video player. This, naturally, increased the security risks.

What’s with the deprecation of VPAID?

SIMID and OMID, used in tandem, completely replace legacy VPAID. SIMID handles client-side interactive rendering in an isolated iframe without stealing player control, while OMID collects standardized viewability telemetry across desktop, mobile, and CTV.

According to the IAB Tech Lab VPAID Standard, VPAID is officially deprecated with zero future updates planned. While legacy VPAID remains structurally incompatible with SSAI and CTV environments, SIMID and OMID API v1.5 provide native cross-platform support across Web, Mobile In-App, and OTT environments.

While adoption has taken time due to legacy player dependencies, major DSPs and SSPs now actively prioritize SIMID/OMID inventory over legacy VPAID tags.

How to Create Vast Tags with Epom Ad Server

One practical marker of the best video ad serving platform is how straightforward it makes tag creation and VAST event tracking. With Epom Ad Server, the process takes four steps and does not require editing raw XML by hand.

Okay, you’re probably tired already, but we still have one thing unsettled. Let’s extract a VAST tag with four easy steps:

  1. Create a Video Banner from the “Advertiser” tab:
video banner creation
  1. Upload a Creative
creative uploading for VAST completing creative information
  1. Link it to the Video Placement from the “Publisher” tab.
video placement link from publisher tab video placement editing
  1. Copy the tag.
video ad tag copying
  1. Extra. Epom Ad Server supports VAST events tracking. Select the items you need in the Vast Events pane to enable this feature.
VAST events tracking

Wrapping Up

Mastering the modern video tag stack is essential for eliminating rendering timeouts, passing strict DSP verification filters, and maximizing programmatic yields. Modern video ad delivery requires migrating away from legacy executable scripts to lightweight, sandboxed protocols like VAST 4.2, SIMID, and OMID.

By leveraging enterprise ad infrastructure like Epom Ad Server, publishers and advertisers can generate compliant VAST tags, configure precise event tracking, and serve high-performing video ads seamlessly across Web, Mobile, and CTV environments.

Serve Video Ads like a Pro

FAQ

  • What is the difference between VAST tag and an impression tracker?

    A VAST tag is the full video ad serving template that packages the media file, ad format, and tracking elements into a single XML schema. An impression tracker is one of those tracking elements inside VAST, not a separate system. If your video ad serving platform shows tracking gaps, check whether the VAST tag is firing correctly before isolating the impression tracker.

  • What does "failed to load the VPAID ad" mean?

    This error means the video player does not support the VPAID API required to run the ad unit. Unlike VAST, which transfers metadata, VPAID executes code inside the player environment, and if that support is missing, the ad cannot load. Contact your creative provider first, then confirm the player supports VPAID 2.0, or consider migrating to SIMID, which is the current replacement standard.

  • Which creative types does VPAID support?

    VPAID 2.0 supports three creative types: full-screen expanding, interstitial, and HTML5 non-linear. These were designed for interactive and rich media ads that standard VAST cannot deliver. For new builds on any video ad serving platform, these same creative types are now better handled through SIMID, which offers stronger playback stability and data security.

  • What is the difference between VAST, VPAID, and VMAP?

    VAST is the base video ad serving template that delivers a single ad from an ad server to a video player. VPAID extended VAST to support interactive ad units, while VMAP operates at the session level, scheduling multiple ads and controlling ad insertion timing across a piece of video content. In practice, VAST VPAID VMAP work as a stack, not as alternatives.

  • Does video ad serving work differently on CTV and OTT platforms?

    On connected TV and OTT platforms, browser-based VPAID does not work, so VAST 4.x handles ad delivery while OMID manages measurement on the advertiser side. SIMID was designed specifically to support mobile, OTT, and server-side ad insertion environments, making it the recommended standard for interactive formats in these contexts. Publishers building video ad serving technology for CTV should prioritize SSAI compatibility and OMID adoption from the start.

Rate this article

2 ratings
Average: 5 of 5

Share this article

thank you image

Thank you!

Your guide is on its way to your inbox,
you'll get it in a second

Get Your Free Copy
cooldown image

A registration has already been submitted from this page. Please try again in 10 minutes.