vastlint

What changed between VAST 4.1 and VAST 4.2

VAST 4.2 was finalised by the IAB in June 2019. It is a targeted release with four substantive changes. No existing 4.1 structures were removed or restructured, so migration is straightforward.

ChangeImpact
<ClickThrough> re-allowed in Wrapper <VideoClicks>Reverses the 4.0 restriction; Wrapper click-through valid again
<IconClickFallbackImages> and <IconClickFallbackImage> addedNew icon disclosure fallback for no-HTML environments
interactiveStart tracking event addedFires when SIMID creative takes control
Error codes 206 and 902 addedNew player/SIMID error reporting codes

<ClickThrough> re-allowed in Wrapper <VideoClicks>

VAST 4.0 removed <ClickThrough> from Wrapper <VideoClicks>. VAST 4.2 reverses this decision, explicitly permitting it again to support use cases where the wrapper itself needs to control the click destination — for example, a DSP redirecting through multiple wrapper layers.

The VAST-4.0-wrapper-clickthrough rule is version-scoped: it fires on VAST 4.0 and 4.1 documents but not on 4.2+.

Icon click fallback images

New elements for the AdChoices icon disclosure flow in environments where HTML rendering is unavailable — for example, some streaming TV surfaces. When a user clicks the AdChoices icon and the player cannot open <IconClickThrough> in a browser, it may instead display a static image overlay.

<IconClicks>
  <IconClickThrough>
    <![CDATA[https://optout.aboutads.info/?c=2&lang=EN]]>
  </IconClickThrough>
  <IconClickFallbackImages>
    <IconClickFallbackImage width="320" height="240">
      <![CDATA[https://example.com/adchoices-disclosure.jpg]]>
    </IconClickFallbackImage>
  </IconClickFallbackImages>
</IconClicks>

Both width and height are optional per the XSD but recommended so the player can size the overlay without loading the image first.

→ Rule reference: VAST-4.2-icon-fallback-image-width-height

interactiveStart tracking event

A new tracking event for SIMID creatives. Fires when the interactive creative takes control of the player — i.e., when the interactive experience begins, distinct from when the video starts playing.

<TrackingEvents>
  <Tracking event="start">
    <![CDATA[https://track.example.com/start]]>
  </Tracking>
  <Tracking event="interactiveStart">
    <![CDATA[https://track.example.com/interactive-start]]>
  </Tracking>
</TrackingEvents>

This event is not in the VAST 4.1 XSD enum. Use it only with version="4.2" or later.

New error codes

CodeMeaning
206Player decided not to play an ad because the ad break was shortened — for example, a live broadcast break cut shorter than expected
902General InteractiveCreativeFile error — covers SIMID load failures, execution errors, and resource fetch failures

These are [ERRORCODE] macro values, not XML structural changes. They affect error callback traffic interpretation, not document validation.

Multiple <UniversalAdId> explicitly allowed

The 4.2 spec explicitly documents that a <Creative> may carry multiple<UniversalAdId> elements from different registries simultaneously — useful when a creative is registered with both ad-id.org and a regional registry.

<Creative>
  <UniversalAdId idRegistry="ad-id.org">ADID-12345</UniversalAdId>
  <UniversalAdId idRegistry="clearcast.co.uk">CLR-67890</UniversalAdId>
  <Linear>...</Linear>
</Creative>

Migration checklist: VAST 4.1 → 4.2

  • Update version attribute on <VAST> to "4.2"
  • Optionally add <ClickThrough> to Wrapper <VideoClicks> if your use case requires it (now valid again)
  • Add <IconClickFallbackImages> / <IconClickFallbackImage> to icon click disclosure flows for CTV or no-HTML surfaces
  • Add interactiveStart tracking event to SIMID creative tracking if applicable

Validate your VAST 4.2 documents at vastlint.org/validate. Continue to the VAST 4.2 to 4.3 migration guide →