VAST Error Codes

When a video ad fails, the player reports a number. This is what each one means, what actually produces it in production, and what to do about it — codes are from the IAB Tech Lab VAST 4.3 specification, the causes are from working with them.

The single most useful thing to know about these codes: a moderate rate of error 303 is not a fault. It is what no-fill looks like from the player's side, and chasing it wastes time that belongs on the 40x codes, which are real playback failures.

Document

Trafficking

Wrapper

Linear

Other

How a player reports these

A VAST tag can declare an <Error> element containing a URL with an [ERRORCODE] macro. When playback fails, the player substitutes the numeric code into that macro and fires the URL. That is the whole reporting mechanism — which means a tag with no Error element fails completely silently, and you will see the missing revenue without ever learning why. Declaring one costs nothing and is the difference between a diagnosable failure and a mystery.

To check a tag before it runs, the VAST validator reads the XML and reports which of these conditions it would hit.