VAST error codes / Ad type and trafficking
VAST error 408: Conditional ad rejected (deprecated)
Short answer: The player rejected an ad marked conditionalAd. The mechanism is deprecated. Introduced in VAST 4.0.
What your player reported
408· Conditional ad rejected. (deprecated along with conditionalAd)
Wording from the IAB VAST 4.3 specification error table. Players may shorten or reformat it, but the code is the same.
What it means
`conditionalAd` let a wrapper say an ad should only render if the player could support a specific interactive runtime. Both the attribute and this error code were deprecated alongside VPAID, so seeing a 408 means something upstream is still trafficking a creative model the spec retired.
Common causes
- A wrapper still sets `conditionalAd="true"` on `<Ad>`
- Legacy VPAID-era trafficking that was never migrated
- A player that still evaluates and rejects conditional ads
How to fix it
Stop emitting `conditionalAd`. Deliver a normal linear ad with a real `<MediaFile>` fallback, and move interactivity to SIMID. A tag producing 408 is running on a deprecated path and should be re-trafficked rather than patched.
VAST error codes are runtime buckets emitted by the player. They tell you where the failure happened, not which line of XML caused it. Paste the raw tag into the validator to map this code onto the exact element and rule.
Related vastlint rules
- VAST-4.0-conditionalad: conditionalAd attribute is deprecated as of VAST 4.1
Related error codes
Debug this tag now
Validate the XML, follow the wrapper chain, or check it in CI before launch:
# CLI: exits non-zero on errors, ideal for pipelines
vastlint check creative.xmlUse the right tool for this failure
If you already have the resolved XML, run a pure spec check. If you only have a live tag URL, test that endpoint first. If the failure happens in the wrapper chain, inspect each hop.