FFmpeg on AWS vs. Cloud API: What It Actually Costs (2026)

Running FFmpeg on AWS sounds cheap until you get the first real bill. FFmpeg itself is free. A t3.medium EC2 instance costs $30/month. You already know the command line. But compute is only about 30% of the actual cost. Storage, data transfer, and the engineering hours to keep the system running push the real number 3-5x higher than most teams expect.
This post breaks down both paths with 2026 AWS pricing at two processing volumes: 100 videos per day and 1,000 videos per day.
The Short Answer
Below 30,000 minutes of video per month (roughly 1,000 one-minute videos per day), a cloud video API costs less than self-hosting FFmpeg on AWS. That includes the infrastructure you don't have to build and the engineer who doesn't have to wake up at 2am when the job queue backs up.
Above 50,000 minutes, self-hosting can win on unit economics. But only if you have dedicated DevOps capacity to absorb the maintenance burden.
Self-Hosting on AWS: The Full Bill
Compute
FFmpeg is CPU-bound. A single 1080p transcode with -preset medium pins 4 cores for roughly 30 seconds per minute of input video. Common EC2 options in us-east-1:
| Instance | vCPUs | Monthly Cost | Capacity (1080p) |
|---|---|---|---|
| t3.medium | 2 | $30 | ~700 min/day |
| c5.xlarge | 4 | $124 | ~1,400 min/day |
| c5.2xlarge | 8 | $248 | ~2,800 min/day |
These are on-demand prices. Reserved instances save 30-40%, but lock you in for 1-3 years. Spot instances are cheaper still, but they get interrupted mid-transcode with no warning.
Storage
Input and output files live in S3 during processing. At $0.023/GB-month, storage itself is cheap. The catch is churn. Processing 100 videos per day at 200MB average generates roughly 600GB of monthly throughput. That's about $14/month in S3 costs.
Data Transfer (The Cost Nobody Budgets For)
AWS charges $0.09/GB for data leaving its network. If your users download the processed videos:
| Daily Volume | Monthly Egress | Cost |
|---|---|---|
| 100 videos at 200MB | 600 GB | $54/mo |
| 1,000 videos at 200MB | 6 TB | $540/mo |
CloudFront brings it to ~$0.085/GB. Doesn't change the math much. At moderate volume, egress is often the single largest line item on the AWS bill.
Operations (The Cost That Never Shows Up on an Invoice)
Someone has to keep this running:
- Build and maintain the Docker image with the right codecs (libx264, libx265, libvpx, AAC, Opus)
- Configure autoscaling on ECS or Kubernetes
- Wire up a job queue with SQS, retries, dead letter handling, and progress tracking
- Patch FFmpeg when CVEs drop (3-4 times per year)
- Debug transcoding failures on corrupted or malformed inputs at 2am
Conservative estimate: 10-20 hours per month of senior engineering time. At $100/hour fully loaded, that's $1,000-$2,000/month in labor.
The Side-by-Side Comparison
Both paths compared at two common volumes, assuming 1-minute average input duration per video:
| Cost Category | 100 videos/day | 1,000 videos/day |
|---|---|---|
| **Self-Hosting on AWS** | ||
| Compute (c5.xlarge) | $124 | $496 (4 instances) |
| S3 Storage | $14 | $140 |
| Data Transfer | $54 | $540 |
| Ops Labor (est.) | $1,000 | $1,500 |
| **Self-Hosting Total** | **$1,192/mo** | **$2,676/mo** |
| **Cloud API (FFmpeg Micro)** | ||
| Plan | Pro: $89/mo (12K min included) | Scale: $349/mo (60K min included) |
| Overage | $0 (3K of 12K min used) | $0 (30K of 60K min used) |
| **API Total** | **$89/mo** | **$349/mo** |
At 100 videos per day, the API costs 13x less. At 1,000 per day, 7.6x less. And that's before counting the weeks of engineering time to build the self-hosted system in the first place.
What the API Call Looks Like
The entire infrastructure stack collapses to a single HTTP request:
curl -X POST https://api.ffmpeg-micro.com/v1/transcodes \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"inputs": [{"url": "https://storage.example.com/input.mp4"}],
"outputFormat": "mp4",
"preset": {"quality": "high", "resolution": "1080p"}
}'
No EC2 instances. No Docker images. No job queues. No autoscaling. You send a video URL, pick your output settings, and poll for the result. Billing is per processed minute.
You can test this on the free tier (100 minutes, no credit card) before committing to anything.
When Self-Hosting Actually Makes Sense
Being honest: self-hosting wins in a few specific scenarios.
- Volume above 50,000 minutes/month and you have a dedicated DevOps engineer already on payroll. Unit economics start to favor owned infrastructure.
- Regulatory requirements that prevent sending video to third-party services. HIPAA, ITAR, or internal data governance policies that mandate on-premise processing.
- Custom codec builds with patches or modules not available in standard FFmpeg distributions, like specific hardware acceleration or proprietary codecs.
If none of those apply, you're paying for infrastructure complexity you don't need.
Security: One Less Attack Surface
Self-hosting means you own the security surface. FFmpeg has a history of CVEs in its demuxers and decoders. Running untrusted video through a self-hosted instance means you're responsible for sandboxing the process, updating FFmpeg when vulnerabilities are disclosed, isolating processing containers from your app network, and managing authentication yourself.
With a cloud API, auth is a single Bearer token. Video is processed in isolated containers and outputs are delivered via signed URLs that expire after 10 minutes. You don't touch the patching lifecycle.
Common Cost Mistakes
- Forgetting egress. Most self-hosting estimates skip data transfer entirely. At 1,000 videos/day, egress alone costs more than the entire API plan.
- Counting only compute. EC2 is 10-20% of the total cost at moderate volume. Storage, transfer, and labor are the other 80%.
- Ignoring setup cost. Building a production queue with retries, progress tracking, and webhook notifications takes 2-4 weeks of engineering time. At $100/hr, that's $8,000-$16,000 before you process a single video.
- Benchmarking with on-demand pricing only. Reserved and spot instances cut compute costs, but spot instances get interrupted and reserved instances lock you into capacity you might not need.
FAQ
How much does it cost to run FFmpeg on AWS?
A production FFmpeg setup on AWS costs $200-$2,700 per month depending on volume. That includes EC2 compute, S3 storage, data transfer, and engineering maintenance. The EC2 instance alone (c5.xlarge at $124/month) is roughly 10-30% of the total bill.
Is self-hosting FFmpeg cheaper than using an API?
Below about 30,000 processed minutes per month, a cloud API is cheaper. Above that, self-hosting can win on unit economics if you have DevOps capacity. Most teams underestimate maintenance labor by 50% or more.
What are the hidden costs of self-hosting FFmpeg?
AWS data transfer (egress) at $0.09/GB, engineering time for maintenance and incident response (10-20 hours/month), and the upfront cost of building the job queue and autoscaling infrastructure (2-4 weeks of engineering time).
Is a cloud video API secure enough for production?
FFmpeg Micro processes video in isolated cloud containers. Each job runs in its own sandbox. Auth uses API key tokens, and output files are delivered via signed download URLs that expire after 10 minutes. No permanent storage of your video data.
What's the break-even point between self-hosting and an API?
For most teams, 30,000-50,000 processed minutes per month. Below that, the API wins on total cost. Above that, self-hosting wins on unit economics but requires dedicated DevOps staff.
*Last verified: May 2026. AWS pricing from us-east-1 on-demand rates. FFmpeg Micro pricing from ffmpeg-micro.com/pricing.*
About Javid Jamae
Founder & CEO at FFmpeg Micro
Javid is a software engineer, author, and entrepreneur with over 25 years of professional software development experience across enterprise, startup, and consulting environments. He founded FFmpeg Micro to make video processing accessible to developers through a simple, automation-first REST API.
You might also like

Self-Hosting FFmpeg vs. Using an API: What Developers Get Wrong
Self-hosting FFmpeg looks simple until Docker bloat, codec licensing, and scaling hit production. Compare self-hosted FFmpeg vs a cloud API.

FFmpeg API Pricing: What Video Processing Actually Costs (2026)
Compare FFmpeg API pricing models side by side. Real cost math for FFmpeg Micro, Shotstack, Mux, Cloudinary, and AWS MediaConvert at three workload sizes.

Building a Production-Ready Video Transcoding Pipeline (Without the DevOps Nightmare)
What actually building a production video transcoding pipeline looks like and how to avoid the common traps.
Ready to process videos at scale?
Start using FFmpeg Micro's simple API today. No infrastructure required.
Get Started Free