Straightforward Costs
Companies have conjured up countless traps surrounding their services, to turn you into an ongoing revenue stream. Subscription fees, tiered pricing, and confusing add-ons provide them endless opportunity to mold you into the product they will eventually sell out to the highest bidder. But here, you are the only customer.
At a Glance
Service | Rate | Unit |
---|---|---|
Delivery | $0.17 | per Gigabyte |
Processing | $0.005 | per CPU Minute |
Storage | $0.07 | per Gigabyte/Month (daily average) |
Support | $4.00 | per Minute |
Support | $160.00 | per Hour (1/3 off) |
Support | $960.00 | per Day (1/2 off) |
Prices displayed are for the US regions. Actual pricing for your particular region is displayed before you subscribe.
Business Model
My only true product is support billed by the minute, hour, or day. As an open source project, it’s perfectly okay for you to deploy Media Masher on your site without registering or being a customer. You can also just get support without using any other services.
Media Masher subscriptions are free and essentially just a mechanism to establish a billing relationship with you through Stripe that you can cancel at any time. You are billed on a pay-as-you-go basis for all services, with pricing tied directly to my cost.
I expect most folks will only use these services during the development phase of their projects, and thus only generate negligible invoices. I offer them primarily so you can quickly and easily explore different ways of integrating the editor into your web site and content flow, without bankrupting the company. It’s also helpful to have a safe and isolated place to put examples and prototypes for those subscribers being supported.
The services are extremely robust though, if you do want to use them in production. Under the hood, the core infrastructure is provided by Amazon Web Services (AWS), configured to provide a highly secure and globally distributed application layer.
When comparing my pricing to theirs, please keep in mind that multiple services are typically being used at once, and even just tracking costs adds to my costs considerably. For instance, delivery utilizes CloudFront, but also S3 to PUT countless log files that then need to be processed by Edge Functions that update the database with charges that eventually get reported to Stripe and displayed for every subscriber. Even just storage involves more than S3 because your media there is only accessible to your account, and I’ve got to parse these same logs to determine usage changes over the course of each day.
Production use can open the possibility of generating surprising invoices, depending on which specific features you’ve enabled for your web users. The documentation describes how to disable features, as well as ways of enabling them to use other cloud providers. Support is available to help integrate with whatever providers you’re already using.
Delivery Costs
$0.17 per Gigabyte
Underlying services: S3, CloudFront, Route 53, Edge Functions, AIM, Firehose
Content delivery can get expensive if, for example, you are using the system to host a video that goes viral. My first advice is, don’t do that!
Your deployment can easily be configured to pass the file off to YouTube or TikTok for delivery instead. Let the big boys foot the bill! See the Deploying Guide or Support for more information.
You are also charged for delivering the media that is seen by your web users within the Media Masher UI you deploy on your site. These are low resolution versions of the media that’s uploaded though, highly optimized for use in the editor. The cost of delivery is therefore much lower than viewing the raw source files or the video that is ultimately output by the system.
But even here you can avoid this cost by choosing to store this media elsewhere. Your deployment can also be configured to use your existing storage solution or an AWS one that’s more tailored for your use case. If your users are geographically bound or they don’t mind waiting a bit longer for files to transfer, there is potential to cut costs considerably. The delivery I offer is global and extremely robust.
Processing Costs
$0.005 per CPU Minute
Underlying services: API Gateway, Lambda, Edge Functions, AIM, ECR, Firehose
Media processing is billed per minute per CPU, and typically at least two CPUs are utilized at a time. Using more will speed up processing, but there can be diminishing returns.
You can avoid these costs by avoiding features like file uploading and rendering in your deployment, which makes sense in many cases. Many different deployments can be configured, supporting a wide range of architectures and business models. You are also free to charge your users for services, and repackage them any way you see fit.
A typical deployment involves displaying the editor both on your site for your users, but also within whatever sub site you access to administer your site. By default the ‘render’ and ‘import’ buttons don’t display in the editor, but typically you’re enabling their display for your administrators. Your users might only see the mashes they’ve created, while adminstrators can view everybody’s and decide which should be rendered.
This sort of deployment allows for moderation which is great, but also potentially time consuming. If you use authentication on your site, you might opt instead to create some sort of user flag that enables unlimited uploading and unmoderated rendering. This could be used to display the corresponding buttons in the editor for just these users.
With some types of processing (like the transcoding and decoding triggered by uploading) it’s fairly straightforward to correlate processing time to the number and size of files being processed. For instance, uploading a ten minute 1080p clip might take a couple CPUs a minute or two to process, so the cost would be a penny or two. The variability here comes from the actual content of the video - a talking head would process much faster than a sporting event.
With encoding, it can be harder to correlate the processing time to the duration and resolution of the video output. Certainly outputting longer high quality video takes longer, but the resolution of the input media is another huge factor.
As a baseline, encoding a simple 1-minute 1080p video with basic edits will have a similar cost profile to transcoding. When particularly fancy effects are used (like cropping video within text) the rendering process is more elaborate and takes roughly two or three times as long for those frames. You can avoid this by only enabling rectangular cropping.
Storage Costs
$0.07 per Gigabyte per Month (daily average)
Underlying services: S3, CloudFront, Edge Functions, Firehose
Once you upload media, there will be ongoing storage costs. These are billed based on the daily average of storage you use hour-by-hour, but are presented here monthly for easier comparison with other services.
These costs can be stopped at any time by simply deleting media you’ve uploaded or rendered.
Support Costs
$4 per Minute $160 per Hour (1/3 off) $960 per Day (1/2 off)
Underlying services: Edge Functions, Firehose
The easiest way to avoid these is to thoroughly digest the Documentation. It can also be helpful to download the source files and ask your favorite coding AI for help. The code itself is strongly typed so even a simple code editor should be able to provide inline documentation. I know it’s crazy we don’t have any video tutorials available - hopefully soon.
Our team provides one-on-one support over whatever communication channel you prefer - email, text, call, etc. It can be purchased by the minute for when you just need to be pointed to the docs, or at a discounted rate by the hour or day for larger projects.
As with other charges, purchases of support are non-refundable, but the time you purchase does not expire so can be used whenever and however you’d like.