IAB VAST validator guide
If you are searching for an IAB VAST validator, what you usually need is a validator that checks a VAST tag against the IAB Tech Lab VAST specification. vastlint does exactly that: it validates VAST 2.0 through 4.3, explains the rule that fired, and shows where spec compliance ends and platform-specific quirks begin.
This page describes an independent validator for the IAB standard. It is not an official IAB Tech Lab tool, and it does not imply affiliation with IAB Tech Lab.
Need an IAB VAST validator?
Paste resolved XML into the validator for a full spec-compliance report. If you are starting from a live tag URL, use the tester first so you can inspect wrappers, resolved XML, and the final validation result in one flow.
Quick reference
| Standard owner | IAB Tech Lab |
| Core versions covered | VAST 2.0, 3.0, 4.0, 4.1, 4.2, 4.3 |
| Latest core version | VAST 4.3, released December 2022 |
| Latest CTV guidance | VAST CTV Addendum 2024, released July 2024 |
| VPAID status | Deprecated; SIMID is the replacement for interactivity |
| Affiliation | Independent validator, not an official IAB Tech Lab tool |
What “IAB VAST validator” means
The IAB Tech Lab publishes the VAST standard and version history. An “IAB VAST validator” is shorthand for a tool that compares your tag to those published rules. That is different from a player-specific validator: the IAB spec defines the XML contract, while players and platforms add their own operational constraints on top.
Versions and addenda
The current core VAST line runs from 2.0 through 4.3. On the IAB Tech Lab standards page, VAST 4.3 is the latest core release, and the VAST CTV Addendum 2024 adds newer connected-TV guidance such as higher-resolution creative support, ACIF updates, and related CTV-facing changes. Use the core VAST version in your XML and review the addendum separately when you are building for CTV environments.
A spec-compliant example
This is the kind of VAST document you validate against the IAB spec: a real XML response with a versioned root element, creative metadata, an impression, a linear ad, and usable media files.
<VAST version="4.0">
<Ad id="example-1">
<InLine>
<AdSystem version="1.0">vastlint example</AdSystem>
<AdTitle>Sample 30s Ad</AdTitle>
<Impression><![CDATA[https://tracker.example.com/imp]]></Impression>
<Creatives>
<Creative>
<UniversalAdId idRegistry="ad-id.org">8465903</UniversalAdId>
<Linear>
<Duration>00:00:30</Duration>
<TrackingEvents>
<Tracking event="start"><![CDATA[https://tracker.example.com/start]]></Tracking>
<Tracking event="firstQuartile"><![CDATA[https://tracker.example.com/firstQuartile]]></Tracking>
<Tracking event="midpoint"><![CDATA[https://tracker.example.com/midpoint]]></Tracking>
<Tracking event="thirdQuartile"><![CDATA[https://tracker.example.com/thirdQuartile]]></Tracking>
<Tracking event="complete"><![CDATA[https://tracker.example.com/complete]]></Tracking>
</TrackingEvents>
<MediaFiles>
<MediaFile type="video/mp4" width="1280" height="720" bitrate="1800" delivery="progressive">
<![CDATA[https://cdn.example.com/ad.mp4]]>
</MediaFile>
</MediaFiles>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>What vastlint checks against the IAB spec
vastlint applies 118 rules derived from the published VAST specifications and XSD schemas. It checks required elements, version consistency, duration formats, tracking structure, duplicate impressions, deprecated VPAID usage, SIMID and OMID-related structures, and many of the XML mistakes that cause players to reject or misrender the ad.
If you only need the resolved answer for a live URL, run the testerfirst. If you already have the XML, go straight to the validator.
Where spec validation stops
Passing the IAB spec is necessary, but not sufficient, for real delivery. Google IMA SDK, Roku RAF, The Trade Desk, ad servers, and CTV OEM players all add their own practical limits: wrapper depth, VPAID blocking, required media codecs, HTTPS enforcement, and sometimes tag URL parameters. After you pass the core spec, use the relevant platform guide for the last-mile check.
Start with Google IMA SDK, Roku RAF, or The Trade Desk if you need those platform rules.