All VAST error codes
900Undefined / VPAID errors · VAST 2.0+

VAST Error 900: Undefined error

The player hit a failure it couldn't map to any defined code — the bottom of the error taxonomy, and often the top of the volume chart.

Error 900 is the spec's escape hatch: something failed and the player either couldn't identify what, or didn't implement finer-grained reporting. Player crashes, SDK exceptions, unexpected states, and every failure a lazy integration didn't bother classifying all land here.

A high 900 share usually says more about the players than the ads: sophisticated players report specific codes, minimal ones report 900 for everything. Diagnose by correlating with device, app, and player version rather than by staring at the code itself.

Why error 900 happens

Coarse error reporting in the player

Many SDKs map whole failure classes to 900 rather than implementing the full taxonomy. The underlying issues are the usual suspects — media, timeouts, wrappers — just unlabeled.

Player or SDK crashes

Exceptions inside the ad rendering path with no specific handler surface as undefined errors.

Genuinely novel failure modes

Situations the spec never anticipated — OS-level media session conflicts, backgrounded apps, race conditions during teardown.

How to fix VAST error 900

  1. 1

    Segment before diagnosing

    Break 900 volume down by app, device, player version, and creative. It's almost never uniform — the concentration points at the real cause.

  2. 2

    Validate the tag anyway

    Run the tag through a validator. If it has real problems (broken chain, bad media), fixing those often collapses the 900 count because coarse players were reporting them as undefined.

  3. 3

    Compare against a known-good tag

    Serve a reference tag to the same placement. If 900s persist, the player integration is the problem, not your tag.

Free VAST validator

Seeing error 900 on a live tag?

Paste the tag URL or XML — the validator resolves the full wrapper chain, validates the schema, downloads every media file, and shows exactly which stage fails.

Validate your VAST tag

VAST error 900 — frequently asked questions

My error report is mostly 900 — is my tag broken?+

Not necessarily. Coarse players report everything as 900. Validate the tag independently: if it resolves cleanly with healthy media, the 900s are downstream player noise or integration bugs.

Can I get better codes out of players reporting 900?+

Sometimes — newer SDK versions of the same player often classify better. Otherwise you diagnose around the players: validator results plus device segmentation substitute for the missing precision.

Related error codes

Keep reading