X Ads API video_total_views: new 3-second 100% in-view rule

X redefined video_total_views as 100% in-view for 3 seconds plus manual plays. What that means for your first 3 seconds, and how to check and re-cut them.

4 min readSume
All posts

X changed the video_total_views metric in the VIDEO group of the Ads API analytics endpoints. It now counts views that are 100% in-view for at least 3 seconds, plus any view where a user manually clicks play; the old rule of 50% in-view for 2 seconds (the MRC standard) no longer applies.

The definition is from the X API changelog, read 2026-10-01. Sume does not measure views. The Sume parts below are about checking and re-cutting the first 3 seconds of a clip, from Video frames and Video trim.

What exactly changed?

The changelog keeps the earlier "100% in-view for 3 seconds" definition as the separate video_3s100pct_views metric, and you can still bid on it with the VIEW_3S_100PCT bid unit.

X Ads API video view definitions, from the X changelog, read 2026-10-01.
Metric or unitDefinition
video_total_views (now)100% in-view for at least 3 seconds, plus manual play clicks
video_total_views (before)At least 50% in-view for 2 seconds (MRC)
video_3s100pct_viewsStill available as its own metric
VIEW_3S_100PCTBid unit that remains available

Why do the first 3 seconds matter more now?

A view now needs the player fully in view for 3 seconds, so what appears in those seconds is what earns the count. A clip that opens on a blank frame or a slow fade spends part of that window without showing the ad. The changelog says nothing about creative, so this is a planning inference, not an X rule.

How can I see what is on screen at seconds 0 to 3?

POST /v1/video-frames takes explicit seconds: 1 to 24 values, each 0 or more, on a Sume-hosted clip. It is unbilled, and returns durable image URLs for each second. For a broader read, video inspect probes and samples stills from one clip. Request at: [0, 1, 2, 2.9] and review the four stills.

How do I re-cut a weak opening?

POST /v1/video-trim returns a new MP4 for a [start, end) range, with duration anywhere from 0.2 to 900 seconds. Start the cut after the dead frames, then post that file. Sume does not report views or X metrics; you read those from the Ads API.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume