Today we're releasing resolution-based pricing, a new way to control your costs based on the quality of video you're streaming. We lowered our pay-as-you-go pricing for Encoding, Storage and Streaming of video at 720p or lower resolutions, and if your videos qualify, you’ll automatically see the discounts in your next bill. Or use our new max_resolution parameter to create a premium streaming tier for your own users. We’ve been able to add this pricing option without adding a ton of complexity or increasing the price of higher resolutions. We think that's pretty exciting and hope you think so too. 🎉
At Mux, we care a lot about the right abstraction for our APIs. We aim for APIs that can solve the hard technical problems of video for users while being flexible enough to work for any business or app. It's not always an easy balance and leads to a lot of internal debates, but it also results in APIs we're proud of and enjoy using ourselves.
We launched Mux Video in 2018 with one price for video streaming, per minute of video, no matter the size and quality. We continue to get positive feedback that this makes video streaming costs easy to understand and more predictable, especially for user-generated content and large video catalogs where source videos come in all shapes and sizes. We've also introduced automatic volume pricing discounts and lowered prices overall multiple times.
However, as users scale, we also hear requests for more levers that can be pulled to control and shape the cost of video. With that in mind, in 2023 we're going to be rolling out some of these pricing levers, providing more pricing flexibility without sacrificing the simplicity users love.
Today we're releasing the first of these levers, resolution-based pricing. We're excited for the use cases it immediately opens up while also laying the groundwork for other powerful features on the roadmap (*cough* 4K).
Resolution refers to the width and height of a video frame, measured in pixels or lines. It's often called "quality" (e.g., on YouTube), though video quality is a much bigger concept than just resolution. You're likely familiar with resolution terms like "1080p," "HD," and "4K," which are loosely standardized labels for various resolution sizes.
The standard naming and dimensions focus on horizontal or landscape videos; however, vertical or portrait videos are very popular for social media mobile apps. Vertical video resolutions aren’t as standardized, but they're most commonly found with a 9:16 width-to-height ratio in order to fit phone screens, with a recommended 1080x1920-pixel resolution.
The resolution of a video significantly impacts the file size and, consequently, the cost to store, encode, and deliver a video.
With the new pricing, any video that is less than or equal to 720p will now fall into our new Up to 720p Tier, which has new, lower pricing for Storage, Encoding, and Streaming. With this tier, you still get simple, predictable pricing across all smaller video resolutions, along with a now lower baseline cost, specifically for use cases that don't require HD quality (going by the new YouTube "HD" definition).
Videos with larger resolutions than 720p will now be in our new Above 720p Tier (aka 1080p), which retains the same price as before. If you're only uploading or live streaming videos with higher resolutions, your bill will likely not change at all. You may, however, see a small decrease in your Streaming (i.e., delivery) charge (we'll come back to that later). The new entry-level pricing is as follows, with further volume discounts as you scale:
Previously, if you uploaded a 720p video and a 1080p video with the same durations, you would be charged the same Storage, Encoding, and Streaming prices for both videos.
Now, in the same scenario, you would be charged the new lower prices for the 720p video and the same price as before for the 1080p video. If you're using our pay-as-you-go pricing, there's nothing you need to do to turn this on, and you can take a look at our pricing calculator to get a sense for how the pricing will work for you.
If you're not already uploading/streaming 720p or lower video and want to, see the new guide for controlling the resolution of your video sources.
In the case of the 1080p video, you will also be charged a lower price for Streaming whenever a 720p or smaller version (rendition) of the video is delivered. This relates to adaptive streaming, where a video player can choose smaller resolutions of a video based on the viewer's internet connection or device. This may not happen often if your viewers have decent internet connections, but it will happen more frequently if you have an international audience with mixed connections.
Otherwise if you want to intentionally cap the quality of video delivered, for example to create a "premium streaming" tier for some of your users, you can use the new max_resolution query parameter for playback URLs.
For alternative approaches see the guide for controlling playback resolution.
With Mux Player it's as simple as a player html attribute:
<mux-player playback-id="..." max-resolution="720p"></mux-player>
Because videos in the wild vary significantly from the standardized resolution names, videos are grouped into the resolution pricing tiers based on the total number of pixels in a frame of the video, calculated by multiplying the width by the height.
*Today, any video larger than 1080p that is uploaded to Mux is reduced to 1080p resolution, and charged the Above 720p Tier price. This will be changing in the future. (*cough cough* 4K)
Well, that goes back to our design goals and the right API abstraction. We still believe one blended price is best for smaller renditions. The obvious benefit is video pricing simplicity, but it also continues to allow Mux to make smart, dynamic rendition decisions for the sake of the viewer experience, without unexpected impacts to your bill.
Combine that with a growing perception that 720p is the new standard definition, and we think it's also forward-looking. But we of course reserve the right to keep learning from you and hearing more about what you need.
Resolution tier pricing will be broken down for you in the billing section of your Mux account, but we know many of you want to do more with this information. So, along with the new pricing, we've also updated our delivery usage API to show how many seconds of video have been delivered in each resolution tier, per video asset.
This new pricing goes into effect today. If you're using our pay-as-you-go pricing and smaller video resolutions, you'll see the impact on your next bill, retroactive to the beginning of your billing period.
We’d love to hear your thoughts on this change! If you have a unique pricing need that we should be thinking about, reach out and let us know.