There was an unexpected error authorizing you. Please try again.

CTV Programmatic Guide

This guide focuses on specific use cases where IAB Tech Lab standards can and should be deployed to aid in delivery, targeting, measurement & verification, interactivity, ad fraud, and brand suitability in the connected TV (CTV) programmatic ecosystem. 

This guide does not include implementation guidance for Tech Lab specifications. Instead it links out to the appropriate documents and relevant detailed information. Our goal with this home page is to provide a use case based overview of which specifications address specific needs in the CTV ecosystem. This guide is beneficial for individuals who work in the buying, selling, and development of video advertising in CTV.

Overview

The goal of this document is to outline technical specifications and use cases to help advertisers, publishers, platforms, and tech partners efficiently buy and sell CTV ad inventory. It is broken down by the components of a CTV campaign highlighted below: 

CTV Programmatic Use Cases

Each section below outlines typical use cases for each functional areas listed above. We’ve highlighted commonly encountered challenges for each functional topic, as well as which specific Tech Lab standards should be utilized to address the issues.

Representing the Ad Opportunity

How do I design a new CTV Ad Format to work with the most CTV publishers?

A buyer wants to purchase an innovative new ad format, like pause screen ads but they want to build creative that will work with multiple publishers. With the CTV Ad Portfolio Initiative, six ad formats were identified for standardization. These new formats are:

  • Pause Ads
  • Menu Ads
  • Screensaver Ads
  • Overlay Ads
  • In-Scene Insertion Ads
  • Squeeze Back Ads

How do I signal opportunities for a full commercial break (e.g. a pod)

A streaming TV platform wants to signal to programmatic buyers that a full commercial break (ad pod) opportunity is available, allowing buyers to submit bids for ads to fill the break. The platform wants to maximize revenue while ensuring a TV-like ad experience. Podded Bidding in OpenRTB 2.6 allows advertisers to bid on specific ad slots within a multi-ad break of video or audio content. This allows media owners to clearly signal pod opportunities in bid requests and enables buyers to respond with ads tailored to fill those pods.

Video Asset Delivery

How do I ensure my digital video asset fits the screen resolutions it will be served on?

An agency is looking to buy ad space for a digital video ad for an online streaming platform. Using a Mezzanine file, the agency can ensure that the video asset fits the screen resolutions that it will be served on. A Mezzanine file is the raw high-resolution video file that publishers can use to render the best quality file available. Using the highest resolution Mezzanine file dimensions, the digital video asset size can be changed without distorting the ad.

How should the bid request for video be specified when a VAST response is desired?

A streaming platform has TV shows and movies with video advertising breaks. In order to efficiently track impressions and have seamless cross-platform ad delivery, the platform is looking to receive a VAST response from the buying platform or ad server. In order to receive this, the video player will create an ad request. In programmatic this is most often translated into an OpenRTB request with a video object. The winning bid would include a VAST XML document with information about the ad.

How do I scale ad delivery for live event audience sizes?

A broadcasting company is hosting a major event with an expected 40 million concurrent viewers. They need to tell their partners that the unanticipated spike in traffic will impact the amount of ads that need to be delivered in the next commercial break. Using the concurrent streams API, the broadcasting company can communicate how many devices are streaming the event to help their partners prepare for the scale.

How do I uniquely identify a creative asset across different media or screens? My campaign needs it for reporting, caching creative assets, and frequency capping.

A brand wants to run a video campaign across multiple platforms and devices. If each creative is given different IDs when uploaded to each platform for distribution, we will see increased fragmentation with impressions. Unified campaign reporting for reach and frequency will be a challenge because the creative doesn’t look like its the same in each platform.Using Universal AdID in VAST (now available for both VAST 2.0, 3.0 and 4.x), these issues are resolved as each of the creatives will receive the same AdID. This will help to accurately report on which ad was seen where.

How do I verify that my impression was viewable?

