Ad Me In
Advertising Guides & Insights

VAST Error Code List - Simple Guide + Quick Fixes

A simpler, guide to VAST error codes: what each code means, the most common causes, and quick troubleshooting steps you can try immediately.

VASTVAST error codesVAST troubleshootingvideo adsGoogle IMA
Read more articles
VAST Error Codes
By AdMeIn
January 24, 2026

A scannable, beginner-friendly cheat sheet for VAST + common Google IMA error codes

VAST Error Code List - Simple Guide + Quick Fixes

If you’re seeing VAST errors in a player (or in your ad server logs), you don’t need to memorize the spec to fix them.

This guide is a simple, practical lookup for the most common VAST error codes (plus a few widely-seen Google IMA codes). You’ll learn what the code usually means and the fastest things to check first.

Want to debug quickly? Paste your tag into our VAST Tag Tester to validate the XML, follow wrappers, and inspect media files.


How to use this guide (fast)

  1. Find the error code in your player logs (or the errorcode macro ping).
  2. Jump to the matching section below (use Cmd+F / Ctrl+F).
  3. Do the “Quick checks” in order — they’re sorted from most common to most actionable.

The #1 rule

Most “mystery” VAST errors come down to one of these:

  • Broken XML (bad characters, unclosed tags, wrong VAST version)
  • Wrapper chain issues (timeouts, too many hops, or no final inline ad)
  • Media file problems (404, slow CDN, unsupported codec/MIME)
  • Player policies (autoplay restrictions, mixed content, sandbox/CORS)

Quick fixes checklist (do these before deep-diving)

  • Validate the XML: well‑formed, correct encoding, correct VAST version.
  • Unwrap wrappers: confirm the chain ends in an InLine with a playable <MediaFile>.
  • Open the media file URL in a browser: confirm it loads and plays.
  • Check HTTPS everywhere: avoid mixed content (HTTPS page loading HTTP assets).
  • Verify CORS (especially for IMA / web players): ad tag + media + tracking URLs.
  • Provide multiple media files: at least one widely compatible MP4 (H.264/AAC) is a good baseline.

100–102: XML & VAST version problems

These mean the player couldn’t read or accept the VAST response.

CodeWhat it meansQuick checks
100XML parsing failedValidate XML, fix unclosed tags, remove invalid characters, confirm encoding.
101Schema/spec validation failedCheck required nodes/attributes, confirm the response matches its declared VAST version.
102VAST version not supportedOutput a lower VAST version, or upgrade the player/SDK.

200–206: Trafficking / player expectation issues

These mean the player received an ad response that doesn’t match what it requested or can display.

CodeWhat it meansQuick checks
200Trafficking error / unexpected ad typeConfirm the slot is a video slot and you’re returning a video-capable response.
201Incorrect linearityEnsure the placement expects linear vs non-linear and the response matches.
202Incorrect durationConfirm ad duration constraints in the request/pod settings; ensure your creative matches.
203Incorrect sizeConfirm creative dimensions match the slot (or that the player supports scaling).
204Missing ad categoryAdd required category metadata if the publisher requires it.
205Blocked ad categoryThe inline ad category violates wrapper restrictions; adjust category or targeting.
206Ad break shortenedPod/placement changed; verify pod rules and fallback logic.

300–304: Wrapper (redirect chain) problems

Wrappers are powerful, but they’re the source of many “works in one player, fails in another” issues.

CodeWhat it meansQuick checks
300General wrapper errorUnwrap manually and check each hop; look for the first bad response.
301Wrapper URI timeoutCheck partner latency, lower wrapper depth, confirm the wrapper URL responds fast.
302Wrapper limit reachedToo many hops or a loop; remove intermediaries and check for circular redirects.
303No VAST response after wrappersOne hop returns empty/invalid; verify each wrapper URL returns a valid response.
304Ad display timeoutMedia too slow; optimize file size/bitrate, improve CDN, confirm URLs are reachable.

400–411: Linear / media file playback problems

These usually mean the player found a media file but couldn’t fetch or play it.

CodeWhat it meansQuick checks
400General linear errorCheck player logs for the real cause; test on another device/player for comparison.
401Media file not foundURL typo or removed asset; confirm HTTP 200 and correct path.
402Media file timeoutLarge file or slow CDN; compress, reduce bitrate, use a faster edge/CDN.
403No supported media file foundProvide a compatible MP4 (H.264), correct <MediaFile type>, add fallbacks.
405Media file exists but can’t be displayedCodec/MIME mismatch, unsupported delivery method, corrupted file; verify headers and playback.
406Mezzanine required but missingProvide mezzanine if required by SSAI/publisher.
407Mezzanine still downloading/transcodingWait for ingest/transcode, or provide a pre-transcoded alternative.
408Conditional ad rejected (deprecated)Update to modern VAST handling; avoid deprecated conditionalAd usage.
409Interactive unit not executedConfirm player supports interactive creatives; verify the creative file and permissions.
410Verification unit not executedCheck verification script URLs and vendor integration; confirm scripts are reachable.
411Mezzanine doesn’t meet specRe-encode to required format/bitrate/resolution; confirm publisher specs.

