DEV Community

Cover image for We built a video recording API at $0.01/min. Here's the tech that made it possible.
Christian Segovia
Christian Segovia

Posted on

We built a video recording API at $0.01/min. Here's the tech that made it possible.

Most video recording APIs charge $0.02-0.03 per minute. We built one for $0.01/min — 62% cheaper — and it actually works better.

This isn't a pricing gimmick. It's what happens when you rebuild video recording with modern browser APIs instead of legacy server infrastructure.

Here's the full technical breakdown.

The problem we solved

Traditional video recording services follow this flow:

  1. User records video in browser
  2. Raw video uploads to server
  3. Server transcodes to MP4
  4. Server stores the file
  5. You pay for compute, bandwidth, and storage

Steps 2-4 are expensive. Transcoding servers, egress fees, processing time — it adds up fast. That's why Ziggeo charges $0.026/min and others charge even more.

We asked: what if the browser did most of the work?

Our architecture: edge-first, client-side transcoding

WebCodecs API for client-side transcoding

Instead of uploading raw video and transcoding on servers, our SDK uses the WebCodecs API to transcode video to H.264 MP4 directly in the user's browser.

import { VidtreoRecorder } from '@vidtreo/recorder'const recorder = new VidtreoRecorder({
  apiKey: 'your-api-key'
})

// That's it. Recording, transcoding, and upload are handled.
recorder.start()
Enter fullscreen mode Exit fullscreen mode

The video that reaches our servers is already a properly encoded MP4. No server-side transcoding needed.

Cost saved: ~60% of traditional processing costs.

Cloudflare Workers for edge processing

Our API runs on Cloudflare Workers — serverless functions deployed to 200+ cities worldwide. No origin servers. No EC2 instances. No scaling headaches.

Every API request is processed at the edge node closest to the user. Sub-100ms latency globally.

Cost saved: ~70% compared to traditional server infrastructure.

R2 Storage for zero egress fees

Video files are stored on Cloudflare R2, which charges $0.015/GB for storage and $0 for egress. Compare that to AWS S3's $0.09/GB egress fees.

When your users watch or download their recorded videos, we pay nothing for bandwidth.

Cost saved: 100% of egress fees.

The math behind $0.01/min

Here's why our costs are fundamentally lower for a 1-minute HD (720p) recording:

Component VIDTREO Traditional
Transcoding $0 (client-side) Server GPU costs
Edge processing Minimal (Workers) Origin server costs
Storage R2 (low cost) S3 + replication
Egress $0 (R2) $0.09/GB (S3)
AI transcription Included Extra cost

The architecture difference is real. We charge $0.01/min. Competitors charge $0.026/min because their infrastructure requires it.

What you get

  • SDKs: React, Vanilla JS, and Web Components
  • Quality: SD to 4K recording (the only service with 4K at this price point)
  • Screen recording: Capture screen, camera, or both
  • AI built-in: Automatic transcription and summaries, 12x cheaper than OpenAI
  • Webhooks: Real-time event notifications for your pipeline
  • S3-compatible storage: Native support for sending videos to your own S3 buckets
  • Free tier: 100 minutes/month, no credit card required
  • TypeScript: Full type safety, great DX

Quick start (React)

import { useVidtreoRecorder } from '@vidtreo/recorder-react'function VideoRecorder() {
  const { startRecording, stopRecording, isRecording } = useVidtreoRecorder({
    apiKey: 'your-api-key',
    quality: 'hd',
    onComplete: (video) => {
      console.log('Video URL:', video.url)
      console.log('Transcript:', video.transcript)
    }
  })

  return (
    <button onClick={isRecording ? stopRecording : startRecording}>
      {isRecording ? 'Stop' : 'Record'}
    </button>
  )
}
Enter fullscreen mode Exit fullscreen mode

Web Component (framework-agnostic)

<vidtreo-recorder
  api-key="your-api-key"
  quality="hd"
  on-complete="handleVideo">
</vidtreo-recorder>
Enter fullscreen mode Exit fullscreen mode

Real-world usage

We're already in production with an enterprise client processing thousands of minutes monthly. The stack handles:

  • 4K recordings without dropped frames
  • Automatic retry on upload failures (IndexedDB persistence)
  • Device management (camera/mic switching mid-recording)
  • Real-time progress indicators

What's next

We're actively building:

  • Multi-track recording (camera + screen simultaneously)
  • Custom recording UI components
  • Azure Blob Storage and Google Cloud Storage integrations

Try it

100 free minutes/month. No credit card. No per-seat pricing.

  • Website: vidtreo.com
  • Docs: docs.vidtreo.com
  • SDK: npm install @vidtreo/recorderI'm the founder — happy to answer any questions in the comments. If you're currently paying for video recording infrastructure, I'd genuinely love to hear about your setup and pain points.

Top comments (0)