Buyers require viewable impressions according to MRC standards. The Open Measurement SDK supports the standardized collection of native application signals used to calculate ad viewability. All CTV apps or ads SDKs should integrate OM SDK in supported environments. OM SDK for CTV aims to address the issue of fragmentation of measurement signals across various platforms by providing a unified framework for measuring CTV-specific viewability signals like is the screen on, device type, and how long since the user has interacted with the TV.

IAB Tech Lab Standards for Delivery

Ad Creative ID Framework (ACIF)

The Ad Creative ID Framework (ACIF) v1.0, defines a framework to enable a persistent identifier for ad creative at every phase in the video advertising supply chain. ACIF is foundational in bridging the gap between linear programming in CTV and the on-demand video we’ve become accustomed to in web and other connected environments.

Common Ad Transport Systems (CATS) 

Common Ad Transport System (CATS) standardizes communication between any two parties in the advertising technology ecosystem and defines an ad request standard that can be used for both RTB and non-RTB use cases, while building on top of existing specifications like AdCOM. 

OpenRTB

OpenRTB facilitates efficient buying and selling of ad impressions on streaming platforms using real-time data. It describes the inventory using standardized objects that detail the impression, playback environment, device, application, and content details, allowing buyers to effectively evaluate and bid on CTV inventory.

Below are some CTV specific features of the protocol:

  • In OpenRTB, Pod bidding signals communicate information about a given ad pod & impression opportunities within the pod such as the sequence of the ad impressions, total pod length, maximum number of ads within a pod, multiple pod associations, and more. 
  • There are several companies/services which act as a clearinghouse or aggregator of metadata from publishers (“Content Data Platform”). These services ingest video content metadata from publishers and assign an ID (here called an “Extended Content Identifier” or “Extended Content ID”) for each piece of content that is unique within that content data platform. There are contextual data vendors who have access to this aggregated metadata and, if provided an Extended Content ID, can return classifications of the content based on what is available in that metadata. 
  • Video Placements in OpenRTB describe video inventory more accurately and efficiently. They improve clarity around how video ad inventory is defined, bought, and optimized. 

Video Ad Serving Template (VAST)

VAST means Video Ad Serving Template and is used to structure ad tags that render ad creatives to video players. Using a common XML schema, VAST transfers important metadata about an ad from the ad server to a video player. 

Live Event Ad Playbook (LEAP)

Live Event Ad Serving refers to the process of delivering digital ads within live-streamed programming. The Concurrent Streams API is the first deliverable for this initiative from IAB Tech Lab. The API aims to provide a standard methodology for subscribers to ask “how many viewers are in a stream?” when a live event is occurring.

CTV Ad Portfolio Formats

The growth of CTV and Streaming TV has resulted in many ad formats being introduced in CTV advertising; some of which are linear/ broadcast tv formats being ported over such as picture-in-picture or squeezeback ads and some are net new, like pause screen ads and shoppable video, which can only be delivered in CTV environments. 

Conversion API (Coming in early 2026)

A conversion API is a server-side tool that allows businesses to send conversion data directly from their servers to  advertising platforms they partner with for measurement and optimization use cases. (Coming in early 2026!)

Global Privacy Protocol (GPP)

The GPP acts as a technical framework to signal, encode, and transmit user consent and privacy preference data within the digital advertising ecosystem. Publishers, such as streaming apps, smart TVs, or CTV platforms, collect consent and preference information from users, encode it in a standardized format known as the “GPP String,” and pass it to downstream partners (such as ad tech platforms or advertisers). This ensures that each participant in the supply chain receives reliable information for privacy compliance. 

Audience Targeting

Serving the right ad to the right audience at the right time and place is ad tech’s favorite mantra. That goal is the same in CTV environments as it is in mobile and web environments. To that end, we recommend Advertisers review our addressability guidance portfolio:

  • Cleanrooms: Guidelines for audience matches
  • Identifiers: What do I need to know about IFA?
  • IDless: What do I need to know about IDless targeting

Beyond identity-based targeting, tools such as content and audience taxonomies exist as methods for enhancing the ability to provide relevant ads. We recommend the use of our content and audience taxonomies.

