VPAID vs OMID is what a trafficking sheet asks when measurement used to live inside the executable. A VPAID unit can be the playback engine. The player hands it a slot, the unit loads its own media, and impressions and quartiles can be fired by the creative rather than by the player's playhead. That bundling is why verification code shipped inside VPAID. OMID pulls the measurement back out. IAB's SIMID page names OMID for measurement and verification, and SIMID for interactivity, as the pair that replaces VPAID. OMID does not draw the ad and does not own the playhead.
Google's IMA docs limit VPAID 2 JavaScript support to the HTML5 SDK. A television, a native app, and a server-side stitcher are outside that environment even when they play an ordinary MP4. An OMID resource does not restore the executable for those devices. It gives a player that already integrated OM SDK a script to read signals from. vastlint checks whether a VAST 2.0–4.4 tag still declares that verification node, and whether a VPAID media file is the only thing left to play. It does not execute VPAID and it does not run OM SDK.
A creative quartile is not a verification
The number people try to preserve is the quartile. A VPAID unit that emits firstQuartile feels measured. The event came from the same JavaScript that was supposed to be measured. OMID's point is that a third-party script reads signals the player exposes, including viewability, and the creative is not that script. IAB's OM SDK page describes the split directly: integrators send measurement signals to the OMID API, and measurement providers place tags that collect them. The current API docs listed on that page, updated November 4, 2025, are OMID 1.6. Earlier versions remain documented because players in the field are not all on one release.
In the XML, the provider's tag is a Verification. On VAST 4.1 and later the parent is AdVerifications. Older documents sometimes carry the same block as an Extension with type AdVerifications. apiFramework on the JavaScriptResource is omid, lowercase in the examples that validate. A resource URL that is empty or not HTTPS does not become measurement because the vendor name is familiar. A missing verificationNotExecuted tracker makes the failure silent.
What not to migrate into the other name
Replacing the VPAID media file with an OMID script, and deleting the MP4, leaves a measurement resource and no ad. Replacing OMID with a new VPAID unit because the vendor's old snippet was VPAID puts the executable back on a CTV path. The interactive half, if you still need a click, is SIMID beside a media file, not a second copy of the verification script. Measurement vendors are a choice inside OMID. They are not a choice between OMID and VPAID.
Read the inline. A wrapper can advertise a vendor and drop AdVerifications on the hop the player sees. vastlint will flag the structure. It will not tell you whether the vendor's script, once loaded by a compliant player, agreed with another vendor's script.
A VPAID unit is not an OMID integration
- A media file remains after any VPAID file is removed.
- Measurement is a Verification resource, not a quartile the creative emits.
- apiFramework omid sits on that resource, not on the media file.
- SIMID, if the ad is interactive, sits beside the media file and does not carry the measurement.
- The inline, not the wrapper, is where the node has to survive.
The executable that reports its own playback and the script that reads the player are different objects, and only one of them is measurement.
See whether measurement is still inside the executable
Run VAST 2.0–4.4 tags against specification-derived rules. Nothing is stored. vastlint does not execute VPAID, open a SIMID session, run OMID, or certify an MRAID SDK.
Sources
OM SDK page, updated November 4, 2025. Measurement providers collect signals through the OMID API. The current API docs listed there are OMID 1.6.
SIMID page, updated January 3, 2024. SIMID 1.2 separates the interactive layer from the media asset. Both are delivered by VAST 4.x. OMID is named for measurement and SIMID for interactivity, as the replacement for VPAID.
VAST standards hub. VPAID is marked deprecated and replaced with SIMID.
Only the IMA HTML5 SDK supports VPAID 2 JavaScript creatives.
The other half of the same split.
What can stand in for OMID, and what cannot.
The XML checks before any player runs OM SDK.
AdVerifications, JavaScriptResource, and what vastlint validates.
