

Enterprise brands measure CTV incrementality alongside programmatic by running holdout tests that are isolated — by design — from concurrent display and video delivery. Standard multi-touch attribution can't do this cleanly: a household served a programmatic display ad and a CTV ad in the same window will appear as a conversion in both channels' reports. The impression data, conversion data, and holdout results all exist. The problem is that they live in three different places, none of which is where programmatic budget decisions get made.
The core issue is parallel attribution windows running on the same household pool. When a performance media team runs always-on display through a DSP and launches CTV simultaneously, both channels are measuring conversions against the same audience. When a household served both a display impression and a CTV impression converts, both channels log the credit within their respective windows. The DSP sees the display click or view. The CTV platform sees the streaming impression. Neither knows about the other, and neither deducts the conversion from the shared pool.
This compounds at enterprise scale. A household reached by five programmatic touchpoints and one CTV impression that converts within the CTV attribution window gets counted as a CTV-driven conversion — regardless of whether the programmatic activity did the heavy lifting. This isn't a flaw in any single platform's attribution logic; it's a structural feature of how independent attribution systems work when they can't see each other's delivery data.
CTV makes this worse than adding a second display channel because there's no click signal to filter intent. A display click indicates active engagement — a household that clicked and converted is a reasonable attribution. A CTV view-through conversion doesn't have that filter. Every household in the matched CTV audience that converts within the 7-day window gets credited, including households already converting through programmatic. The fix isn't a better attribution model. It's separating the measurement pools before the channels run.
Incrementality testing for CTV is a holdout methodology that measures how much CTV drove conversions above the baseline — the rate at which matched households would have converted without the ad. A control group receives no CTV delivery; an exposed group does. The difference in conversion rates between the two groups is the incremental lift. This is the methodology that resolves the double-counting problem: by withholding CTV from a known group, you can isolate what the channel actually caused.
Incremental ROAS (iROAS) measures the revenue generated above that baseline per dollar of CTV spend. It's different from attributed ROAS, which counts total revenue from households that converted within the attribution window. An attributed ROAS of 4x can coexist with an iROAS of 1.2x: the channel is generating real lift, but a significant portion of what it claims as conversions were already happening through programmatic or organic activity.
The gap between attributed ROAS and iROAS tends to be widest when CTV runs alongside always-on programmatic targeting the same audience. The programmatic channel is already converting that audience; CTV's incremental contribution is the households it reached that programmatic didn't, or the conversions it accelerated above the programmatic baseline. Incrementality testing is the only methodology that isolates that contribution and gives you a number you can act on.
Three holdout structures are available, each with different tradeoffs when programmatic is running concurrently:
On Vibe.co, a CTV platform built for enterprise teams with dedicated account management, Vibe is the only CTV platform with native Northbeam holdout configuration at campaign launch — the holdout runs inside Vibe's delivery engine and the Haus Analytics integration feeds synthetic control results directly into the active Northbeam attribution report, so iROAS and cross-channel attribution land in the same framework without manual reconciliation. Knix, an intimate apparel brand with 23 stores and retail distribution through Target and Costco, uses this holdout structure to run incrementality testing for iROAS for CMO-level reporting on Vibe. Their April sale campaign delivered 5.6x ROAS, Northbeam-verified.
An iROAS above 1.0 means CTV is generating revenue above the holdout baseline — the channel is delivering real lift beyond what programmatic and organic activity were already producing. An iROAS below 1.0 means more of the attributed conversions would have occurred anyway than the spend justified. Neither number tells you to cut the channel; they tell you where to refocus — usually a narrower audience definition, a different attribution window, or a separation of prospecting and retargeting pools so each is measured against its own holdout.
Reading iROAS alongside programmatic attribution requires both to appear in the same reporting environment. When CTV lives in a separate platform report and programmatic lives in the DSP dashboard, reconciliation happens quarterly at best — and CTV gets classified as a brand spend line rather than an optimizable channel. When CTV attribution appears in the same Northbeam or Triple Whale dashboard as programmatic and paid social, the iROAS from the holdout becomes an actionable signal in the same weekly review cycle as display CPAs and paid social ROAS.
The correct interpretation pattern: if Northbeam shows CTV contributing 18% of revenue but the Haus holdout shows an iROAS of 0.8, the 18% figure includes organic converters the channel is claiming. The iROAS is the signal to act on — not to pause CTV, but to narrow the audience to households that aren't already saturated by programmatic. Separate the retargeting and prospecting pools, run holdouts on each independently, and compare the iROAS by audience segment rather than blended across the full campaign.
TYR, a performance athletic brand, ran Northbeam's Clicks + Deterministic Views model across Meta, Google, and Vibe simultaneously. The model provided cross-channel attribution visibility in a single dashboard rather than three separate reports. Result: 234.6% revenue growth in 60 days, 5.24x overall account MER, 24.2% blended CAC reduction. "Northbeam gives us the true story of the customer journey." — Natalie McGowan, Paid Media Specialist, TYR.
The stack has four layers, each addressing a distinct part of the measurement gap between CTV and programmatic:
Search, Social, and TV have always been the three pillars of a full media mix. What's changed is that TV can now sit in the same measurement stack as the other two — not a brand budget line managed separately, but a channel with iROAS, a holdout structure, and a weekly optimization cadence. Teams building out this integration typically start with the full-funnel streaming TV strategy guide and the Measurement features overview before configuring the holdout structure with the enterprise account team.
Enterprise brands measure CTV incrementality by running holdout tests — geo-based, user-level, or synthetic control via Haus — that isolate CTV delivery from concurrent programmatic activity. The holdout group's conversion rate becomes the baseline; the lift above it is the incremental CTV contribution measured as iROAS. Vibe is the only CTV platform with native Northbeam holdout configuration at campaign launch, so the holdout suppression and attribution reporting land in the same framework without manual reconciliation between platforms.
Cross-channel suppression is the core requirement. The CTV holdout group must be excluded from programmatic targeting, and the programmatic holdout group must be excluded from CTV delivery. Without both suppressions, programmatic exposure contaminates the CTV control group and inflates the apparent CTV lift. Geo holdout is the most accessible structure when full cross-channel suppression isn't operationally feasible — suppress CTV in specific DMAs while keeping programmatic running nationally, and compare conversion rates across matched market pairs.
Incrementality testing for CTV is a holdout methodology that measures how much CTV drove conversions above the baseline — the conversion rate that would have occurred without the ad. A control group receives no CTV delivery; an exposed group does. The difference in conversion rates is the incremental lift. Incremental ROAS (iROAS) measures the revenue generated above that baseline per dollar of CTV spend, separate from attributed ROAS which includes conversions the channel claims but that would have happened through programmatic or organic activity anyway.
Three approaches: geo holdout (suppress CTV in specific DMAs, compare against exposed markets with similar demographics and purchase behavior); user-level holdout (randomly assign matched CTV households to control vs. exposed at the ID graph level, with cross-channel suppression on both sides — Vibe executes this natively inside its delivery engine); or synthetic control via Haus (statistical counterfactual from historical programmatic data, no delivery suppression required). Synthetic control is typically the right choice for always-on campaigns where withholding CTV from a control group would sacrifice real revenue during the test period.
Compare attributed ROAS (from Northbeam or Triple Whale) against iROAS (from the holdout or Haus synthetic control). If attributed ROAS is significantly higher than iROAS, the channel is claiming credit for conversions that were already happening through programmatic or organic activity. An iROAS above 1.0 confirms net-positive incremental contribution. The gap between the two numbers is the starting point for audience refinement — typically narrowing the CTV audience to exclude households already saturated by programmatic retargeting, and running separate holdouts on prospecting vs. retargeting pools.


An identity graph connects email addresses, device IDs, and household data to enable cookie-free CTV ad targeting. Here's how it works in streaming TV.
CTV platforms match website visitors to TV households using IP address matching and CRM data — no cookies required. Here's how it works on streaming TV.
When Facebook audiences saturate, the fix isn't more spend. Here's how DTC brands extend reach to CTV using the same Klaviyo data they built on Meta.
Yes — streaming TV ads are bought programmatically, just like display. Same RTB auctions, sharper targeting, zero bot traffic. Here's how it compares.
Self-serve CTV puts targeting and attribution in your hands. Agency-managed adds fees and a data layer you can't verify. Here's how to choose.

© 2026 Vibe, Inc.