Published on February 22, 2024 (10 months ago)

Why we [still] price in minutes for video

Steve Heffernan
By Steve Heffernan8 min readCompanyPart of our story on Pricing

Over 14 years ago we pioneered minutes-based pricing for video infrastructure. Here's why we've doubled down on it with Mux Video.

In 2010 the Mux founders had another startup called Zencoder, one of the first cloud-scaling video encoding APIs. Pricing for this category was still new territory. The two prevailing pricing models were "Gigabytes of video input + Gigabytes of video output" and "Hours of encoding server time", both of which felt like weak correlations to our underlying costs while also at odds with the high-performance product we wanted to create.

Intro minutes-based pricing for cloud encoding, which is based on the number of video content minutes created by an encoding/transcoding job. It wasn't perfect, but the feedback we got from customers was clearly positive, and the rest of the industry quickly followed our lead, including AWS's now-zombied copycat service, Elastic Transcoder (Yes, we were a big AWS customer at the time…classic).

We went through a few iterations of minutes-based pricing, including adding multipliers for HD resolutions and usage volume tiers, but the underlying principles never changed and have been successful for over a decade. So when it came time to price Mux Video, we of course followed the same model, introducing minutes-based pricing for Delivery and Storage in addition to Encoding.

While many people like minutes-based pricing, it can be confusing coming from the world of gigabytes pricing. If you're in that camp, here’s a shot at clearing things up.

LinkWhy pricing by minutes is good for video infrastructure customers

LinkMinutes-pricing is more predictable for new video

A video always has one duration (the number of minutes of content). That number is known as soon as a video is first created, and won't change without intentional editing. That number can also be intuitively categorized, for example, a movie is about 2 hours, a TV show is generally 25-45 minutes and social videos are usually 1-5 minutes.

Compare that to the file size (in gigabytes) of a video. No one can tell me how many gigabytes my 5-minute news clip is going to be after I encode it for end-user viewing. Not without much more info.

  • Is the video high complexity (race cars in the rain) or low complexity (a newscaster on a static background)?
  • Is the output using the highly compatible H.264 codec or the highly compressed, newer codecs like H.265 or AV1?
  • Are multiple renditions being created to handle different devices and network speeds?

Each of those variables could double or halve the number of gigabytes encoded, stored, and delivered. The amount of encoding server time required for each of those variables is equally unpredictable, while the duration remains consistent.

LinkMinutes-pricing aligns incentives for higher performance

Better video compression (smaller file sizes for the same visual quality) is a good thing. It means viewers can see higher-quality video without slow loading, and viewers use up their mobile data plans less quickly. But video services charging by gigabytes are disincentivized to improve the compression of the video because if they do they immediately lose money. You won't find a CDN pushing you to use advanced codecs or device-smart rendition ladders, even when that might be best for your audience.

Similarly for video services using Encoding Server Time pricing, any improvements in encoding speed (and quicker availability of the video) means the service immediately loses money. And conversely, you might be pushed into advanced codecs, which are slower to encode, even if your audience doesn't need them.

With minutes-based pricing Mux has the flexibility to be the video technology expert for our customers as our product principle states, and increase video performance anywhere and everywhere we can. We can experiment with our encoding, storage, and delivery strategies without an immediate and unexpected impact to our income and your bill, positive or negative. And we have a history of lowering our prices as our own costs improve, so you can count on us being your technology partner in lowering video costs as well.

LinkOutput-only pricing encourages higher-quality inputs

"💩 in 💩 out" as they say. Services that charge for gigabytes of input or server time incentivize you to send smaller, pre-compressed, and lossy versions of a video rather than original sources. Every time a video is encoded it loses some visual accuracy compared to the original content.

We want your best inputs so we can deliver the best output, and output-based pricing makes that easier to do.

LinkEstimating Usage in Minutes

If you're already streaming video and are considering a switch to Mux, there are a few different paths to get you to an estimate of how much video you'll be encoding, storing, and streaming in minutes.

LinkConverting from Gigabytes to Minutes

The key detail in converting between minutes and gigabytes is the bitrate of a video file, often measured in megabits per second (Mbps) or kilobits per second (kbps). For the sake of this exercise, we'll use Apple's recommended bitrates, since they're a neutral 3rd party and the authors of the most popular adaptive streaming protocol, HLS.

There are then a few common defaults we'll start with:

  • 1080p Resolution
  • 30 frames per second
  • H.264/AVC codec

Based on those defaults, Apple's recommended bitrate is 7800 kbps. Now let's convert 1 Gigabyte of video to minutes.

Gigabytes to Kilobytes: 1 GB * (1,000,000 KB/GB) = 1,000,000 Kilobytes
Kilobytes to Kilobits: 1,000,000 KB * (8 bits/byte) = 8,000,000 Kilobits
Kilobits to Seconds: 8,000,000 Kilobits / 7800 kilobits/second = 1,025.6 Seconds
Seconds to Minutes: 1,025.64 Seconds / 60 seconds/minute = 17.1 minutes

1 Gigabyte of video = 17.1 minutes of video @ 7800 kbps (1080p30, 1 Rendition)

The same math can then be done for other resolutions.

Resolution

Minutes per GB

540p @ 2000 kbps

66.7 minutes / GB

720p @ 4500 kbps

29.6 minutes / GB

1080p @ 7800 kbps

17.1 minutes / GB

4k @ 16800 kbps

7.9 minutes / GB

Whether you're converting your CDN bill usage or cloud storage, this math can give you a starting point for estimation if you know what resolution or bitrate you have used for the videos in your catalog.

Adaptive Streaming is then where this gets more complicated. Mux encodes and stores up to 5 different versions (or renditions) of the same video to better support different devices and network speeds, plus a highest-quality master copy. We do this in a smart and efficient way, but it's worth considering when comparing your existing catalog costs because all renditions of the video are included in Mux's prices. And if your existing catalog also uses adaptive streaming, you'll need to consider that in your GB to Minutes math.

For example, the total stored bitrate of Apple's recommended 1080p adaptive ladder, summing all versions of the video, is 25,640 kbps. If you have a catalog that followed this recommendation closely then 1 GB of your stored catalog is equal to 5.2 minutes of video content.

LinkUse Mux Data

Mux Data is easy to integrate, free up to 100,000 video views, and can tell you how much people are watching your videos via the Playing Time metric. This isn't a perfect conversion to Delivery costs, because sometimes players download more video than is actually watched, and sometimes viewers re-watch video that's already been downloaded. But it's usually close enough to start building an estimate.

The Weighted Average Bitrate metric can also give you a sense of how much your audience is watching the top rendition of your adaptive ladder, by how far off the weighted average is from your top rendition's bitrate.

LinkFor larger catalogs, talk to us

Video catalogs with 50,000+ videos created over years can be pretty complicated to estimate and manage. If this is you, get in touch. Our team has been there and done that many times over and can help work through the details.

LinkConvinced?

Have I won you over to minutes-based pricing? If not, I'd love to hear about it. For real. If there are use cases where minutes-based pricing breaks somehow I'd love to talk with you so ping me up on TwiX or Linkedin.

Written By

Steve Heffernan

Creator of Video.js and co-founder of Zencoder. Semi-professional drummer and apparently drove a Civic lowered more than Mux's live latency in high school.

Leave your wallet where it is

No credit card required to get started.