Video to Text

Drop in a video or audio file and get a transcript back — free, with no signup and no watermark. Everything runs on your device: nothing is uploaded, and the speech-recognition model is a one-time download that then works offline.

Why this can be free and unlimited

Cloud transcription tools run this model on a server, which costs them real money per minute of audio — so free plans gate it behind limits, signups or a watermark. Doing the same work on your own device costs nothing to run, so there's nothing to gate.

Built on the same core as the subtitle tools

The transcript this tool produces is a real subtitle track under the hood, so it opens cleanly in the timing shifter and can be burned into your video directly from the result.

Frequently asked questions

Is my video uploaded anywhere?

No. Transcription runs on your device using a speech-recognition model (Whisper) downloaded to your browser. The video or audio file is never sent anywhere, and nothing about it is sent with the model download either.

Why does it need to download something first?

The speech-recognition model itself has to reach your browser somehow. It's a one-time download — a few tens of megabytes for the default model — cached afterwards, so the next file you transcribe starts immediately.

How accurate is it?

It depends on the model you pick and your audio quality — we don't publish an accuracy number because it varies by language, accent and background noise. A larger model (Base or Small) trades a bigger download for better accuracy; Tiny is the default because it's the one everyone's browser can actually run quickly.

Does it work without a GPU?

Yes, with WebAssembly as a fallback, but it's meaningfully slower than the WebGPU path. The tool tells you which one your browser is using before you start.

What if there's no speech in my file?

You'll get a plain "no speech detected" result rather than an empty file dressed up as a success.

Is there a length limit?

Yes — this runs entirely on your device, so very long files get capped rather than promising a wait nobody would sit through. The limit is shown before you start.