All VAST error codes
300Wrapper errors · VAST 2.0+

VAST Error 300: General wrapper error

Something failed while following a wrapper redirect — the catch-all for wrapper problems that aren't a timeout (301), depth limit (302), or no-fill (303).

A wrapper is a VAST document that points at another VAST document instead of containing the ad itself. Error 300 fires when following that pointer fails for a reason the player can't classify more precisely: an invalid VASTAdTagURI, a DNS failure, a TLS error, an HTTP error status on a hop, or a redirect loop.

Because it's the catch-all, diagnosing 300 means resolving the chain hop by hop and finding which request breaks and how.

Why error 300 happens

Malformed or unresolvable VASTAdTagURI

The wrapper's redirect URL is broken — unescaped characters, an unexpanded macro left in the URL, or a hostname that doesn't resolve.

HTTP or TLS failure on a hop

A hop returns 4xx/5xx, or its certificate is invalid/expired. Mixed content also lands here: an HTTPS player refusing an HTTP-only hop.

Redirect loop

Hop A points to B which points back to A. The player detects the cycle and abandons the chain.

Unexpanded macros in the redirect URL

Literal [CACHEBUSTING] or [TIMESTAMP] strings left in the URI break signature checks or routing on the next server.

How to fix VAST error 300

  1. 1

    Resolve the chain hop by hop

    Run the tag through a validator that follows wrappers and shows each hop's URL, status code, and latency. The failing hop is immediately visible.

  2. 2

    Check the failing hop's URL for macros and escaping

    Look for literal macro placeholders and unescaped & in the VASTAdTagURI. Fix macro expansion at the server that emits the wrapper.

  3. 3

    Verify HTTPS on every hop

    Every URL in the chain must be HTTPS with a valid certificate. One HTTP hop breaks the chain for secure players.

  4. 4

    Contact the owner of the broken hop

    Each hop belongs to a specific partner. Send them the exact failing request and response — the chain trace makes attribution unambiguous.

Free VAST validator

Seeing error 300 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 300 — frequently asked questions

How do I tell error 300 apart from 301, 302, and 303?+

301 is specifically a timeout, 302 specifically too many hops, 303 specifically an empty response at the end. 300 is everything else that can go wrong following a wrapper — bad URLs, HTTP errors, TLS failures, loops.

Can I see the wrapper chain without special tooling?+

You can curl each VASTAdTagURI manually and follow the chain yourself, but a VAST validator automates it — resolving every hop and reporting status, latency, and the final inline ad in one pass.

Who is responsible for fixing a 300?+

The owner of the hop that fails. The chain trace tells you whose server emitted the broken redirect and whose server failed to answer — that's where the fix belongs.

Related error codes

Keep reading