AI Speech to Text

Record from your microphone or upload an audio file — get a timestamped, editable transcription powered by Whisper running entirely in your browser.

Your audio never leaves your device. Whisper tiny model loads once (~230MB) and caches locally.

Transcribe Your Audio

00:00
Audio visualizer — start recording

Runs entirely in your browser. Your data never leaves your device.

How It Works

When you click Transcribe, four things happen — all locally, all in your browser:

  1. Audio capture / decoding — If recording, the MediaRecorder API captures raw mono audio. If uploading, the Web Audio API decodes MP3/WAV/M4A/MP4 into an AudioBuffer.
  2. Resampling & mono conversion — Audio is resampled to 16kHz mono float32 PCM, the input format Whisper expects.
  3. Model load (first time only) — The ~230MB quantized whisper-tiny ONNX model is fetched from Hugging Face CDN and cached in IndexedDB. Subsequent visits load instantly.
  4. Chunked transcription — Audio is split into 30-second overlapping chunks (5s stride). Each chunk is transcribed and merged. Paragraph-level timestamps are auto-generated.

Frequently Asked Questions

How accurate is the transcription?

We use Whisper Tiny, the smallest Whisper model (~39M parameters). It produces good results for clear audio with one speaker, moderate background noise and accents.

Which languages are supported?

Whisper Tiny supports 99 languages with auto language detection. English is the most accurate, followed by Spanish, Portuguese, French, German, Hindi and Indonesian.

Why do you need microphone permissions?

Microphone permissions are requested by your browser when you click Start Recording. The audio is captured locally via the MediaRecorder API. Nothing is uploaded to any server.

Can I transcribe long audio files?

Yes. Audio is split into 30-second overlapping chunks, each transcribed independently and then merged with paragraph-level timestamps.

What file formats are supported?

MP3, WAV, M4A and MP4. For MP4 we automatically extract the audio track in the browser.

Our Test Data

We tested 50 English & Spanish audio samples — average transcription time 6.8s for 60s audio on MacBook Air M2.

MetricValue
Model size (INT8)~230 MB
Average processing speed~8x real-time (M2)
Model load (cold start)~9s (CDN) / <0.5s (cached)
Word Error Rate (English clean)~12%
Languages tested5 (EN, ES, PT, ID, FR)

Last verified: September 2026. Results vary by hardware and audio quality.

When Not To Use This Tool