1. Your video
2. Comparison
| Platform | Per month | Per year | 12-month spend with growth |
|---|
Where the cheapest platform changes
| Minutes watched per month (at your stored and uploaded size) | Cheapest |
|---|
Rows with several platforms are ties. Minutes watched are what viewers stream; encoding is free on every platform here except the DIY pipeline. Resolution ladders, live, DRM and captions are not priced, and per-GB platforms are converted at roughly 2.5 Mbps.
Rate cards (editable)
| Platform | Base fee (USD/mo) | Storage per min-mo | Storage included (min) | Delivery per min watched | Delivery included (min) | Encoding per min uploaded |
|---|
Press Compare after changing a value.
Prefer a CLI, or want a budget gate in CI?
node cli.mjs compare --stored-min 20000 --watched-min 500000 --uploaded-min 500 --growth 5 node cli.mjs compare --stored-min 20000 --watched-min 500000 --provider mux --budget 300 # exit 1 over budget node cli.mjs crossover --stored-min 20000 node cli.mjs compare --stored-min 20000 --watched-min 500000 --prices prices.json --json
Get cli.mjs and engine.mjs — Node 18+, nothing to install, no network call. More: how to choose video hosting by minutes watched.
Common questions
Does this read my video account?
No. It uses only the minute volumes you type and rate cards you can edit. It cannot see your library, resolutions, viewers or invoice. Treat every figure as a way to compare options, never as what you will be charged.
Where do the prices come from?
They are approximate public list prices as best known in 2025 for on-demand 720p-1080p video, shown with an as-of line, and every number is editable. Bunny and the DIY AWS pipeline bill by GB, so they are converted at roughly 2.5 Mbps. Platforms change packaging often, so check each pricing page before deciding.
What is not included?
Live streaming, DRM, captions and AI features, 4K ladders, minimum commitments, enterprise discounts, other regions and each platform's fair-use terms. Per-GB platforms cost more per minute at high bitrates and less at low ones, so check the conversion against your own encodes.
Is my data uploaded anywhere?
No. The page calculates in your browser and sends nothing. The CLI reads local files and makes no network call.