In client-side ad insertion (CSAI), the video player manages both content and ad playback independently. Unlike server-side ad insertion (SSAI), where the server stitches ad segments into the content manifest, CSAI keeps the content stream unmodified. The client application manages the switch between content and ad streams.
CSAI enables dynamic ad insertion because the client fetches ads at runtime from an ad server using protocols such as Video Ad Serving Template (VAST) or Video Multiple Ad Playlist (VMAP). Ads can be targeted per user, per session, or per content in real time without modifying the content stream. This enables personalized ad experiences without any server-side manifest changes.
CSAI gives full control to the app for managing ad timing, playback, and transitions. The application has complete ownership of the ad lifecycle: deciding when to trigger ad breaks, controlling ad player initialization and playback behavior, and managing the shared surface for frame-accurate switching between main content and ads.
For more information, see our guide to Client-Side Ad Insertion in Vega:
Last updated: Sept 14, 2026