The reliable way to measure CTV advertising for local stores is a geo test. Buy streaming TV in some markets, keep comparable markets dark, and count the difference in customers at your locations. Vendor foot-traffic reports, QR scans and promo codes all have a job, but none of them can tell you what the ads added.
CTV (connected TV, meaning ads on streaming services watched on a television) is no longer a test budget. The IAB expects US CTV ad spend to grow 11% to $29.3 billion in 2026 (Source: IAB, via MediaPost, 2026), and streaming made up 48.5% of all TV viewing in June 2026 (Source: Nielsen, The Gauge, 2026). Regional brands can now buy it by DMA or ZIP list for what a week of cable used to cost. The measurement hasn’t caught up. This guide covers the test design, a worked example with the arithmetic, and the mistakes that make CTV look better or worse than it is.
Why CTV is hard to measure for physical stores
Nobody clicks a TV. The path from the couch to your counter leaves no link to follow, so the usual click reports come back nearly empty. That isn’t evidence CTV failed. It’s evidence you’re using the wrong ruler.
Vendors fill the gap with household attribution. They match the IP address of the TV that showed your ad to phones on the same home network, then check whether those phones later appeared at one of your stores in a location panel. Finally they compare the visit rate of exposed households with that of unexposed ones and call the difference lift.
The flaw is in who gets exposed. Your targeting picks households that look like your customers, in ZIP codes near your stores, who stream a lot of TV. Those homes were more likely to visit you before the first ad aired. Most of the gap between exposed and unexposed households is your targeting doing its job, not the ad changing anyone’s mind.
Better vendors build matched control households to correct for this, and that helps. But you are still trusting a model you can’t audit, built on a panel that sees a small, uneven slice of your customers. Use those reports to compare creatives, frequency caps and dayparts inside a campaign. Don’t use them to decide whether CTV earns its budget.
What to measure instead: customers at your locations, by market
CTV has one big advantage over social and search for measurement: you buy it by geography. If you choose where it runs, you also choose where it doesn’t, and the stores in the dark markets become your comparison. You need three data sets, and you almost certainly keep all of them already.
- Customers by location, by week. Transactions or guest counts from the POS (Toast, Square, NCR, Lightspeed or whatever you run). Counts are steadier than revenue, because basket size moves for reasons that have nothing to do with TV.
- CTV spend and delivery by market, by week. Ask for impressions by DMA as well as spend. Planned geography and delivered geography are not always the same thing.
- A calendar of everything else. Openings, closures, remodels, price changes, local promotions and other channels that changed in only some markets.
The comparison is a weighted twin. For each test market, find the blend of dark markets that tracked it most closely over the previous six months. Once CTV starts, the gap between the test market and its twin is your estimate of extra customers. Economists call this a synthetic control, and it suits the problem: a few markets get a change, many similar markets don’t.
How to set up a CTV test for local stores
- Write the question down. “Does $18,000 a week of CTV in a market add customers to our stores there, and what does each one cost?” is testable. “Does CTV build our brand?” is not, at least not with store counts.
- Pick test markets with enough stores. Aim for at least a dozen stores across the test markets and two or three times as many in the holdouts. Choose test markets by pairing similar markets and flipping a coin, not by asking which regional manager wants TV.
- Leave buffers. Streaming households are targeted by IP address, and IP geography is imperfect. Customers also cross market lines to shop. Drop markets that border a test market from both groups.
- Fix the length before you start. Eight weeks on air, then four weeks of post-period with CTV off everywhere. CTV builds through frequency, so the first fortnight usually shows little, and some of the effect arrives after the flight ends.
- Size the spend against what you can detect. See the next section. This is where most CTV tests fail before they start.
- Freeze everything else. No new promotion, price change or extra paid social in only the test markets. If something unavoidable happens, log the week.
How much CTV spend do you need to see a result?
Start from your noise. Take the weekly gap between your planned test markets and their twin over the pre-period and measure how much it wanders. Say its standard deviation is 2.5%. Over an eight-week test the standard error of the average gap is about 2.5% ÷ √8, or 0.9%. The smallest lift you can reliably detect, at the usual 95% confidence and 80% power, is roughly 2.8 times that: about 2.5%.
Now turn that into dollars. If the test stores do 29,400 transactions a week, a 2.5% lift is about 735 extra a week. If you think CTV might deliver an extra customer for $20 to $25, you need roughly $15,000 to $18,000 a week in the test markets just to expect a visible effect. At $5,000 a week the test will almost certainly come back “inconclusive”, and you’ll have paid to learn nothing. Our guide to geo holdout tests walks through this sizing in more detail.
A worked example: CTV for a 40-store retail chain
This example is illustrative. A 40-store regional pet-supply chain runs CTV in five DMAs that hold 14 of its stores. The other 26 stores sit in holdout markets, apart from buffers. The buy is $18,000 a week for eight weeks, or $144,000. Each test store averages 2,100 transactions a week, so the test stores do 29,400 a week between them.
| Line | Value | How it’s worked out |
|---|---|---|
| Test stores, weekly transactions before CTV | 29,400 | 14 stores × 2,100 |
| Change during the 8 weeks on air | +6.1% | Versus their own pre-period |
| What the twin says would have happened anyway | +3.4% | Spring trend seen in the holdouts |
| Lift during the flight | +2.7% | 6.1% − 3.4% |
| Extra transactions per week, on air | 794 | 29,400 × 2.7% |
| Extra transactions, 8 weeks on air | 6,350 | 794 × 8 |
| Carry-over, 4 post weeks at +1.2% | 1,411 | 29,400 × 1.2% × 4 |
| Total extra transactions | 7,762 | 6,350 + 1,411, unrounded |
| Cost per extra transaction | $18.55 | $144,000 ÷ 7,762 |
| Vendor-reported “store visits” | 21,400 | Household attribution report |
| Vendor’s implied cost per visit | $6.73 | $144,000 ÷ 21,400 |
Look at the gap between the two cost lines. The vendor’s $6.73 per visit would have told you to triple the budget. The store-level read says each extra transaction cost $18.55, nearly three times as much.
Is $18.55 good? With an average basket of $46 at a 38% gross margin, a transaction is worth about $17.50 in margin. On first purchase alone, CTV roughly breaks even. Pet supply is a repeat business, though. If even a fifth of those extra transactions came from new customers who keep coming back, CTV pays. That last step is a business judgement, and your loyalty data should inform it, not the CTV vendor.
Keep the uncertainty in view too. Suppose the 95% range on the in-flight lift runs from +1.1% to +4.3%. Then the extra transactions on air run from about 2,600 to 10,100, and the cost from roughly $14 to $56 each. That is wide. It’s also honest, and it already rules out the vendor’s number.
How to read a CTV test result without fooling yourself
- Check the pre-period fit first. If the twin didn’t track the test markets closely before launch, the gap afterwards means little. A loose fit is a reason to widen the holdout pool, not to squint.
- Run placebos. Pretend each holdout market was the test market and run the same analysis. If plenty of them show “lifts” as large as yours, your result is within the noise.
- Count the post-period. Leaving out the carry-over weeks understates CTV. In the example they add about a fifth to the total.
- Look across stores, but don’t judge one store. Stores near the middle of a DMA often respond more than stores on its edge. That pattern is useful. A single store’s lift, on its own, is mostly noise.
- Compare delivery with the plan. If 18% of impressions landed outside the test markets, some of your “holdouts” saw the ads too, and the lift is understated.
Can QR codes or promo codes measure CTV?
They measure the people who bothered. A QR code on a streaming ad gets scanned by a sliver of viewers, and a TV-only promo code ends up on coupon sites within a week. Both make decent creative diagnostics: if version B’s code gets twice the redemptions, B is probably the stronger spot. Neither gives you a total. Treat code redemptions as a floor, never as the estimate.
The same goes for branded search. A bump in searches for your name in test markets is a nice sign that people noticed. It isn’t customers, and it will be claimed again by your search campaigns as their own conversions.
Common mistakes when measuring CTV for local stores
- Taking exposed-versus-unexposed at face value. It’s the most common CTV report and the most flattering. Ask the vendor what the gap was before the campaign started.
- Testing in one market. One DMA against one other DMA is an anecdote. Use several test markets and a pool of holdouts.
- Running a four-week flight. CTV needs frequency to build. A short flight catches the slow start and misses the carry-over, then everyone concludes TV doesn’t work.
- Underfunding the test. If your best-case lift is smaller than the minimum you can detect, don’t run it. Spend more in fewer markets, or spend the money on something you can measure.
- Changing other things in the test markets. A local promotion that launches in two of the five test markets will be counted as CTV. Keep the calendar clean or log it and drop those markets.
- Not checking what “CTV” you bought. Some packages sold as streaming TV include mobile and desktop video. Ask for a device-type breakdown of delivered impressions.
- Calling an inconclusive test a failure. A range of −1% to +4% says the test couldn’t tell. Report how big an effect it could have missed, then decide whether a bigger test is worth it.
When a CTV test isn’t worth running
Some brands shouldn’t test CTV this way yet. If all your stores sit in one or two DMAs, there are no clean holdouts. If you have fewer than about 15 locations, the test markets will hold too few stores to see a realistic lift. And if the budget can’t get near your minimum detectable effect, the answer is known in advance: inconclusive.
In those cases, be honest about what CTV is: a brand bet. Cap it at a level you’d be comfortable spending on faith, and stop asking it for a number it can’t give you. A single store has a different set of options, covered in our guide to measuring ads for a single location.
Questions people ask about measuring CTV
Can you track CTV ads to in-store visits?
Not directly. Vendors match TV households to phones and check location panels, which links exposure to visits but can’t say whether the ad caused them. To count the visits CTV caused, compare customers at stores in markets where CTV ran with stores in matched markets where it didn’t, over the same weeks.
How long should a CTV test run for local stores?
Plan eight weeks on air and a four-week post-period, after at least six months of clean pre-period data. CTV builds through frequency, so short flights miss most of the effect. Fix the length before launch and don’t stop early because the first weeks look flat or look great.
How much should a local brand spend on CTV to measure it?
Enough to produce a lift bigger than your weekly noise. Estimate the minimum detectable lift from your pre-period data, convert it into extra customers, and multiply by a plausible cost per extra customer. For a group of 14 stores doing 29,400 weekly transactions, that came to roughly $15,000–$18,000 a week.
Are CTV foot-traffic attribution reports accurate?
They accurately report that exposed households visited more. They usually overstate how much of that the ad caused, because targeted households were more likely to visit anyway. Ask the vendor for the pre-campaign gap between the two groups. Use the reports to compare creative and frequency, not to judge the budget.
Can I measure CTV with only one or two locations?
Not with a market comparison. With one location there’s no holdout market, and CTV is rarely bought in neat enough geographies to split a single trade area. A planned on/off schedule can give a rough read, but treat it as directional and expect a wide range.
CTV can work for local stores. Just make it prove that at the counter, in markets you chose, against markets that went without.
Next step
Put your own locations through the comparison.
Your first location report is free at any size. Bring a CSV of weekly sales and spend, or connect your POS and ad accounts.
Written by The Countlift team at First Byte in The Woodlands, Texas. Questions or corrections? Email hello@countlift.com.