IAB Tech Lab Standards for Targeting

Content Taxonomy

The Content Taxonomy provides a “common language” that can be used when describing content such as TV shows, movies, articles, apps, webpages, etc. CTV content is tagged with IDs from the taxonomy that denote genres, topical categories, etc. The content taxonomy contains a Genre category to effectively mark CTV content. Today, the genre of a CTV program is sent using the freetext genre attribute in OpenRTB. Because of this, sellers will pass their own internal naming conventions, making it difficult for buyers or DSPs to programmatically utilize genre information for targeting, reporting, and forecasting use cases. IAB Tech Lab has introduced a new attribute called genres that is a string array to be used with the Content Taxonomy. To ease the use of the taxonomy for CTV/OTT genres, IAB Tech Lab has created a list of the most commonly used CTV genres that are mapped to the Content Taxonomy to ensure that content is being properly marked in an OpenRTB bid request. 

Ad Product Taxonomy 

The Ad Product Taxonomy provides a standardized nomenclature for describing the product or service being advertised. It aims to provide publishers with stronger control over the types of ads that get delivered via automated channels. The ad product taxonomy provides a standardized framework for categorizing ad products, aligning ad delivery with content and audience standards, improving efficiency of programmatic advertising, and ensuring brand suitability and relevance in the CTV ecosystem.

Audience Taxonomy

The Audience Taxonomy provides a standardized nomenclature for audience segment names to improve comparability of data across different providers. The Audience Taxonomy also provides a mechanism to make segmentation approaches much clearer (categorically) by introducing Tier 1 level labelling that designates whether the segment describes attribution that are demographic, interest-based, or purchase-intent based.

Clean Room Guidelines

Clean room guidelines provide a secure way for CTV advertisers and publishers to collaborate with data. They enable CTV actors to share valuable audience insights for targeting and measurement while maintaining consumer privacy and compliance with data regulations. This leads to more precise targeting, better measurement and attribution, and real-time optimization. 

Measurement and Verification

Measurement and Verification are key requirements in digital advertising and can be key differentiators between Connected TV (CTV) advertising and traditional broadcast TV.

How do I ensure comprehensive measurement across CTV devices?

A publisher wants to deliver ads across a wide range of CTV devices (LG, Samsung, Apple tvOS, AndroidTV, Fire TV) while delivering reliable metrics for viewability and verification to their partners. Using the Open Measurement SDK, they are able to provide a unified framework for third-party impression measurement and verification across all supported CTV platforms. Without the OM SDK, the advertiser would see inconsistent measurement metrics and increased overhead as each CTV platform behaves differently, requiring individual SDKs for each.

IAB Tech Lab Standards supporting Measurement and Verification

Ad Creative ID Framework (ACIF)

The Ad Creative ID Framework (ACIF) v1.0, defines a framework to enable a persistent identifier for ad creative at every phase in the video advertising supply chain. ACIF is foundational in bridging the gap between linear programming in CTV and the on-demand video we’ve become accustomed to in web and other connected environments. ACIF defines and outlines recommended practices to inject and retrieve the ad creative throughout the advertising supply chain and across multiple entities that support advertising delivery. The key component of ACIF is ad registration. Ad registration is the process of submitting the ad creative details with an ad registration authority and receiving a unique ID for the ad creative. 

Open Measurement

Open Measurement brings consistent impression measurement to CTV environments, building a consistent and scalable measurement of TV and Video advertising across devices. The fragmentation of measurement signals across various platforms has long been a challenge. OM SDK for CTV aims to address this issue by providing a unified framework for measuring CTV-specific impression signals like TV off, device type, and how long the user has been watching, similar to its successful implementation in mobile apps and web video. Advertisers and buyers, confronted with the escalating complexity of CTV inventory, can leverage the standardized measurement provided by OM SDK signals to ensure transparency and accountability in their campaigns.

Interactivity

