Local subtitle generation
Subtitles for any video.
Nothing gets uploaded.
Drop in an audio or video file and Local Subtitles writes the subtitles on your own machine — speech recognition, cue timing, line breaks, the lot. No upload, no queue, no per-minute billing. Export SRT, VTT or plain text.
How it works
- Your file is decoded in the browser. Local Subtitles pulls the audio track out of your video with the Web Audio API and resamples it to 16 kHz mono — the format the speech model expects.
- The speech model runs on your machine. An OpenAI Whisper model, compiled to run in the browser, produces a transcript with word-level timestamps. It runs on your GPU through WebGPU where available, otherwise on the CPU.
- Words become readable cues. This is the part most transcription tools skip. Local Subtitles groups words into subtitle cues using line length, reading speed, sentence boundaries and pause detection, then enforces a minimum on-screen time so nothing flashes past.
- You edit and export. Fix a name, merge a cue, nudge a timecode, then export SRT, VTT or plain text.
The first run downloads the model once (about 165 MB on Base). Your browser caches it, so every run after that starts immediately and works with no connection at all.
Why local matters
Every other subtitle tool uploads your file. That is fine for a cat video and a problem for everything else — an unreleased edit, a client interview, a medical or legal recording, an internal all-hands.
Local Subtitles has no upload endpoint. There is no server that could hold your file, because the transcription happens inside the browser tab. You can prove it: open your browser's network tab while a file processes, or disconnect from the internet after the model has loaded and run it again.
Pricing
Free covers most single videos. Pro is for people who do this every week.
Free
€0
- Three files a month
- No length limit
- Base model, all languages
- SRT, VTT and plain text export
- Full cue editor
Pro
€119/year
- Unlimited files
- Turbo model — markedly better on names, accents and non-English audio
- ASS export with word-level karaoke timing
- Translate any language into English subtitles
- Cue rules saved between sessions
or €15/month · €199 once, forever
A single hour of audio costs about €12 at Happy Scribe’s per-minute rate and about €10 at Sonix’s. Local Subtitles runs on your own machine, so length is free either way — you are paying for volume and accuracy, not for minutes.
Already have a subtitle file?
If the file exists and the problem is the format or the timing, you do not need to transcribe anything again. The subtitle converter turns SRT into VTT, VTT into SRT and ASS into either, shifts cues that run early or late, and repairs the drift caused by a frame-rate mismatch. Free, no account, same browser-only principle.
Questions
How accurate is it?
It uses OpenAI's Whisper models. The Base model is solid on clear English speech and usable for most European languages. The Turbo model in Pro is noticeably better on accents, proper nouns, technical vocabulary and non-English audio. Neither is perfect on heavy background noise or overlapping speakers — which is why there is an editor.
Why is the first run slow?
The speech model has to download once, then it is cached by your browser. Processing speed after that depends on your hardware: with WebGPU a ten-minute file typically takes about a minute, on CPU it takes a few minutes.
Which browsers work?
Chrome and Edge are the most reliable. Firefox and Safari work but fall back to CPU processing on many systems, which is slower. Mobile browsers can run short files but will struggle with long ones because of memory limits.
Can it handle a two-hour recording?
On Pro there is no length limit, but very long files are limited by your machine's memory rather than by us. For recordings over about an hour, split them first — the editor makes reassembly straightforward.
Does it identify different speakers?
Not yet. Speaker labelling is the most requested addition and is planned.
What happens to my licence if I change computer?
The key activates on any machine. It is stored in that browser, so you enter it once per browser.