VAST examples / Tracking
A <Tracking> event that was removed in VAST 4.x
VAST 4.11 error2 warningsVAST-4.0-tracking-event-removed
The scenario
An advertiser relied on certain VPAID-era interaction tracking events to measure engagement. When the creative moved to a VAST 4.x SIMID workflow, the old <Tracking event="..."> entries were carried over unchanged.
The broken tag
<?xml version="1.0" encoding="UTF-8"?>
<!-- ERROR: VAST-4.1-tracking-event-value — unknown tracking event name for VAST 4.1+
WARNING: VAST-4.0-tracking-event-removed — fullscreen/exitFullscreen removed in VAST 4.0+ -->
<VAST version="4.1">
<Ad id="ad-001">
<InLine>
<AdSystem>Test</AdSystem>
<AdTitle>Test Ad</AdTitle>
<AdServingId>test-serving-id-001</AdServingId>
<Impression><![CDATA[https://track.example.com/impression]]></Impression>
<Creatives>
<Creative>
<UniversalAdId idRegistry="ad-id.org">TEST-001</UniversalAdId>
<Linear>
<Duration>00:00:30</Duration>
<TrackingEvents>
<Tracking event="start"><![CDATA[https://track.example.com/start]]></Tracking>
<!-- fullscreen was removed in VAST 4.0 — use playerExpand instead -->
<Tracking event="fullscreen"><![CDATA[https://track.example.com/fullscreen]]></Tracking>
<!-- exitFullscreen was removed in VAST 4.0 — use playerCollapse instead -->
<Tracking event="exitFullscreen"><![CDATA[https://track.example.com/exitfullscreen]]></Tracking>
<!-- completely unknown event name -->
<Tracking event="bananaClick"><![CDATA[https://track.example.com/banana]]></Tracking>
</TrackingEvents>
<MediaFiles>
<MediaFile delivery="progressive" type="video/mp4" width="1920" height="1080">
<![CDATA[https://cdn.example.com/video.mp4]]>
</MediaFile>
</MediaFiles>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>What the validator reports
Running this tag through vastlint produces the following. The primary failure for this example:
VAST-4.0-tracking-event-removedIAB VAST 4.0 §2.3.6line 19Tracking event "fullscreen"/"exitFullscreen" was removed in VAST 4.0 — use playerExpand/playerCollapse
The same tag also surfaces these secondary findings — real tags rarely fail in isolation:
VAST-4.0-tracking-event-removedIAB VAST 4.0 §2.3.6line 21Tracking event "fullscreen"/"exitFullscreen" was removed in VAST 4.0 — use playerExpand/playerCollapse
VAST-4.1-tracking-event-valueIAB VAST 4.2 §2.3.6line 23Tracking event attribute value is not in the VAST spec enum for this version
VAST-4.1-mezzanine-recommendedIAB VAST 4.1 §3.9.2line 25<MediaFiles> has no <Mezzanine> — ad-stitching servers may reject this tag in CTV/SSAI contexts
Why it breaks
The creative includes <Tracking> events whose event names were removed in VAST 4.0 (several VPAID-era interaction events no longer exist in the 4.x event model, which is oriented around SIMID and OMID). A compliant 4.x player does not recognize the removed event names, so it never fires those beacons — the trackers are effectively dead on arrival.
What it costs
The advertiser keeps seeing those trackers in the tag and assumes the engagement signals are flowing, but on 4.x players they simply never fire, so the corresponding metrics flatline or vanish. Teams often misread this as an audience or creative problem and waste cycles before discovering the events were removed from the spec and need to be re-mapped to current SIMID/OMID signals.
The fix
Remove tracking events that were dropped in 4.x and re-map the intent onto current mechanisms — SIMID interaction events for engagement, OMID for viewability. Validate the event names against the version you declare.
<!-- use current 4.x event names; drop removed ones -->
<TrackingEvents>
<Tracking event="start"><![CDATA[https://t.example.com/start]]></Tracking>
<Tracking event="complete"><![CDATA[https://t.example.com/complete]]></Tracking>
</TrackingEvents>VAST XML fragment only. This excerpt belongs inside a complete VAST document, so standalone validation will fail until it is wrapped in a full <VAST>response.
Check your own version of this tag
Paste the resolved XML to run the same spec check, test a live tag URL, or inspect the wrapper chain hop by hop.
Related examples
- Multiple <Impression> elements with the same URL — VAST-2.0-duplicate-impression
- An InLine ad with no <Impression> element — VAST-2.0-inline-impression
- An InLine ad missing the <AdSystem> element — VAST-2.0-inline-adsystem
- An InLine ad missing the <AdTitle> element — VAST-2.0-inline-adtitle