VASTlint
Back to blog

OMID vs MRAID lines up a verification script and the creative's own events

The creative reporting its own viewability is not OMID. vastlint checks AdVerifications. It does not score viewability.

SpecWho reportsAbout whatIn a VAST tag
OMIDA verification scriptViewability and other player signalsAdVerifications
MRAID 3.0The creativeViewability, audibility, selected video eventsNot a VAST element
VPAIDThe executableWhatever the creative emitsMediaFile apiFramework VPAID
OMID lets a verification vendor read signals through OM SDK. MRAID 3.0 lets the creative read viewability and audibility itself.
The creative reporting its own viewability is not OMID. vastlint checks AdVerifications. It does not score viewability. Diagram by vastlint.org. An independent open-source project. The diagram restates figures already cited in this post.

Alex Sekowski · September 29, 2026 · 7 min read

OMID vs MRAID is the measurement version of a host mix-up. OMID, the Open Measurement Interface Definition, is the API inside IAB's OM SDK. Players and apps that integrate the SDK expose signals. Measurement providers place scripts that collect them. IAB's OM SDK page, updated November 4, 2025, lists impression measurement, third-party verification, and a common integration across mobile, web, and CTV. The current API docs on that page are OMID 1.6. In a VAST tag the provider's script is declared under AdVerifications, or under a legacy Extension of that type.

MRAID 3.0 gives the creative its own view of the container: viewability support so the creative can measure against industry thresholds, audibility, and selected VPAID events for in-app video reporting. The reporter is the ad. That can be useful for a playable that needs to know it is on screen. It is not a third party checking the ad. vastlint checks the shape of the VAST verification node, including vendor, resource URL, and apiFramework omid. It does not compute viewability, and it does not inspect an MRAID creative's event calls.

Why a creative-side viewable event keeps getting pasted into a verification slot

VPAID trained the habit. The unit that played the ad also said it was viewable. MRAID 3.0's viewability feature can look like the modern form of that habit, because the creative again learns whether it is on screen. The difference IAB drew for video is that verification moves to OMID, where more than one provider can listen, and the creative is sandboxed away from the player if it is interactive SIMID. A single creative calling a viewableChange listener has one author: the party that shipped the ad.

None of that makes MRAID false. An expandable in-app unit should use the container's viewability rather than guessing from a timer. The mistake is to delete AdVerifications from a VAST campaign because the mobile banner already had an MRAID viewability call. Those are two impressions, two hosts, and two reporters.

What vastlint will and will not settle

On the VAST document, vastlint can show a missing verification vendor, an insecure script URL, a duplicated vendor, or a verification tracker that is not on verificationNotExecuted. Those are reasons the OMID path never starts. They are not a viewability score, and they are not an MRAID compliance result. IAB runs a separate compliance program for OM SDK integrations. An SDK can be MRAID-capable and still lack OM SDK.

If the question is which verification firm to hire, that choice sits inside OMID. IAS, DoubleVerify, and the rest are scripts in the verification node. MRAID is not on that shortlist. vastlint will not rank the firms.

Keep the reporter attached to the right host

  • In-stream measurement: OMID in AdVerifications, player has OM SDK.
  • In-app creative behavior: MRAID, including its own viewability if the unit needs it.
  • Do not treat MRAID viewableChange as the verification vendor.
  • Do not treat a VPAID quartile as OMID.
  • Do not expect vastlint to score either signal. It checks the VAST node that OMID would occupy.

A creative that reports its own time in view and a third-party script that reads the player are not the same measurement.

standards triage note

Check the verification node the OMID script would use

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.

Paste the tag

XML opens the validator, and a live tag URL opens the tester.

Or test a live URL

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.

MRAID is the in-app rich media interface. Version 3.0 adds creative-side viewability and audibility, and selected VPAID events for in-app video reporting.

IAB Tech Lab SIMIDIAB Tech Lab

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.

The older habit of letting the executable report itself.

What can replace a verification script.

The XML checks, before any viewability number exists.

What the VAST side of OMID requires.

Read another comparison in this set

All posts

Check the tag these notes describe

The comparison does not execute the creative. The tag still has to carry a media file, and the node for interaction or measurement.