Rule reference

openrtb.bid.adm.not_markup

warningBid response

What it means

A video or audio bid's adm does not even start with an XML tag: a URL, plain text, or an error string is sitting where a VAST document belongs.

Why it matters

A bare URL in adm is the most common variant, from confusing adm (inline markup) with nurl (win notice URL that can return markup). The player cannot parse a URL as VAST, so the creative never renders.

How to fix it

Put the VAST XML itself in adm, or use the nurl delivery pattern and leave adm out. The adm vs nurl guide covers which delivery mode fits which integration.

Example that trips it

{ "seatbid": [{ "bid": [{ "id": "1", "impid": "1", "price": 4.2, "mtype": 2, "adm": "https://cdn.example/vast.xml" }] }] }

A URL where a VAST document belongs.

Check your payload

Paste a bid request or response into the tester to see whether this code fires against it, or gate on the id in CI with the CLI: the id is stable, wording is not.

Back to the full diagnostic code reference.