500–503: NonLinear ad problems

These are overlay/non-linear creatives that failed to load or fit.

CodeWhat it meansQuick checks
500General non-linear errorVerify the non-linear creative is supported and properly configured.
501Non-linear dimensions mismatchResize assets to fit the overlay area; supply multiple sizes.
502Non-linear resource fetch failedCheck resource URL, CDN, and network policies.
503Unsupported non-linear resource typeProvide supported resource types and add fallbacks.

600–604: Companion ad problems

Companions are the “sidecar” creatives that show alongside video.

CodeWhat it meansQuick checks
600General companion errorConfirm companion slots exist and the player supports companions.
601Companion dimensions mismatchUse the correct companion sizes for the page layout.
602Required companion not displayedEnsure the page has a companion container; verify requirements and rendering logic.
603Companion resource fetch failedCheck URL reachability and CDN performance.
604Unsupported companion resource typeProvide supported resource types (image/HTML) and add fallbacks.

900–902: Unknown / interactive / VPAID issues

These are often environment-specific and require logs.

CodeWhat it meansQuick checks
900Undefined errorCheck player console logs; validate XML and media; test in another player.
901General VPAID errorVPAID is fragile; verify sandbox/iframe policies and consider standard VAST instead.
902InteractiveCreativeFile errorConfirm the file format and that the player supports interactive creatives.

Common Google IMA SDK codes (1000+)

If you’re using Google IMA, you may see SDK-specific codes that are not part of the core IAB VAST error list.

CodeWhat it meansQuick checks
1005Ad request failed (often CORS)Confirm CORS headers for the ad tag, wrappers, media files, and trackers.
1007Media asset not found/supportedProvide mobile-friendly formats; ensure the right creative targets the right device.
1009Empty VAST response / expected no-fillCompare error rate to fill rate; ensure you have fallback demand.
1010Unknown/malformed responseValidate XML, inspect the raw response, confirm server isn’t truncating content.
1011Unsupported localeCheck the IMA SDK locale configuration and set a supported locale.
1012Request blocked / network errorLook for malformed XML or blocked requests; check network filters.
1013Invalid ad tag URLEnsure URL is correctly encoded (especially query params and macros).
1020Stream initialisation failed (SSAI)Verify stream/SSAI configuration; check SSAI provider logs.
1021Asset fallback returned no adEnsure fallback line items are active and there’s enough demand in the fallback chain.
1101Invalid arguments in SDK requestCheck IMA integration code; verify SDK method params and request options.
1105Invalid AdX extensionReview GAM/AdX extensions in the response; contact platform support if needed.
1205Browser prevented playback (autoplay)Require user interaction or use muted autoplay where allowed.
2025Display object errorReview player/IMA integration and rendering container setup.
2032URL access blockedCheck firewall, allowlists, SafeBrowsing/ad-block rules.
2035Incorrect path to assetsVerify asset URLs and relative/absolute paths in the creative.
2036Flash ad failed to loadFlash is deprecated; replace with HTML5 / standard video formats.
2048CORS / mixed-content security violationEnsure HTTPS for all ad assets and redirects; remove HTTP calls on HTTPS pages.

Why do I see different error codes in different players?

Players and SDKs don’t all report errors the same way. Some map issues to generic codes, and some (like IMA) add their own error ranges.

What’s the fastest way to diagnose wrapper errors?

Unwrap the chain and find the first hop that’s slow, empty, or invalid. Wrapper depth and timeouts are the top causes of 3xx errors.

What’s the fastest way to diagnose 4xx media issues?

Open the <MediaFile> URL directly, confirm it plays, then verify MIME type, codec, and HTTPS/CORS policies.


Next step: test your tag end-to-end

If you want a faster workflow, use our VAST Tag Tester to validate the XML, follow wrappers, and spot media/codec issues before they impact delivery.

Test VAST errors in seconds

If you’re troubleshooting a VAST error code, the fastest path to a fix is to:

  • Validate the XML
  • Follow wrapper redirects
  • Verify media file playback and MIME types
  • Create an account to run VAST analysis for deeper insights

Use the VAST Tag Tester to inspect your tag and catch common issues.

Test your VAST tag now