Interactivity in CTV refers to features that allow viewers to interact with the content or advertisements that they are seeing on their CTV screens.

I want to execute an interactive ad (e.g. shoppable, end cards, etc)

A shoppable video ad appears during a show on a streaming service that allows viewers to engage with products highlighted with interactive hotspots or QR codes. Scanning a QR code opens a webpage on your mobile device where you have the opportunity to purchase the products seen in the ad. At the end of the ad, an interactive end card summarizes all featured products, letting viewers browse or purchase any item that they saw. The SIMID container manages communication between the ad’s interactive elements and the video player, ensuring the ad can request actions without accessing sensitive player data or the user’s device.

IAB Tech Lab Standards for enabling Interactivity

Secure Interactive Media Interface Definition (SIMID)

Secure Interactive Media Interface Definition (SIMID) is a container that enables communication between the player and any ad creative. Because the ad creative is securely enclosed in the SIMID container, none of its code can access the player or the environment where the player is executed. And with the communication SIMID enables, the ad creative can request certain player operations based on ad interactions.

Video Ad Serving Template (VAST)

VAST means Video Ad Serving Template and is used to structure ad tags that render ad creatives to video players. Using a common XML schema, VAST transfers important metadata about an ad from the ad server to a video player.

Ad Fraud

As demand develops for the ad experiences that CTV provides, the industry has seen an increasing number of attempts to exploit vulnerabilities inherent to the technology. Some of the most significant violations have occurred through the spoofing of apps and/or devices to misrepresent higher-value inventory or even monetize completely invalid requests.

How do I protect and trust in messages sent from a partner’s server?

A digital publisher wants to sell ad space on their streaming app. They want to ensure that the bids coming in for their ad unit are not being misrepresented. Using Authenticated Connections, parties receiving cryptographically signed requests in Ads.cert can authenticate the sender to a specific domain, even if they don’t have a direct relationship with that party. Compliance organizations and security vendors sharing the ads.cert Call Signs cause recipients to gain better visibility into the business originating these server-to-server communications and their business practices.

How do I protect against spoofed CTV app inventory

App spoofing was a common ad fraud use case that the industry previously confronted in web and mobile app inventory. Ads.txt and app-ads.txt were developed as tools to understand which entities are allowed to sell what inventory. Largely, those specifications apply to CTV with an enhancement to help with some of the complexities of Television distribution rights.

The CTV environment includes the concept of inventory sharing; when multiple entities have sales rights over ad slots. INVENTORYPARTNERDOMAIN was added to App-ads.txt and allows for another domain to be designated as an authorized seller.

Validation of authorized sellers in CTV still happens the same way as with app-ads.txt. There is a developer url listed in the app’s app-store listing, found from the bundle ID in the bid request. The developer url points to the location of the app-ads.txt file. From there, the buyer is able to validate the seller IDs authorized by the app to sell their inventory.

How do I protect against spoofed devices

Bid requests and measurement beacons contain information about the device, which is used for various purposes, including ad selection and measurement. In OpenRTB bid requests, the “device” object carries this information, while the User-Agent HTTP header represents the same in case of measurement beacons, including impressions. Since this information is represented in a text string, it can be easily manipulated by intermediaries in the OpenRTB protocol and by actors fabricating HTTP requests. Such misrepresentation of device information is termed as device spoofing and can be performed for both benign and malicious purposes. To combat device spoofing, the device manufacturer, acting as a trusted party, attests to the authenticity of their devices. This is termed Device Attestation, and it can be used to verify that ad impressions are being rendered on authentic devices and to uncover Sellers of spoofed inventory.

How do I protect against unviewable impressions?

An advertiser wants to ensure that their video ads are being seen by real viewers. The Open Measurement SDK (OM SDK) is integrated with the app and interfaces with third party verification vendors. When an ad is served, the SDK detects the position and dimensions of the video ad, how long the ad was on screen, and if part of the ad was obstructed. If the OM SDK or the vendor detects that the video is fully obscured, not in the active window, the TV is off, etc, that impression is flagged as not viewable.

