vastlint
VAST-2.0-extension-misplaced-element

VAST-2.0-extension-misplaced-element

<Extension> contains an element that has a dedicated location in the VAST spec

WarningSchemaIAB VAST 2.0 §2VAST 2.0 and later (all versions)

Short answer

An <Extension> block contains an element that the VAST spec defines as a first-class child of a standard container (e.g., <Impression> inside <Extension> instead of directly inside <InLine>). The extension will likely be ignored by spec-compliant players.

Why this matters in production

This rule is a strong risk signal. Tags with this issue often still parse, but they become brittle across SDKs, SSAI resolvers, and CTV environments. Schema violations tend to create parser disagreement. One system may recover while another drops the tag entirely, which is why these bugs often show up as environment-specific fill loss. Affected scope: VAST 2.0 and later (all versions).

How to fix

Move the element out of <Extension> to its canonical location in the VAST tree.

Check your VAST tag for VAST-2.0-extension-misplaced-element and other issues instantly.Validate a tag →