On-device speech recognition · Chrome extension · MIT

Speak freely. Type instantly.

Voice dictation that works in any text field on any site — and never sends your audio anywhere. Whisper runs inside your browser on your own hardware. No account, no subscription, no server. Turn off your Wi-Fi and it still works.

Add to Chrome — free Read the source Chrome 116+ · 78 MB one-time model download
The meter below is inert until you turn it on. —— RMS

Uses your microphone to draw the bars, and nothing else. This page has no server, no analytics and no third-party requests — check your network tab.

The whole story

Every network request LocalDictate makes

Most dictation extensions stream your microphone to a company's servers. That means your half-written emails, your client notes and your private messages get transcribed on someone else's computer, under someone else's retention policy. Here is the complete list for this one.

01
The Whisper model, once, from huggingface.co Downloaded the first time you pick a model, cached in IndexedDB, never fetched again. After this you can work on a plane.
That's it. There is no second request. No audio upload, no transcript upload, no telemetry, no crash reporting, no account check, no licence server, no remote config. There is no backend to send anything to.

What you get

Built for people who type all day

Dictation you can leave switched on, in the places you already write.

Anywhere

Types where your caret is

Gmail, Notion, Slack, GitHub, Jira, a search box, a form nobody has updated since 2011. If you can type in it, you can talk into it.

Fast

WebGPU, with a real fallback

Runs on your GPU where one is available, drops to WebAssembly where it isn't, and always tells you which is in use.

Quiet

Silence is never transcribed

Voice activity detection throws away room tone before it reaches the model — so it costs no compute and invents no words.

Tidy

Cleans up as it goes

Fillers removed, sentences capitalised, punctuation spaced. Say "new paragraph" or "question mark" and it does what you mean.

Yours

Learns your vocabulary

Add replacements for the names and acronyms Whisper keeps mangling. Ninety-odd languages, or automatic detection.

Open

Auditable, not just "trusted"

MIT licensed, no bundler, no minification. The files in the repo are the files your browser runs. Go and check the claims above.

Getting started

Four steps, then it's yours

The only slow part is the download, and it happens once.

Install and grant the microphone

Chrome asks once, for the extension itself. No sign-up, no email.

Pick a model

Base is the right first choice. Tiny if you're on an older laptop, Small if you have a discrete GPU and want the accuracy.

Wait for the one-time download

Between 78 MB and 490 MB depending on your choice. It's cached locally and never fetched again.

Click into any text field and press Ctrl + Shift + D

Talk. The words appear where your caret is. Prefer holding a key? Switch to push-to-talk in settings.

Choose your tradeoff

Three models, same privacy

Decode times are for one eight-second utterance on a 2023 laptop. Yours will differ; the ratios hold.

ModelDownloadWebGPUCPUAccuracy
TinyShort commands, clean audio, old hardware 78 MB~0.4 s~1.6 s
BaseThe sweet spot — start here 148 MB~0.7 s~3.4 s
SmallBest accuracy, wants a real GPU 490 MB~1.8 s~11 s

Straight answers

Questions worth asking

Is it really offline, or "offline-ish"?

Really offline. After the model download, disconnect entirely and dictate all day. The extension has no backend, so there is nothing for it to phone home to. The one declared host permission is huggingface.co, for the download.

How is it free? What's the catch?

The compute is yours, so there's nothing to bill for. No ads, no data sales, no premium tier. It's MIT-licensed on GitHub and it will stay that way.

Does it work in Google Docs?

Partly, and honestly no extension does better. Docs renders text on a canvas with no editable DOM to type into, so LocalDictate copies your transcript to the clipboard and prompts you to paste. Everything that behaves like a normal text field — including Docs comments — works directly.

My machine doesn't support WebGPU.

It falls back to WebAssembly on the CPU automatically and tells you it has. Tiny and Base remain comfortable; Small will be slow. Check chrome://gpu if you're curious why.

How accurate is it?

It's Whisper, so: very good in a quiet room with a decent microphone, and noticeably worse with background noise or a heavy accent on the Tiny model. Accuracy is a property of the model, not of this extension — which is also why you can swap models freely.

Does it store what I say?

Only if you want. A local history of the last 100 transcripts is kept in your browser profile so you can recover something you lost. It never leaves your machine, you can export or clear it in one click, and you can switch it off entirely.

Your voice should stay on your machine.

Free, open source, and offline the moment the download finishes.