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

Published: (March 13, 2026 at 12:17 AM EDT)
3 min read
Source: Dev.to

Source: Dev.to

Traditional video recording flow

  1. User records video in the browser
  2. Raw video uploads to a server
  3. Server transcodes to MP4
  4. Server stores the file

You pay for compute, bandwidth, and storage. Steps 2‑4 are expensive (transcoding servers, egress fees, processing time). That’s why services like Ziggeo charge $0.026/min and many others charge even more.

Our approach: move work to the browser

Instead of uploading raw video and transcoding on the server, 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'
});

// Recording, transcoding, and upload are handled automatically.
recorder.start();

The video that reaches our servers is already a properly encoded MP4, so no server‑side transcoding is needed.

Edge processing

Our API runs on Cloudflare Workers – serverless functions deployed to 200+ cities worldwide. Every request is processed at the edge node closest to the user, delivering sub‑100 ms latency globally.

Storage & egress

Video files are stored on Cloudflare R2, which costs $0.015 / GB for storage and $0 for egress. By contrast, AWS S3 charges $0.09 / GB for egress. When users watch or download their recordings, we pay nothing for bandwidth.

Cost breakdown (1‑minute HD, 720p)

ComponentVidtreoTraditional services
Transcoding$0 (client‑side)Server GPU costs
Edge processingMinimal (Workers)Origin server costs
StorageR2 (low cost)S3 + replication
Egress$0 (R2)$0.09 / GB (S3)
AI transcriptionIncludedExtra cost

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

Feature overview

  • SDKs: React, Vanilla JS, Web Components
  • Quality: SD to 4K (the only service with 4K at this price point)
  • Screen recording: Capture screen, camera, or both
  • AI built‑in: Automatic transcription and summaries, 12× 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 developer experience

React SDK example

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 (
    
      {isRecording ? 'Stop' : 'Record'}
    
  );
}

Web Component usage

Production experience

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

Roadmap

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

Get started

  • Website:
  • Docs:
  • Install SDK: npm install @vidtreo/recorder

I’m the founder – happy to answer any questions in the comments. If you’re currently paying for video recording infrastructure, I’d love to hear about your setup and pain points.

0 views
Back to Blog

Related posts

Read more »