vastlint

VPAID-no-video-fallback

No MP4/video fallback alongside VPAID <MediaFile>

WarningCompatibilityIAB VPAID 2.0 §2.2 (graceful degradation), VAST 2.0 §3.9

The block contains a VPAID but no standard video (MP4, WebM, etc.). Players that do not support VPAID — which includes all CTV native players and an increasing number of programmatic environments — will receive an empty media file list and show a blank ad slot. A standard video fallback ensures the ad plays on environments that cannot or will not execute VPAID.

How to fix

Add a standard <MediaFile> MP4 video element to <MediaFiles> alongside the VPAID entry. Players pick the first <MediaFile> they can use — VPAID-capable players will still use the VPAID unit.

Invalid

<MediaFiles>
  <!-- only VPAID, no video fallback -->
  <MediaFile delivery="progressive" type="application/javascript"
             apiFramework="VPAID" width="1280" height="720">
    <![CDATA[https://example.com/vpaid.js]]>
  </MediaFile>
</MediaFiles>

Valid

<MediaFiles>
  <MediaFile delivery="progressive" type="video/mp4"
             width="1280" height="720">
    <![CDATA[https://example.com/ad.mp4]]>
  </MediaFile>
  <MediaFile delivery="progressive" type="application/javascript"
             apiFramework="VPAID" width="1280" height="720">
    <![CDATA[https://example.com/vpaid.js]]>
  </MediaFile>
</MediaFiles>
Check your VAST tag for VPAID-no-video-fallback and other issues instantly.Validate a tag →