AVOD
AVOD (advertising-based video on demand) is free on-demand video paid for by ads that play before, during or after the content. Technically, each video carries ad break positions, an ad decision server picks the ads for each break and answers in the VAST format, and the ads are either played by an ad SDK in the player or stitched into the stream on the server. Impressions are reported back as tracking beacons, so a viewer who leaves before a break never generates one.
How does AVOD ad delivery work?
An AVOD play starts like any other: the player loads the manifest and starts the content. Alongside it, the player or a server holds the ad schedule, often written in VMAP, an IAB format that lists break positions such as pre-roll at zero and a mid-roll at ten minutes.
As a break approaches, the player or a server asks the ad decision server for ads, passing device, app and consent signals. The server answers with VAST, an XML format from the IAB that lists the ad's media files and tracking URLs. The ad is played, and the player or server calls the tracking URLs at defined points: impression, first quartile, midpoint, third quartile and complete. Those beacons are what the advertiser pays for, so an ad that stalls before its impression beacon earns nothing.
Client-side vs. server-side ads in AVOD
Client-side ad insertion (CSAI) means the player pauses the content, fetches the ad file from wherever the ad is hosted and plays it in its own video element or a second player. It supports clickable and interactive formats and gives the player direct, detailed tracking. The costs are a second startup at every break, ads encoded differently from the content, and exposure to ad blockers, which can see the ad requests.
Server-side ad insertion (SSAI) transcodes each ad to match the content's ladder and stitches the ad segments into each viewer's manifest, so the player sees one continuous stream. Transitions are smoother and ad blockers have little to block, but every viewer needs a personalised manifest, and tracking moves to the server or to timed metadata in the stream. Connected TV apps lean towards SSAI, while web and mobile ad-supported apps often still use CSAI.
How are ad breaks marked in AVOD and ad-supported streams?
An ad system can only fill a break it knows about. For on-demand titles, break positions are usually stored as cue points in the content metadata or written into the VMAP schedule, ideally at scene changes so a mid-roll does not cut a sentence. The encoder should place a keyframe, a frame that can be decoded on its own, at each cue point, so the stream can be split cleanly there.
For live and linear streams, breaks are signalled in the stream itself with SCTE-35, the cable industry standard for splice markers. In HLS, SCTE-35 is carried in EXT-X-DATERANGE tags or in cue-out and cue-in tags; in DASH, it is carried in event streams. A marker gives the break's start and usually its duration, so the ad system knows how much time it has to fill and when the content resumes.
Where do AVOD streams lose ad impressions?
Most lost impressions in AVOD are playback problems, not ad problems. A viewer who leaves before the first frame, an exit before video start, never reaches the pre-roll. A slow start on a mobile network, caused by a heavy first segment or a progressive MP4 with no lower rendition, makes that exit more likely.
Break transitions are the next weak spot. With client-side ads, the player has to start a second stream, and a slow ad CDN or a mismatched bitrate shows as a stall. Ad requests also time out or return no fill, leaving a gap the player must handle cleanly.
The content itself matters too: rebuffering in the minutes before a mid-roll drives viewers away before it plays. Measuring startup time, exits before start, rebuffering and how far each view got shows how many viewers actually reach each break.
How does FastPix handle AVOD?
FastPix does not choose, serve or stitch ads; ad decisioning and insertion come from your ad partner. FastPix covers the video layer an ad-supported library depends on, and the markers and measurement around it.
Each upload gets a per-title ladder in H.264 and HEVC (H.265) as standard, with AV1 available on request, packaged as HLS and DASH. Delivery runs across a multi-CDN mesh of 300+ points of presence with routing per viewer. The FastPix Player is free and open source, with native SDKs for web, Android (built on Media3, including Android TV), iOS (built on AVPlayer, including tvOS) and Flutter and DRM playback for titles that need it. Any playback ID can also be handed to another HLS player, so the player that carries your ad SDK can still stream from FastPix.
For linear and scheduled channels, Cloud Playout programs VOD and live inputs by time slot, fills gaps with fallback content, and supports SCTE-35 markers, the cue format server-side ad systems read to find breaks.
Video Data measures what decides how many viewers reach a break: video startup time, exits before video start, buffer ratio and farthest playhead position, broken down by country, CDN, ASN and device. It works across 17 player surfaces, not only the FastPix Player, and 100,000 Video Data plays a month are free, every month.
The library itself costs nothing to encode on Standard, up to 4K; you pay for each stored rendition-minute and for every minute viewers watch. Linear channels in Cloud Playout cost $99 each per month after a 14-day trial. The free plan needs no card and covers 10 videos.
By the numbers
- In Nielsen's US ratings for September 2023, cited on Wikipedia, Tubi had a 1.3% share of TV viewing, ranking fifth among all streaming services. (Free ad-supported streaming television (Wikipedia))


