Docs
Validate OpenRTB online
Paste a bid request or bid response into the tester and get every spec violation instantly: no signup. Validation runs in your browser. Payloads you enter may be stored so the rules can be improved and for research described in the terms; see privacy.
Validation still runs in the browser
The validator is the same Rust core that powers the CLI, compiled to WebAssembly and executed in your browser. Bid payloads routinely carry user identifiers, IPs, and deal terms. Those identifiers are stripped before a copy is stored for rule work and research described in the terms. Submitted JSON is not published as a public gallery. Built-in samples are not sent. Opt out on the tester, or use the CLI on your machine. Details are on the privacy and terms pages.
What you get per finding
- A stable rule id (for example
openrtb.field.moved) you can look up in the rule reference - The exact JSON path that tripped it, and an error or warning severity
- The OpenRTB spec section the check derives from, where the catalog records one
Validation is version-pinned: pick any tracked snapshot from 2.0 through 3.0 and deprecated, moved, and not-yet-available findings adjust to match.
Start from a working payload
The tester ships happy and unhappy sample scenarios, and the examples library has annotated valid payloads (banner, video, CTV pods, native, DOOH, 3.0) that open directly in it.
Validating in bulk or on every deploy? The same rules run in the CLI, from Node.js, in Rust, and over MCP for AI agents.