Upload. Transcode.
Host. Play.
Drag a video in or send one request; it comes back as an ABR ladder on a global CDN with signed, time-limited playback URLs.
No card needed · 30-second test encodes free · pay per output minute after
Drop a video — we take it from here
Everything you need to host video
Upload once, get HLS/DASH manifests, thumbnails, embed codes, and per-video cost reporting.
-
Auto or custom ladder
Upload with zero config and we build a CMAF ABR ladder from your app defaults. Or pick a system preset, or define your own — up to 20 variants.
-
Multi-codec manifests
The same ladder in AV1 and H.264 inside one manifest: modern players pick AV1, older devices fall back to H.264.
-
HLS, DASH & MP4
ABR streaming in HLS or DASH from shared CMAF segments, or progressive MP4 for direct downloads — every delivery format available per preset.
-
CDN delivery
Global edge delivery via BunnyCDN. Videos are unlisted by default (served from unguessable IDs) or public when you choose; only transcoded outputs are ever public-read.
-
Embed anywhere
Copy a URL or iframe snippet for any site, CMS or mobile app — a Vidstack-based player with adaptive HLS streaming.
-
Dashboard managed
Enable hosting, set auto-profile defaults, create or duplicate presets and pick one per upload, then read each video's renditions table and per-month cost analytics.
Zero-config by default. Deep control when you need it.
Every upload picks one of three modes. All three land in the same dashboard, produce the same playback URLs, and bill the same way.
Auto ladder
Upload with no preset and we build a CMAF ABR ladder from your app's auto-profile defaults. Default: HLS + H.264 up to 1080p at Standard quality — plays everywhere.
Format: HLS, DASH or MP4 · Codec: H.264, HEVC, VP9 or AV1 · Max resolution: 480p → 2160p · Quality: Economy, Standard or Premium
System preset
Curated templates for common workflows — mobile-first, broadcast quality, archival, HDR, and more. Pick one at upload time, or duplicate it as a starting point for a custom preset.
Read-only and always available · One-click duplicate to customize · Tuned for specific use cases
Custom preset
Save your exact encoding recipe once, reuse it on every upload. Full ABR ladder control — up to 20 variants, each with its own resolution, bitrate, CRF, framerate, and quality override.
Up to 20 variants per ladder · CRF, CBR or VBR rate control · Content-type tuning, HDR, DRM · Multi-codec manifests
Hosting is an opt-in layer on the transcoding API: if you already run S3, GCS or R2, use it directly — same encoder, same presets, same price per output minute. Which to pick →
Three calls. That's it.
Full API referenceGet a presigned upload URL, PUT the file, and tell us you're done. We handle the transcoding, packaging, CDN distribution, and playback infrastructure.
// 1. Get a presigned upload URL
const { video, uploadUrl } = await client.videos.createUpload({
appId: "app_k1l2m3n4o5",
filename: "demo.mp4",
contentType: "video/mp4",
sizeBytes: BigInt(file.size),
});
// 2. Upload the file directly to storage
await fetch(uploadUrl, {
method: "PUT",
body: file,
headers: { "Content-Type": file.type },
});
// 3. Tell the API you're done — transcoding starts
const { video: ready } = await client.videos.completeUpload({
id: video.id,
});
// That's it. Watch for status updates, or just come back later.
console.log(ready.playbackUrl); // https://cdn.../vid_abc.../master.m3u8Transparent pricing
No monthly fees. Pay only for what you use — encoding, storage, and delivery, all metered.
480p · 720p · 1080p · H264 · 30fps · Standard quality · 3 renditions · encoding base €0.0225/source min. Higher framerates (60/120fps), Premium quality, HDR and DRM apply the same transcoding multipliers — see full pricing for the interactive breakdown.
Rates: €0.010/output min encoding (per rendition, Standard quality), €0.020/GB·month storage, €0.010/GB egress. See full pricing.
Frequently asked questions
Ready to host your first video?
Get an API key and upload a video in under five minutes.
No card needed · 30-second test encodes free · pay per output minute after