IAB Tech Lab Standards for detecting Ad Fraud

Ads.txt & app-ads.txt

Ads.txt stands for Authorized Digital Sellers and is a simple, flexible and secure method that publishers can use to publicly declare the companies they authorize to sell their digital inventory.

CTV/OTT Inventory Sharing is based around multiple entities selling ads within the same streaming service or app. ads.txt/app-ads.txt supports inventory sharing, allowing publishers to list other parties that are authorized to sell their inventory which improves transparency in the industry and helps combat fraud.

Sellers.json 

Sellers.json provides a mechanism to enable buyers to discover who the entities are that are either direct sellers of or intermediaries in the selling of digital advertising. A published and accessible sellers.json file allows the identity of the final seller of a bid request to be discovered (assuming that they are ads.txt authorized). It also allows the identities of all nodes (entities that participated in the bid request) in the SupplyChain object to also be discovered.

SupplyChain Object (OpenRTB)

The SupplyChain Object enables buyers to see all parties who are selling or reselling a given bid request.

Ads.cert

“ads.cert” is the umbrella marketing term for an IAB Tech Lab protocol suite that provides an open standard cryptographic security foundation for the programmatic advertising ecosystem. Using these solutions helps participants assure that they obtain genuine ad trade opportunities that have been secured against misrepresentation. Any party buying, selling, or facilitating ad trades can deploy the free ads.cert tools and protocols within their ad serving environment. Participants automatically and reliably discover each other within this scheme. Its federated nature creates no central authority that would become an arbiter of business identity within advertising.

Brand Suitability

Brand Suitability in CTV refers to protecting a brand’s identity/ reputation by ensuring that ads don’t play before or after content that the brand deems inappropriate. The below standards provide visibility and telemetry to empower buyers to make their own decisions.

How do I ensure my ads are not being served alongside non-brand safe content?

A DSP does not want the ad that they’re representing to be served alongside content that is not an appropriate fit for the brand’s identity, values, or audience. The streaming platform that the DSP is bidding for ad space on has tagged all of their content with their corresponding Content 3.1 taxonomy categories. Since the content was properly tagged by the platform, the DSP can use the ‘bcat’ attribute and block their ad from completing a bid that goes hand in hand with unbrand-suitable content.

IAB Tech Lab Standards for enabling Brand Suitability evaluation

Content Taxonomy

The Content Taxonomy provides a “common language” that can be used when describing content such as TV shows, movies, articles, apps, webpages, etc. CTV content is tagged with IDs from the taxonomy that denote genres, topical categories, etc. The content taxonomy contains a Genre category to effectively mark CTV content. Today, the genre of a CTV program is sent using the freetext genre attribute in OpenRTB. Because of this, sellers will pass their own internal naming conventions, making it difficult for buyers or DSPs to programmatically utilize genre information for targeting, reporting, and forecasting use cases. IAB Tech Lab has introduced a new attribute called genres that is a string array to be used with the Content Taxonomy. To ease the use of the taxonomy for CTV/OTT genres, IAB Tech Lab has created a list of the most commonly used CTV genres that are mapped to the Content Taxonomy to ensure that content is being properly marked in an OpenRTB bid request. 

Ad Product Taxonomy

The Ad Product Taxonomy provides a standardized nomenclature for describing the product or service being advertised. It aims to provide publishers with stronger control over the types of ads that get delivered via automated channels. The ad product taxonomy provides a standardized framework for categorizing ad products, aligning ad delivery with content and audience standards, improving efficiency of programmatic advertising, and ensuring brand suitability and relevance in the CTV ecosystem.

Audience Taxonomy

The Audience Taxonomy provides a standardized nomenclature for audience segment names to improve comparability of data across different providers. The Audience Taxonomy also provides a mechanism to make segmentation approaches much clearer (categorically) by introducing Tier 1 level labelling that designates whether the segment describes attributions that are demographic, interest-based, or purchase-intent based.