Server-Side Ad Insertion (SSAI) is a technique where ads are stitched into the video stream on the server before the stream reaches the viewer's device. From the viewer's perspective, there is no separate ad request — the content and ads arrive as a single, seamless video stream. This eliminates ad blockers (there is nothing for a blocker to intercept), removes buffering at ad transitions, and enables accurate impression measurement. For CTV publishers, SSAI is not optional — it is the standard for delivering quality ad experiences on TV screens.
SSAI vs CSAI: the difference
Client-Side Ad Insertion (CSAI) is how web video advertising works: the player on the viewer's device pauses the content, makes a separate ad call, loads the ad creative, plays it, then resumes content. On CTV, this approach has serious problems:
- Ad blockers: Network-level ad blockers can intercept the client-side ad call. With SSAI, there is no separate ad call to block.
- Buffering: The switch between content and ad (two separate streams) causes a buffering event. On TV screens, this is a significant UX failure — viewers notice it immediately.
- Latency: Each ad call adds latency. In SSAI, ad decisioning happens before the stream reaches the device — no playback interruption.
- Measurement accuracy: CSAI relies on client-side beacons that can be blocked or fail. SSAI measurement beacons fire server-side, resulting in more accurate completion rate data.
How SSAI works technically
- The SSAI provider (AWS MediaTailor, Google DAI, Yospace, Brightcove SSAI) sits between your content origin and the viewer's device.
- When a viewer requests content, the SSAI provider calls your ad server (GAM) to retrieve the ad decision for each break point.
- The SSAI provider fetches the ad creative from the winning bidder's CDN and transcodes it to match the content stream's resolution, bitrate, and codec.
- Content and ads are stitched into a single HLS or MPEG-DASH manifest. The viewer's player requests and plays one continuous stream.
- The SSAI provider fires measurement beacons (quartile events, completion) server-side as the ad plays.
SSAI providers available in India
India CTV publishers have several SSAI options depending on their existing infrastructure:
- Google DAI (Dynamic Ad Insertion): GAM's native SSAI product. Tight integration with GAM line items and programmatic. Best choice for publishers already using GAM 360.
- AWS Elemental MediaTailor: AWS's SSAI service. Works well if your content is already hosted on AWS infrastructure. Requires more ad ops configuration than DAI.
- Yospace: Specialist SSAI provider with strong UK/Europe publisher base and growing India presence. Good for publishers who want SSP-agnostic SSAI without being tied to Google's stack.
- Brightcove SSAI: Built into Brightcove's video platform. For publishers using Brightcove as their video hosting and delivery layer, this is a natural integration.
SSAI and ad pod management
A key SSAI capability for CTV is ad pod management — the ability to control the structure of ad breaks (how many ads, what duration, competitive separation between brands). On CTV, ad breaks are typically 2–4 ads per break, each 15–30 seconds. SSAI providers handle pod assembly: they receive a pod request from GAM, fill each slot with the appropriate creative, and stitch the full pod into the stream as one block.
Competitive separation — ensuring two competing brands (e.g., two telcos) do not appear in the same ad break — must be configured at the SSAI layer. Without it, brand safety complaints from advertisers follow quickly.
SSAI measurement and what buyers see
SSAI generates server-side measurement beacons that fire at impression, first quartile (25%), midpoint (50%), third quartile (75%), and complete (100%). These beacons report to both the publisher's ad server and the buyer's DSP independently. Buyers using third-party verification (IAS, DoubleVerify) will see verification data that is generated from SSAI beacons — completion rates measured server-side are typically 5–15% higher than CSAI equivalents because beacon loss is eliminated.