Skip to main content
bunny.net Stream Bunny Stream is a video platform that takes care of the whole pipeline for you: upload a file, and we encode it into adaptive streams, replicate it to the storage regions you choose, and deliver it over bunny.net’s global CDN to a player you can embed on any website or app. Use it to power course platforms, media sites, SaaS products, or any app that needs reliable video playback without running your own encoding and delivery infrastructure.

Quickstart

Create a video library, upload your first video, and embed it on your site.

API reference

Manage libraries, videos, and collections programmatically.

How it works

1

Create a video library

A video library holds your videos together with plenty of options to manage and configure. When you create one, you first choose the name of your video library and then choose which storage regions your videos are replicated globally. The next step is configuring which paid services you would like to enable such as Premium Encoding, AI Transcription and Smart Generate features. 
2

Upload your videos

Upload from the dashboard, the API, a remote URL, or directly from your users’ browsers and mobile apps with resumable uploads.
3

Encode and store them

Each video is transcoded into multiple resolutions for adaptive bitrate streaming.
With Premium Encoding, videos are typically playable within seconds of upload.
4

Deliver and play anywhere

Videos are served from bunny.net’s CDN and Storage. They playback with our very own customizable Bunny Player,  Native Mobile App Playersor Third Party Player Integrations. 

Key features

Flexible uploads

Upload to the dashboard, the HTTP API, fetch from a URL, or use resumable TUS.  

Free encoding

Every upload is transcoded into the resolutions and bitrates you choose, with optional MP4 fallback and watermarking.

Adaptive streaming

HLS renditions switch quality to match each viewer’s connection for uninterrupted playback.

Bunny Player

A customizable embeddable player with captions, chapters, Chromecast, AirPlay, adjustable playback speed, picture-in-picture and more. 

Mobile SDKs

Native playback, resumable uploads, and camera capture for Android, iOS, React Native, and Expo.

Multi-audio

Add alternate language, commentary, or descriptive audio tracks viewers can switch between.

Access controls

Restrict playback with allowed domains, direct URL blocking, and signed, expiring tokens.

MediaCage Basic DRM

Free, one-click encryption for every playback session that stops casual downloads.

Statistics

Track views, watch time, viewers by country, engagement scores, and heatmaps.

Webhooks

Get signed notifications as videos upload, encode, and finish processing.

Global delivery

Serve from bunny.net’s CDN on the Standard tier for the lowest latency or the Volume tier for lower cost.

Advertising

Monetize your videos by serving VAST ads in the player.

Premium add-ons

Turn on paid add-ons for a library when you need faster processing, wider reach, or stronger protection. Each is billed on top of storage and delivery. See Pricing for rates.

Premium Encoding

Make most videos playable in 10–15 seconds with Just-in-Time encoding, skip the queue with prioritized encoding, and output VP9, HEVC, and AV1 with HDR.

AI transcribing

Generate captions automatically, translate them into 56 languages, and create titles, descriptions, and chapters with Smart Generate.

MediaCage Enterprise DRM

Widevine and FairPlay protection with screen capture prevention, native app support, and custom player integration, built for premium and pay-per-view content.

Geo-replication

Replicate videos to additional storage regions for faster uncached delivery and automatic failover during regional outages.

Build with Stream

Start with Authentication to find your library’s API key, then pick a guide for your platform:
Last modified on October 19, 2026