vastlint

AdCP and VAST: where agentic ad buying meets video delivery

AdCP (Ad Context Protocol) is a new open standard for AI-driven ad buying, published by AgenticAdvertising.Org in April 2026. It handles the campaign and deal layer. For video, creative delivery still goes through VAST XML. Same as it always has.

What is AdCP?

AdCP is short for Ad Context Protocol. The short version: it's to agentic ad buying what OpenRTB was to programmatic. A shared vocabulary so that AI agents from different vendors can talk to publishers, DSPs, and creative tools without every integration being a custom project.

Version 3.0, released April 2026, added governance tooling, a brand.json format for machine-readable brand identity, a Creative Protocol for multi-format asset production, and expanded channel coverage to 20 media types including linear TV, streaming audio, and gaming. The spec is Apache 2.0 licensed and published at docs.adcontextprotocol.org. It is governed by an industry consortium (AAO) with seats for brands, agencies, publishers, and tech providers. Not owned by any single platform.

How AdCP connects to VAST

The AdCP 3.0 spec is direct about scope: it operates at the campaign and deal layer and hands off to OpenRTB for impression-level auction execution. The same hand-off applies for video creative. Once a deal is confirmed, the actual creative that plays in the player is still a VAST XML document. AdCP does not define media delivery, tracking pixels, or playback. That stays with VAST.

StandardLayerWhat it handles
AdCPCampaign / dealInventory discovery, planning, buying, creative brief, governance, reporting
OpenRTBAuction / impressionReal-time bid requests and responses
VASTCreative deliveryMedia URLs, tracking pixels, playback instructions to the player

VAST works the same way whether the buy upstream was placed by a human, a DSP algorithm, or an AdCP agent. The player doesn't know and doesn't care.

The VAST tag is still the last mile

An AdCP pipeline can automate everything from brief to confirmed deal. But there is still a VAST tag at the end, and that tag has to be valid. The usual suspects in generated tags:

  • Missing <Impression> URL: required by spec, skipped by templates that assume it will be injected later.
  • <Duration> as bare seconds (30) instead of HH:MM:SS (00:00:30).
  • HTTP media or tracking URLs: most players block them outright.
  • <NonLinear> without width/height: required since VAST 4.2.
  • Wrapper chains that never resolve to an inline ad.

None of this changes because the buy was agentic. A broken VAST tag drops the impression regardless of how cleanly the upstream pipeline ran.

AdCP 3.0 features relevant to video

Creative Protocol

A creative agent takes one brief and produces assets in every required format across every connected seller simultaneously. For video that means multiple VAST-compatible renditions at different bitrates and codecs in one pass, rather than coordinating separate production workflows per publisher.

brand.json

brand.json is a machine-readable brand identity file (guidelines, colors, logos, licensing rights) that creative agents read directly. Think of it as a robots.txt for brand assets. It removes the PDF-and-email handoff that currently sits between a brief and a produced VAST tag.

Governance: check_governance

Before a campaign goes live, check_governance validates budget authority, brand safety rules, and regulatory compliance. For video this includes rejecting targeting combinations that would violate COPPA, fair-housing rules, or GDPR Article 9 at the schema layer, before the VAST tag is ever served.

Channel coverage

AdCP 3.0 covers 20 channels. Linear TV, CTV, and streaming audio are all in scope, all formats where video creative is delivered via VAST or a VAST-derived standard. AdCP-enabled sales agents are already in production at Snap, Pinterest, Reddit, Netflix, and Vox Media.

AdCP vs IAB Tech Lab

VAST, OpenRTB, SIMID, and OMID are IAB Tech Lab specs. AdCP is not. It comes from AAO, a separate consortium. The two organisations are working on different layers of the same stack, not competing to own the same one.

StandardPublished byScope
VAST 4.xIAB Tech LabVideo ad serving, creative delivery, tracking
OpenRTB 2.x / 3.xIAB Tech LabReal-time programmatic auction
SIMID 1.xIAB Tech LabSecure interactive creatives inside VAST players
OMID 1.xIAB Tech LabOpen measurement / ad verification
AdCP 3.0AgenticAdvertising.OrgAgentic campaign orchestration, planning through reporting

Validating VAST in an agentic pipeline

A VAST tag generated by an AdCP creative agent needs to pass the same validation as one hand-authored by ad ops. vastlint checks VAST 2.0 through 4.3 against the full IAB spec. Use it at vastlint.org/validate, via the MCP server to plug directly into agent toolchains, or as an npm package in CI.

FAQ

What is AdCP?
Ad Context Protocol. An open standard (Apache 2.0) from AgenticAdvertising.Org for AI-driven ad buying. Covers inventory discovery, campaign planning, deal execution, creative production, governance, and reporting across 20 media channels. Version 3.0 was published April 2026.
Does AdCP replace VAST?
No. AdCP handles the buying workflow. VAST handles creative delivery to the player. They operate at different layers and both are still needed for video.
Does AdCP replace OpenRTB?
No. AdCP agents hand off to OpenRTB for impression-level auction. AdCP sits above OpenRTB in the stack, not alongside it.
Who publishes AdCP?
AgenticAdvertising.Org (AAO). It is not an IAB Tech Lab spec. The sell-side reference implementation is maintained by Prebid under separate governance.
Why does VAST validation still matter with agentic buying?
AdCP cleans up the upstream workflow but has no say in whether the VAST tag it eventually produces is well-formed. Missing Impression URLs, bad Duration format, HTTP media URLs. These break the impression regardless of how the buy was placed.

Further reading