Learn
What Is WebP? Image Format Guide for Faster Page Loads
WebP is a raster image format Google released in 2010 that packs lossy and lossless compression, alpha transparency, ...
Cloudflare Stream pricing in 2026 has one number that decides everything: $1 per 1,000 minutes of video delivered. That's it. No egress tiers, no request charges, no regional multipliers. It also means a single 90-minute live event with 40,000 concurrent viewers costs roughly $3,600 in delivery alone, before you store a single byte of the recording. This article gives you the full 2026 rate card, a worked cost model at realistic watch-hour volumes, the multipliers that quietly inflate billable minutes, and the crossover threshold where a straight CDN-plus-player stack gets cheaper.

Stream bills on two axes, both denominated in minutes of video rather than gigabytes. As of 2026 the published rates are:
The storage unit is the detail most cost models get wrong. You are billed on source duration, not on the total bytes of every rendition. A 60-minute upload that fans out into six renditions still counts as 60 stored minutes. That's genuinely generous compared to object-storage-plus-encoder architectures, where a six-rung ladder can multiply stored bytes by 3–4×.
The delivery unit is where the model turns against you at scale. Minutes are counted regardless of bitrate. A viewer pinned to a 400 kbps rendition on a phone costs exactly the same as a viewer pulling 8 Mbps 4K on a smart TV. If your engineering team is good at codec efficiency, Stream gives you zero financial credit for it.
Most pricing posts stop at "$1 per 1,000 minutes" and leave the reader to do arithmetic. Here is the model I actually use in architecture reviews, expressed in watch hours because that's the metric your analytics pipeline already emits.
One watch hour = 60 delivered minutes = $0.06 in Stream delivery. Round it to six cents per hour watched and you can estimate any workload in your head.
| Workload profile (monthly) | Watch hours | Delivery | Library / storage | Stream total |
|---|---|---|---|---|
| SaaS product tour, in-app help | 830 h (50k min) | $50 | 600 min ≈ $3 | ~$53 |
| Course platform, 8k learners | 8,300 h (500k min) | $500 | 12,000 min ≈ $60 | ~$560 |
| Mid-size OTT / niche VOD | 83,000 h (5M min) | $5,000 | 40,000 min ≈ $200 | ~$5,200 |
| Large publisher, news + clips | 333,000 h (20M min) | $20,000 | 150,000 min ≈ $750 | ~$20,750 |
| Live sports / ticketed events | 833,000 h (50M min) | $50,000 | 20,000 min ≈ $100 | ~$50,100 |
Storage is noise in every row. Delivery is 96–99.8% of the bill. Any optimization effort aimed at Cloudflare Stream pricing that focuses on library size is wasted effort.
To compare Stream against bandwidth-priced delivery you need an average delivered bitrate. Do not use your top rung. Use the weighted average your player actually selects. Typical 2026 mixes:
At 3 Mbps average, one delivered minute is 22.5 MB. One million viewer-minutes is roughly 22.5 TB and costs $1,000 on Stream. That works out to about $44 per TB of egress. At a 1.5 Mbps mobile average the same million minutes is 11.25 TB, or roughly $89 per TB. Both numbers are an order of magnitude above commodity CDN pricing in 2026, which is the entire crossover story.
Your product analytics will under-report Stream minutes unless you account for these. I have seen invoices land 25–40% above the modeled figure for exactly these reasons.
The honest framing: Stream is not overpriced. It is priced as a managed platform where encoding, packaging, storage, DRM-adjacent signed access, and the player are one line item. If you have no video engineer, the arithmetic below is irrelevant — the platform is worth the premium.
If you do have a video pipeline, or can stand one up on off-the-shelf components, here is what you are comparing at 5 million viewer-minutes per month (83,000 watch hours, ~112 TB at 3 Mbps average):
| Approach | Delivery cost at ~112 TB | Trade-off |
|---|---|---|
| Cloudflare Stream | $5,000 (billed as 5M minutes) | Zero pipeline work; no control over ladder, codecs, segment duration or CMAF packaging |
| BlazingCDN + own encoder + open-source player | $350/month covers 100 TB; ~$42 for the extra 12 TB at $0.0035/GB → ~$392 | You own encoding, packaging, manifest logic and player analytics |
| Fastly / other streaming-focused CDN | Committed-volume contracts, typically well under Stream's effective $44/TB | Strong live and edge-compute tooling; negotiated pricing, less transparent at list |
| Bunny.net / CDN77 / Gcore / KeyCDN | Low per-TB list rates, often region-tiered | Genuinely competitive; check regional pricing bands and origin-shield behavior for your audience mix |
The point of that table is not that Stream loses. It is that at 5 million viewer-minutes the delivery line differs by roughly an order of magnitude, and you should know whether $4,600/month buys more engineering than it costs.
For the bandwidth-priced side of that comparison, BlazingCDN's media delivery infrastructure starts at $5 per TB ($0.005 per GB) and steps down to $2 per TB ($0.002 per GB) at the 2,000 TB tier — $100/month for 25 TB, $350 for 100 TB, $1,500 for 500 TB, $2,500 for 1,000 TB, $4,000 for 2,000 TB. It runs on NVMe SSD edge nodes with 100% uptime, flexible per-origin configuration, and fast scaling into demand spikes, delivering stability and fault tolerance comparable to Amazon CloudFront at a materially lower cost per TB — which is what makes it a serious option for enterprises and large media operations doing hundreds of terabytes a month. Onboarding is measured in about an hour, so a parallel A/B against your current delivery path is a one-afternoon experiment.
This is the section the vendor pages skip. Four patterns that have wrecked otherwise sound forecasts.
A product team ships a video-first discovery feed with autoplay previews. Traffic is flat, engagement is flat, the Stream bill triples. Under a per-minute model, cost scales with impressions, not with watched content. Fix: static poster frames plus animated WebP thumbnails, and gate real playback behind an explicit click.
Live archives accumulate. Stored-minute charges are small individually and unbounded collectively. Instrument per-asset delivered minutes and set a lifecycle policy: anything below a viewing threshold for 90 days moves to cold object storage, out of Stream's stored-minute count.
An encoding team spends a quarter migrating to AV1 and cuts delivered bytes by 40%. Under Cloudflare Stream pricing, the invoice does not move by a cent, because minutes are the billing unit. Do that work only after you are on bandwidth-priced delivery, or the ROI is purely QoE.
A per-minute model is perfectly linear, which sounds safe until one keynote or one match produces 30× normal watch hours in 90 minutes. There is no committed-volume smoothing to absorb it. Model your worst plausible concurrency times duration times $0.001 and confirm your finance team has seen that number before the event, not after.
Two line items: $5 per 1,000 minutes of video stored per month, and $1 per 1,000 minutes of video delivered. Encoding, ABR packaging, and the player are included at no extra charge, and there are no separate bandwidth, egress, or request fees. The minimum spend is $5/month.
No. Delivery is billed strictly on minutes watched, independent of resolution, bitrate, or region. That is favorable for 4K-heavy audiences and unfavorable for mobile-first audiences on low-bitrate renditions, since both pay $0.001 per minute.
$1,000 in delivery. In byte terms that is roughly 22.5 TB at a 3 Mbps weighted average bitrate, an effective rate near $44 per TB — versus $3.50–$5.00 per TB on volume-priced CDNs in 2026.
Around 2–5 million viewer-minutes per month, or roughly $2,000–$5,000 in delivery. Below that, the saved engineering time usually outweighs the premium. Above it, an encoder plus a bandwidth-priced CDN plus a self-hosted player typically cuts the delivery line by 80% or more.
No public volume tiers are listed as of Q3 2026. Enterprise contracts can include negotiated terms, so if you are projecting past $10,000/month in delivery it is worth asking before you architect around list pricing.
Same rates. Live input minutes count toward stored minutes while the recording exists, and concurrent viewers are billed as delivered minutes. DVR rewind and catch-up behavior means a live viewer can bill above wall-clock duration.
Yes, but only by reducing billable minutes rather than bytes. Kill autoplay previews, replace hover-play with animated thumbnails, use signed playback URLs to block bots and prefetchers, and lifecycle old archives out of stored minutes. Codec and bitrate optimization saves nothing under a per-minute model.
Pull 90 days of delivered minutes from the Stream analytics API and 90 days of weighted average bitrate from your player telemetry. Multiply to get delivered terabytes, then divide your Stream delivery spend by that figure. You now have your true cost per terabyte. Compare it against volume CDN pricing at your tier, subtract a realistic estimate of encoder and player engineering, and you have a defensible number instead of a hunch.
Then segment those minutes by surface. If more than 10% of your billable minutes come from autoplay or hover previews rather than deliberate playback, you have a UX fix that pays better than any vendor migration. What share of your video minutes is content nobody chose to watch?
Learn
WebP is a raster image format Google released in 2010 that packs lossy and lossless compression, alpha transparency, ...
Pricing - Pricing & Costs
Cloudflare Enterprise Pricing in 2026: Cost & Fit Framework The most expensive line item in a Cloudflare Enterprise ...