u/Tricky-Sir-6110

Using Cloudflare Stream as a temporary transcoder: smart shortcut or bad idea?

Using Cloudflare Stream as a temporary transcoder: smart shortcut or bad idea?

We’re trying to reduce video transcoding costs for our SaaS.

We started with AWS MediaConvert. It was reliable, but expensive. We then moved to FFmpeg on ECS Fargate Spot and cut costs by about 30%, but transcoding is still one of our biggest infrastructure costs.

I’m now considering this pipeline:

  1. Upload the source video to Cloudflare Stream
  2. Wait for encoding
  3. Generate a downloadable MP4
  4. Download it to our own storage
  5. Delete the Stream asset

From the docs, ingress and encoding are free, storage is billed by video minutes, and MP4 downloads count as delivered minutes. On paper, that looks surprisingly cheap for one-off conversions.

Has anyone used Stream this way in production—as a temporary transcoding service rather than primarily for playback?

I’m particularly curious about:

  • Time from upload to a downloadable MP4 being ready
  • Concurrency or API rate-limit issues
  • Control over output resolution, bitrate, and codec
  • Whether the final cost stayed low at scale
  • Any operational catch I’m missing

Is this a reasonable use case, or am I trying to use Stream for something it wasn’t designed for?

https://preview.redd.it/35iv2pmqq8kh1.png?width=1920&format=png&auto=webp&s=ce3dc0ead5b6b723917644a63d190faa037f8c96

reddit.com
u/Tricky-Sir-6110 — 2 days ago