What Netflix announced on September 24
Netflix held its first UK Upfront in London on September 24, 2026. Amy Reinhard, its president of advertising, said pause ads will be available programmatically across partner DSPs from next month, which means October 2026, and that demographic targeting will expand to income and household composition. She also set March 1, 2027 as the date the ad-supported plan launches in Austria, Belgium, Denmark, Ireland, the Netherlands, Norway, Poland, Sweden, and Switzerland. Netflix cited Barb data putting UK ad-plan reach above 14 million viewers.
The October date extends a plan Netflix laid out at its May 13 upfront, where it said programmatic pause would start in the US and Canada in summer 2026 through dynamic ad insertion and reach other countries by the end of the year, with The Trade Desk, Amazon DSP, and Google DV360 as the buying routes. The Trade Desk added Netflix to its Sellers and Publishers 500+ marketplace on July 20 with no minimum spend. Amazon renamed its combined buying platform Amazon Ads Agent on September 29, so the Amazon route now sits inside that product.
For most of their life on Netflix, pause ads were sold only through direct deals, where a sales team and a creative approval loop absorbed the differences between what the buyer made and what the screen could show. Programmatic removes that buffer. The creative now arrives as a NonLinear VAST response chosen by a DSP, and whether it renders depends on whether that XML matches what the route and the player expect.
Three documents describe the same pause screen differently
Netflix has not published a programmatic pause creative spec on its public advertising site. The rows below are what each public source states.
| Source | Creative it allows | When the ad appears |
|---|---|---|
| IAB Tech Lab CTV signaling guidance (July 22, 2026) | NonLinear VAST with a static image, a cinemagraph, or full-motion video | Set by the publisher; plcmt 5 with pos 7 or 8 |
| The Trade Desk OpenPath pause documentation (July 24, 2026) | Static PNG or JPG within a fixed size, no video and no cinemagraph | One to three seconds after the viewer pauses, until playback resumes |
| Netflix ad formats page | Brand visual with an optional QR code | After five seconds of pause |
| Google DV360 Netflix Instant Deal, as summarized by an agency write-up | Pause excluded from the standard Instant Deal route | Not stated for pause |
Build the creative for the narrowest route
The IAB guidance is the widest of the three. Its Format-to-Signal Reference Table pairs pause with plcmt 5, pos 7 for fullscreen or 8 for partial screen, and playbackmethod 8 for sound on or 9 for sound off, delivered as NonLinear VAST. The NonLinear element now accepts a MediaFiles container, so a pause unit can carry a JPG, a looping MP4, or a full-motion spot. A publisher that wants only stills says so with battr 22 and 23 in the bid request, and the DSP declares what it delivered with attr on the bid and in a VAST extension.
The Trade Desk is the narrowest. Its OpenPath pause page accepts static PNG or JPG only, inside a fixed size, and documents safe zones, buffer zones, and QR handling. A cinemagraph that is legal under the IAB guidance is not legal on that route. Since one advertiser will often buy Netflix pause through more than one DSP in the same flight, the creative that works everywhere is the static one: a JPG or PNG in a StaticResource, declared as attr 21, with attr 19 added on the bid when it carries an advertiser QR code.
Timing does not have a single answer either. Netflix says its pause ad appears after five seconds. The Trade Desk says one to three seconds. Neither number lives in the VAST, which is correct, because the player owns the delay. It still matters to the creative team, because a design built for an instant reveal reads differently after five seconds of a frozen frame, and because any attention benchmark quoted for one route was measured on that route's timing.
<VAST version="4.2" xmlns="http://www.iab.com/VAST"> <Ad id="pause-static-1"> <InLine> <AdSystem version="1.0">Example Ad Server</AdSystem> <AdTitle>Brand pause, static</AdTitle> <AdServingId>pause-static-0001</AdServingId> <Impression><![CDATA[https://track.example.com/imp?id=1]]></Impression> <Creatives> <Creative id="c1"> <UniversalAdId idRegistry="ad-id.org">BRND0001000H</UniversalAdId> <NonLinearAds> <NonLinear width="1920" height="1080" scalable="true" maintainAspectRatio="true"> <StaticResource creativeType="image/jpeg"> <![CDATA[https://cdn.example.com/pause/brand_1920x1080.jpg]]> </StaticResource> <NonLinearClickThrough><![CDATA[https://brand.example.com/offer]]></NonLinearClickThrough> </NonLinear> <TrackingEvents> <Tracking event="creativeView"><![CDATA[https://track.example.com/view?id=1]]></Tracking> <Tracking event="overlayViewDuration"><![CDATA[https://track.example.com/duration?id=1]]></Tracking> </TrackingEvents> </NonLinearAds> </Creative> </Creatives> <Extensions> <Extension type="plcmt" ext="adcom"><plcmt>5</plcmt></Extension> <Extension type="pos" ext="adcom"><pos>7</pos></Extension> <Extension type="playbackmethod" ext="adcom"><playbackmethod>9</playbackmethod></Extension> <Extension type="attr" ext="adcom"><attr>21</attr></Extension> </Extensions> </InLine> </Ad></VAST>That response validates with no issues in vastlint 0.13. It declares 4.2 rather than 4.4, because the new NonLinear model is accepted on 4.2 and 4.3 and IAB's own examples ship on 4.2, while a strict version gate may still reject 4.4. It omits Duration, which the guidance allows for a static image whose display time is unknown at response time, and it tracks with creativeView and overlayViewDuration, because a NonLinear creative does not fire the linear quartile set by default.
Echo the playbackmethod from the request instead of picking one. A static image has no audio, but 8 and 9 describe the environment the publisher sells, not the file, and a response that contradicts the request is a mismatch the publisher can see.
Where the XML contradicts itself and what catches it
The failures that cost a programmatic pause impression are rarely schema errors. They are signals that disagree with each other or with the asset. Take a cinemagraph MP4 that a creative team built for the IAB route, then re-trafficked with signals copied from a squeezeback unit and a linear spot, and labelled static because the buyer was told the route wants stills.
vastlint reports three warnings on that response. pos 12 is a squeezeback position, and with plcmt 5 the tag describes pause and squeezeback at once, which is VAST-4.4-adcom-pos-format-mismatch. playbackmethod 1 is ordinary autoplay with sound, while pause takes 8 or 9, which is VAST-4.4-adcom-playbackmethod-format-mismatch. And the NonLinear delivers a video MediaFile with no Duration, so quartile and overlayViewDuration tracking have no timeline, which is VAST-4.4-nonlinear-video-no-duration.
The fourth problem passes silently, and it is the expensive one. attr 21 says static visual, and the guidance allows that attribute on an MP4 that renders as a still. Whether this particular MP4 moves is a property of the file, not the XML. No VAST validator can see it, so a static-only route will receive a moving creative labelled static unless someone checks the asset itself. Treat attr as a claim the XML carries and the creative QA step has to verify.
Get VAST spec updates, platform guides, and release notes in your inbox.
<NonLinear width="1920" height="1080"> <MediaFiles> <MediaFile delivery="progressive" type="video/mp4" width="1920" height="1080"> <![CDATA[https://cdn.example.com/pause/brand_cine_1080p.mp4]]> </MediaFile> </MediaFiles></NonLinear>...<Extension type="pos" ext="adcom"><pos>12</pos></Extension><Extension type="playbackmethod" ext="adcom"><playbackmethod>1</playbackmethod></Extension><Extension type="attr" ext="adcom"><attr>21</attr></Extension> $ vastlint check pause-retrafficked.xml warning AdCOM pos is not a position the declared plcmt format supports VAST-4.4-adcom-pos-format-mismatch warning AdCOM playbackmethod and plcmt name different formats VAST-4.4-adcom-playbackmethod-format-mismatch warning <NonLinear> delivers a video <MediaFile> but declares no <Duration> VAST-4.4-nonlinear-video-no-duration0 errors, 3 warningsMeasurement on a paused screen
Netflix says 77 percent of members keep a pause ad on screen for 15 seconds or more, from its own 2024 data. That is a dwell figure, and it only exists in reporting if the player fires something that measures dwell. On a NonLinear unit that is overlayViewDuration, and for a video pause asset it needs Duration to anchor progress. A pause creative trafficked with only an Impression and a creativeView will bill and then report every exposure as the same length.
QR codes move the outcome off the screen. A scan is a visit on a phone, not a click on the TV, so NonLinearClickThrough on a remote-driven pause unit is usually not the path that converts. Put the scan destination where the route expects it, use the CreativeExtensions block the guidance describes when the platform needs the QR URL and geometry, and measure the landing on the phone side with the same campaign identifiers the impression carried.
Programmatic access also means more than one party can claim the same impression. When Netflix pause runs through two DSPs and a direct deal in the same week, the only reliable reconciliation key is the one in the tag: AdServingId on the response and UniversalAdId on the creative. Keep both populated and stable across routes, or the post-campaign comparison turns into a negotiation.
Checklist for the first programmatic pause flight
- Use a static JPG or PNG in StaticResource as the shared creative when one flight buys through more than one DSP.
- Declare plcmt 5, pos 7 or 8, and the playbackmethod the request sent, and keep pos and playbackmethod inside the pause pair.
- Set attr 21 for a static visual and add 19 on the bid when the creative carries an advertiser QR code.
- Add Duration whenever the NonLinear delivers a video MediaFile, including cinemagraphs.
- Track creativeView and overlayViewDuration rather than relying on linear quartiles.
- Check the asset for motion before labelling it static, because the XML cannot.
- Declare VAST 4.2 or 4.3 for the NonLinear MediaFiles model unless the route documents 4.4 support.
Validate the pause tag before the flight starts
Paste the NonLinear response your DSP will return. vastlint checks the AdCOM signal pairs, Duration, and renderable assets against the CTV Ad Portfolio guidance. Nothing is stored.
Validate a pause adSources
Programmatic pause ads across partner DSPs from October, new targeting, and the March 1, 2027 EMEA expansion.
May upfront routes through The Trade Desk, Amazon DSP, and DV360, and the US and Canada timing.
OpenPath pause rules: static PNG or JPG, one to three seconds after pause.
Pause ads after five seconds, QR codes, and the 15-second dwell figure.
Format-to-Signal Reference Table, battr and attr, Duration handling, and pause examples.
Agency summary of Google's Netflix Instant Deal terms, including the pause exclusion.
NonLinear structure, signals, and the mistakes that cost the impression.
All six formats and how they are signaled.