VASTlint
Back to blog
CTV delivery/9 min read

Open Programmatic CTV Runs on TV Sets and Phone Apps in Nearly Equal Measure. One VAST Tag Still Has to Play on Both.

Pixalate's June 2026 report puts 57% of U.S. open programmatic CTV spend on large-screen devices and 43% on phones and tablets. Buyers who QA a tag on one surface are blind to the playback failures waiting on the other half of the same inventory class.

Author

Alex Sekowski

Published

August 20, 2026

Reading time

9 min read

CTVVASTProgrammaticSSAIVideo measurement

MediaPost reported in August on a June 2026 Pixalate study of U.S. open programmatic connected TV: large-screen devices, smart TV sets, account for 57% of that spend, and 43% runs on small-screen devices, phones, tablets, and other iOS and Android surfaces. The headline is a device split, not a fraud score or a fill-rate chart. It still matters to anyone shipping VAST, because open exchange CTV is not one player environment. It is two, traded under one label.

The same article cites Pixalate on scope: open programmatic streaming buys, public RTB auctions open to any demand-side platform buyer, are roughly 18% to 19% of overall U.S. CTV ad spend, about $6 billion to $7.5 billion against industry estimates of $33.1 billion to $40.4 billion total. That is a minority of CTV dollars, but it is the slice where a generic tag meets the widest device mix without a curated deal wrapper to narrow the path.

What the metric actually measures

Pixalate's figures describe where open programmatic CTV money lands by screen class and, within large screens, by TV operating system. On large screens, Amazon Fire TV accounts for 30% of open TV programmatic ad spend, Roku for 18%, Samsung Smart TV for 5%, and Apple TV for 4%. Warner Bros. Discovery properties show up heavily in network-level open deal concentration: Food Network at 34%, CNN at 20%, Investigation Discovery at 7%, TLC at 4%, and Animal Planet at 2% among the top ten by spend.

Genre and daypart skew differently by surface. Reality-unscripted and news programming pull in 41% and 23% of open programmatic ad deals respectively. New programming dominates small-screen spend at 64%. Morning hours, 6 a.m. to noon, hold a 30% share of large-screen open programmatic spend; overnight, 11 p.m. to 6 a.m., holds a 31% share on small screens.

None of that is a statement about whether a given impression rendered. It is a spend and deal-composition map. The population is U.S. open programmatic CTV as Pixalate measured it in June 2026, not all CTV (private marketplace and programmatic guaranteed are excluded from the open slice, though MediaPost notes that programmatic transactions overall, including PMP and PG, represent around 84% to 88% of all U.S. CTV ad spending). The takeaway for delivery teams is simpler: when you buy open CTV programmatic, you are not buying a living-room-only path. You are buying a portfolio that is almost evenly split between TV OS players and mobile apps.

Why one tag fails on two surfaces

Operations teams often treat CTV QA as a single checklist: resolve the wrapper chain, confirm HTTPS, spot-check one MP4. That workflow assumes one dominant player class. The 57/43 split breaks the assumption. A tag that plays in a mobile app WebView or native player may still die on a Fire TV or Roku with VAST error 403, could not find a MediaFile supported by this player, because the codec, container, bitrate cap, or absence of a mezzanine file matters on the TV side and not on the phone side.

The IAB VAST CTV addendum exists because web-sized renditions are not interchangeable with living-room playback. Mezzanine files, higher-resolution masters for SSAI transcoding, and explicit MediaFile typing are written for large-screen delivery paths. Mobile inventory in the same open bucket may accept a lighter progressive MP4 and never touch a stitcher. SSAI on FAST and broadcaster apps on the large-screen half expects something to transcode; a single 800 kbps web rendition that clears mobile QA gives the stitcher nothing useful and the TV player nothing better to select.

Platform share compounds the problem. Fire at 30% and Roku at 18% of large-screen open spend means the TV half of your open CTV line item is concentrated on two player stacks with different manifest, codec, and interactivity histories. A tag tested only on Samsung's player or only in an Android tablet app does not prove compatibility on either dominant TV OS. Genre skew adds a planning mistake: reality and news lean large screen; new programming leans small. A creative cut for one genre mix can under-serve the other if MediaFiles are not duplicated or if mezzanine coverage is missing where SSAI sits in the path.

Open CTV is traded as one category and delivered as two player regimes. The spend data says so in almost equal percentages.

delivery triage note

The mechanism in the document

The failure shows up in the VAST payload, not in the bid request headline. Wrapper depth and timeout behavior hit both surfaces, but MediaFile selection is where the split bites. A Linear creative with one progressive MP4 may validate in a browser-based tool and still omit Mezzanine, which vastlint flags at info severity with the note that ad-stitching servers may reject the tag in CTV and SSAI contexts. Interactive assumptions diverge too: SIMID and native controls on TV, lighter non-linear or static fallbacks on mobile, and legacy VPAID dependencies that TV platforms dropped years ago but mobile wrappers still tolerate.

Measurement follows playback. Quartile and complete events only mean something if the player chose a MediaFile and started decoding. An impression pixel that fires on ad load while the TV player rejects every rendition is the same silent loss as a stitch timeout, except the campaign report shows delivery until someone reconciles player logs. Daypart skew makes that harder to catch in QA: morning-heavy large-screen spend and overnight-heavy mobile spend mean a tag checked at noon in a desktop inspector never sees the traffic mix that will actually run.

Get VAST spec updates, platform guides, and release notes in your inbox.

Checks worth running before launch

  • Resolve the full wrapper chain on both a TV OS test device and a mobile app path, not only in a desktop VAST inspector.
  • Confirm at least one TV-safe MP4 rendition plus mezzanine or stitcher-approved master when the supply path includes SSAI or broadcaster FAST apps.
  • Match MediaFile type, width, height, and bitrate claims to the platforms in the Pixalate large-screen mix you actually buy (Fire and Roku first).
  • Require HTTPS on every tracker and media URL; mixed content blocks TV players more aggressively than mobile WebViews.
  • Split reporting by app surface where your ad server allows it; aggregate CTV line items hide the 403 rate on the TV half.
  • Re-run validation on the trafficked tag after any transcode or dynamic creative step that replaces MediaFiles downstream.

What to do

Treat open programmatic CTV as a dual-environment launch. The buy-side label says CTV; the spend map says 57% TV OS and 43% mobile. Your QA plan should mirror that ratio instead of assuming the living room is the whole story.

Paste production tags into the validator before they reach the exchange or the stitcher. vastlint checks structural consistency, MediaFile and mezzanine presence, HTTPS, wrapper depth, and spec-derived rules from VAST 2.0 through 4.4. It does not detect fraud, bots, or whether an impression was valid. It catches malformed or inconsistent payloads that fail on one surface while appearing to pass on another.

Validate the tag against both playback regimes

Run VAST tags through specification-derived rules so MediaFile, mezzanine, and tracker consistency are visible before the tag hits open CTV paths split across TV and mobile.

Open the VAST validator

Sources

MediaPost coverage of Pixalate's June 2026 U.S. open programmatic CTV spend split (57% large screen, 43% small screen), platform shares, genre and daypart concentration, and open vs total CTV spend context.

IAB guidance on mezzanine files, high-resolution MediaFiles, and large-screen delivery expectations in VAST.

Keep reading

Related stories

All posts