Skip to main content
AdCP separates direct audio bytes (audio_hosted), VAST audio tag delivery (audio_vast), and legacy DAAST tag delivery (audio_daast). Streaming, podcast, host-read, and broadcast products narrow these canonicals with production, duration, and slot parameters. Choose by the payload the seller accepts: direct audio bytes use audio_hosted; a VAST tag carrying audio uses audio_vast; a DAAST tag uses audio_daast. AdCP keeps DAAST valid for existing integrations while enabling the IAB-recommended VAST 4.1+ path. These canonicals identify creative delivery shape; dynamic ad insertion timing and stream-stitching behavior remain outside this contract.

Hosted audio

Host-read or synthesized audio

When the publisher or seller produces the final audio, declare the source and the input slots explicitly:
The seller/publisher production runtime may render later. If it exposes a pre-build or preview operation, it advertises a matching creative capability.

Loudness requirements

Loudness constraints describe the source asset a buyer supplies. AdCP’s practical reference profile for audio advertisements and interstitials is -16 LUFS with a ±2 dB tolerance, based on operator guidance for reusable radio and streaming assets. A format or publisher may declare a different target for its distribution chain, and that declared target is authoritative. AES TD1008 recommends -18 LUFS for assorted online content and interstitial distribution; it does not define AdCP’s -16 LUFS ±2 dB source-production profile. LUFS and LKFS are identical units under ITU-R BS.1770, so a value written in LKFS does not need conversion before comparison with loudness_lufs. This unit equivalence does not make AES TD1008 and EBU R128 the same delivery profile; the applicable format or publisher target still governs. The same constraints can appear in two protocol shapes:
  • Canonical audio_hosted declarations use params.loudness_lufs, params.loudness_tolerance_db, and params.true_peak_dbfs.
  • Legacy named formats put the corresponding fields in the audio slot’s requirements object.
If both shapes describe the same accepted format, the canonical format parameter governs for each duplicated loudness constraint. Producers should keep the projection aligned, and consumers should not combine the two targets into a wider range. If dual-emitted legacy requirements conflict with the canonical parameters, SDKs MUST prefer the canonical declaration, surface FORMAT_DECLARATION_DIVERGENT in the response errors[], and MUST NOT silently discard the conflict. The manifest asset’s loudness_lufs and true_peak_dbfs report the delivered file’s measured properties; they do not override the product requirements. Platform normalization happens after source-asset validation. Digital streaming and SSAI platforms may normalize or gain-adjust audio during insertion, but that does not waive the declared source requirement. Terrestrial broadcast chains commonly apply automatic gain control or other playout normalization; there, the declared loudness remains production guidance and the broadcaster’s distribution target remains authoritative.

VAST-delivered audio

VAST standardized audio support begins at version 4.1, which is the recommended authoring profile. A seller may explicitly list VAST 2.0, 3.0, or 4.0 when its player supports legacy audio-in-VAST interoperability; listing an older version does not make it standards-conformant audio. Each submitted asset declares its exact version. The resolved terminal InLine ad must be Linear and provide an audio/* MediaFile with width="0" and height="0"; VAST 4.1+ documents must also declare adType="audio".
The VAST document carries its own impression, start, quartile, completion, click, error, and other applicable audio events. Visual-only VAST events are not implied by choosing audio_vast.

DAAST

Use audio_daast with a required daast asset slot when an existing integration still delivers DAAST. DAAST event tracking belongs in the tag; non-DAAST companion or impression trackers use declared canonical slots. See Canonical formats, Radio, Broadcast, and list_transformers.