Speech to text on a Mac, running locally
What "local" actually means, which models run on Apple Silicon, the latency to expect, and the constraints that apply.
Local speech to text means the model runs on your own machine and the audio is never uploaded. Audio is transcribed on your Mac, avoiding an upload round trip. How soon the finished text appears also depends on recording length, cleanup, AI polish, your Mac and the app receiving the text.
There are two real trades. A server can run a larger model than a laptop holds, though for everyday speech the on-device models are accurate enough that the gap is not what you notice. And a cloud service that transcribes while you are still talking can finish a long dictation sooner than we do, because by default we start when you stop. For the short bursts most dictation actually consists of, the upload and the round trip cost more than they save.
What "local" means, precisely
The word gets used loosely. Three different things travel in a dictation app, and they have different answers.
| What travels | Where it goes |
|---|---|
| Your audio | Never off the Mac, whatever else you turn on. On disk it does touch down: while you dictate, the app keeps an encrypted backup of the recording, so a crash has something to recover from rather than losing the words outright. Deletion is requested once the text is safely saved. If the app quits first, one recovery attempt runs at next launch, and deletion is requested whether that attempt succeeded or failed. You can switch that backup off, which is the privacy-strict choice. |
| The transcript | Stays on the Mac by default. If you deliberately choose a cloud provider for cleanup, exactly four things about you and your dictation reach it: the transcript, your custom words, the name of the app you are dictating into, and the dictation language if you have locked one. The last three are what let the model get your spellings and tone right. Alongside them go our cleanup instructions, which are the same text for every user and describe nothing about you, and your own API key, which is how that provider bills you. Text around your cursor is never included, and audio is never sent. Picking a hosted Ollama model sends the same four to Ollama with no key involved; an Ollama model you download runs on your Mac and sends nothing. Never anything to us on any route. |
| Usage telemetry | Anonymous usage and crash data: that a dictation happened, how long it took, which engine ran, which app it was pasted into, and your settings. Never the words you said. Both are on by default, and you can turn either one off in App Settings > Privacy. |
Read the distinction on the second row carefully when comparing tools. "On-device transcription" and "nothing leaves your machine" are different claims, and the first is easy to read as the second. Check which one a tool is actually making, ours included: the row above is why we split it into three. Ours is the first: the audio claim holds unconditionally, the transcript claim does not, and the row above says exactly what a cloud provider receives. Full detail: what data is collected.
Which models run on the Mac
Parakeet Ultra
The default. Runs on the Apple Neural Engine. Faster of the two. Covers 25 European languages and detects which of them you are speaking.
Whisper Large v3 Turbo
Runs on the GPU. Slower than Parakeet, covers 99+ languages, and detects which of them you are speaking. Switch to it in settings when you need a language Parakeet does not carry.
Both are downloaded once and then run with no network. Neither sends audio anywhere. The engine choice is a setting, not a purchase tier.
What latency to expect
Audio is transcribed on your Mac, avoiding an upload round trip. How soon the finished text appears also depends on recording length, cleanup, AI polish, your Mac and the app receiving the text.
| Stage | What sets the wait |
|---|---|
| Transcription | Runs on your Mac. By default it is written after you stop talking, so a longer dictation takes longer, and your Mac's chip matters too. |
| Cleanup and AI polish | A separate step after transcription. It scales with how much you said. |
| Delivery | Depends on the app receiving the text. |
Cleanup is a separate step with its own cost, and it grows with length. Any tool quoting one figure for the whole path is quoting the wrong thing. By default the text arrives after you stop talking. An optional Faster Transcription mode does the transcription work while you are still speaking, so the finished text arrives sooner once you stop. It does not put text into your document mid-sentence. Seeing words as you speak is a separate setting, Live Preview, which draws a rough draft in the recording pill from a lighter engine and throws it away at the end; it never changes the text that gets pasted. We recommend leaving Faster Transcription off on the default Parakeet engine, because Parakeet stitches overlapping pieces together and the joins are where errors appear.
What works with no internet
Works offline
- Recording and transcription, both engines
- Filler word removal
- Numbers, dates, money, emails and URLs formatted correctly, when you are dictating in English. In other languages this step still tidies email addresses, dashed codes, version numbers and dates the speech engine wrote without leading zeros, and leaves the rest as spoken. Spoken punctuation is a separate setting, off by default: in English you say the mark on its own, and in German, French, Spanish and Italian you say a start word first
- Spoken emoji
- Custom vocabulary correction
- Cleanup with our own on-device model, or with S1-mini by Superwhisper, or with Apple Intelligence on macOS 26 and later, or with a local Ollama model
Needs a connection
- Cleanup routed to a cloud provider, if you chose one
- The first download of a model file
- App updates
If cleanup is unavailable for any reason, you still get the deterministically cleaned transcript rather than raw output. The formatting steps above run before cleanup, so they survive it failing.
Constraints
- Apple Silicon only. M1 or later. There is no Intel build and there will not be one; the speed comes from the Neural Engine and GPU in Apple Silicon.
- macOS 14 Sonoma or later. Core dictation works across that whole range.
- Apple Intelligence cleanup needs macOS 26. Third-party apps could not call the on-device model before that. Apple Intelligence is also the shipped default, so on macOS 14 to 25 the cleanup step is skipped silently and you get the deterministically cleaned text rather than raw output. There is no automatic fallback: to get AI cleanup below macOS 26 you pick EG-1, S1-mini by Superwhisper, a local Ollama model, or your own provider key yourself.
- No Windows, Linux or iOS version. There is a separate Android app. If you need Windows or Linux, Handy is free, open source, and cross-platform.
- One file at a time, no subtitles. EnviousWispr turns an audio or video recording into readable text. For subtitle export and batch folders, MacWhisper is built for that job.
Versus the dictation already in macOS
macOS ships with dictation. It is free and it is already installed, so it is the right baseline to beat.
| Apple Dictation | EnviousWispr | |
|---|---|---|
| Runs on device | General text dictation can, depending on language and settings | Always, both engines |
| Session limit | Stops after 30 seconds with no detected speech | Up to 60 minutes |
| Removes filler words | No | Yes, automatic |
| Rewrites awkward phrasing | No | Yes, optional AI cleanup |
| Custom vocabulary | Not supported | Yes, with imports from other apps |
For a sentence here and there, the built-in one is fine and needs no install. The case for a dedicated tool is frequency: the 30-second cutoff and the lack of cleanup are what wear out when you dictate all day. Full breakdown: EnviousWispr vs Apple Dictation.
Common questions
Does local speech to text work without an internet connection?
Yes, once the model files are downloaded. Recording, transcription, and filler removal run on the Mac with no network. Number and date formatting also runs offline, but only when you are dictating in English. Cleanup is the one step that can need a connection, and only if you point it at a cloud provider or a hosted Ollama model.
How fast is on-device speech to text on Apple Silicon?
Audio is transcribed on your Mac, avoiding an upload round trip. How soon the finished text appears also depends on recording length, cleanup, AI polish, your Mac and the app receiving the text. Transcription runs after you stop talking by default, so a longer dictation takes longer, and cleanup time scales with how much you said.
What is the difference between local speech to text and cloud speech to text?
Local means the model runs on your machine and the audio is never uploaded. Cloud means the audio is sent to a server for processing. Local removes the network round trip and the upload, and it keeps working offline. Cloud services can run larger models than a laptop holds.
Free, open source, no account
GPLv3. No subscription, no word cap, no trial that expires. Apple Silicon, macOS 14 or later.
Comparing options? See the picks by use case or every head-to-head.