Offline dictation · macOS, Windows, Linux

Talk. Lyrebird types it — right here, on your own machine.

No cloud, no account, no subscription. Every word you dictate is turned into text on the computer in front of you, and none of it is ever sent anywhere.

Free and open source. Linux: build from source on GitHub. macOS build is unsigned — first time, right-click the app and choose Open.

"...chamfer to the louvres."

a waveform, resolving into words

  • Runs entirely on your deviceNothing you say is ever uploaded, anywhere.
  • No account, everInstall it and start talking. No sign-up.
  • No subscriptionPay nothing, ever again, for any of it.
  • Free & open sourceMIT licence. Read every line if you like.

How it works

Three steps. No workflow to learn.

Press your dictation key

Lyrebird starts listening in the background — no window to switch to, no app to bring to the front.

Talk, normally

Pauses, restarts, the odd "um" — dictate the way you'd actually speak. You don't need to perform.

Press it again

Your words are typed wherever your cursor already was — an email, a document, a chat, any app at all.

Custom vocabulary

It learns the words you actually use

Ordinary dictation software guesses at names, brand terms and specialist language — and guesses wrong, over and over. Lyrebird lets you add your own custom vocabulary, so it stops guessing and simply gets those words right.

The tradeoff: you have to teach it. Add a handful of your own words — names, jargon, brand terms — to a simple list, and Lyrebird stops making that mistake. It costs nothing in speed.
Spoken

"I used Onshape to model the servo horn, then added a chamfer to the louvres and printed it in PETG on the Bambu Lab printer."

Without custom vocabulary

"...added a chamfer to the louvers..."

With custom vocabulary

"...added a chamfer to the louvres..."

Raw

"um so i used onshape to model the servo horn uh and then i added a chamfer to the louvres you know"

Cleaned up 1.07s

"So, I used Onshape to model the servo horn, and then I added a chamfer to the louvres."

Optional grammar cleanup

Clean, readable text — not a raw transcript

Turn on cleanup and Lyrebird runs a small, private pass — right there on your computer — that strips out filler words and fixes punctuation, so what lands on the page reads the way you meant it.

The tradeoff: it costs a few seconds. Your words appear a moment after you stop talking, instead of instantly. Leave it off and you get the raw transcript immediately — already well punctuated on its own. Either way, nothing leaves your computer.

Accuracy

Built to get technical language right

We tested Lyrebird on a sentence packed with the kind of specialist words that trip up ordinary dictation software — brand names, engineering terms, product names. It got almost all of it right the first time, and the rest after being taught once. That's the difference custom vocabulary makes.

4.0%

Word error rate, measured on our own test sentence dense with technical vocabulary. That's our test, not an industry benchmark — treat it as a data point, not a guarantee. We report the real number rather than rounding it up to a nicer-sounding "99% accurate."

Transcription speed, measured on an Apple M5, relative to real time
BackendSpeedWhen it's used
Apple Silicon GPU (Metal, via MLX)14.9x real timeDefault on Apple Silicon Macs
CPU only2.7x real timeFallback when no supported GPU is present
NVIDIA GPU (CUDA)supportedWindows / Linux machines with an NVIDIA card

14.9x real time means 15 seconds of speech comes back as text in about 1 second. The CPU fallback is still comfortably faster than you talk — just less dramatically.

Under the hood

How the pipeline actually works

hotkey pressed │ ▼ microphone audio — kept in memory, never written to disk │ ▼ Whisper large-v3-turbo — local: MLX/Metal on Apple GPU, CUDA on NVIDIA, CPU otherwise │ ▼ [optional] local cleanup model — strips filler, fixes punctuation │ ▼ typed into whatever field has focus

Model size is a real tradeoff

large-v3-turbo is the default: the most accurate Whisper model that still runs comfortably on a laptop. Smaller variants trade accuracy for lower memory use and a faster response — worth trying on older or memory-constrained hardware. There's no bigger option offered above it; it's already near the top of what Whisper provides.

Configuration is a plain text file

Every setting lives in config/config.ini — hotkey, model choice, cleanup on or off. Custom vocabulary lives in config/dictionary.txt, one term per line. Both are editable by hand, or through the built-in settings page, which binds only to 127.0.0.1 and is never reachable from the network.

Build it from source

One script installs everything and runs a self-test, on macOS and Linux alike:

git clone https://github.com/freddygaffey/lyrebird cd lyrebird ./setup.sh # install + self-test ./setup.sh --cleanup # also install the local cleanup model ./setup.sh --check # verify an existing install

Windows: powershell -ExecutionPolicy Bypass -File .\setup.ps1

Get Lyrebird

Free, on every desktop platform

macOS

Apple Silicon and Intel. Uses the GPU on Apple Silicon for near-instant transcription.

Download .dmg

Unsigned build: first time you open it, macOS will say the developer can't be verified. Right-click Lyrebird in Applications and choose Open — once only.

Windows

Windows 10 and 11. Uses an NVIDIA GPU automatically if one is present.

Download .exe

Run the installer as your normal user — it doesn't need admin rights.

Linux

Works on X11; Wayland blocks global hotkeys (documented on GitHub). Build from source.

View on GitHub

No pre-built package yet — setup.sha short script installs everything in a few minutes.

The app itself is a small download. The first time you open Lyrebird, it downloads what it needs to understand speech (about 1.6 GB, once) — after that, it never needs the internet again. App download ≈187 MB.