Speak any language, type English — on-device translation with no cloud
OpenWhisp can translate your speech to English as you dictate, entirely on your Mac. It uses Apple's Translation framework on the transcribed text, so translation works with any transcription engine — turn on “Translate to English,” download the language pair once, and your dictation lands in English. An experimental live preview shows the translation in the overlay while you're still speaking.
Translation is the most cloud-shaped feature in software. Every major translator is a web service: your words go to a server, a model there does the work, the result comes back. That’s an uncomfortable trade for the things people most often need translated — a message to a client, notes from a medical appointment, anything covered by an NDA.
OpenWhisp does it on your Mac instead. Speak Russian, Spanish, French, or any supported language, and English text appears in whatever app you’re typing into. Nothing is uploaded.
How it works: translate the text, not the audio
The obvious way to build this is to ask the speech engine to translate — Whisper models can transcribe-and-translate in one pass. OpenWhisp used to work that way, and it had a real cost: only some engines could do it, so turning on translation meant giving up the fast realtime engine.
Now translation happens on the text, using Apple’s own Translation framework — the same on-device translation built into macOS. Your speech is transcribed by whichever engine you prefer, and the resulting text is translated locally. One immediate consequence: every engine can translate now, including Parakeet, the default. You no longer trade speed for languages.
Setting it up
- Open Settings › Dictation and turn on Translate to English.
- A status row appears for your language pair. If it isn’t on your Mac yet, download it from there — it takes a few minutes, and the row updates when it’s ready.
- Set your spoken language, or leave it on Auto Detect.
- Dictate. The text that lands in your app is English.
The language packs are the same ones macOS uses for system translation, downloaded once and then available offline — so this keeps working on a plane or behind a firewall, like the rest of OpenWhisp’s offline story.
Watch it happen: the live translation preview
Here’s the part that changes how translation feels. Normally translation is invisible until the end: the overlay streams your spoken words, and the English only materialises at the moment it pastes. If the translation is wrong, you find out too late — after you’ve already sent the message.
Switch on Live translation preview (experimental) and the dictation overlay shows a running English translation while you speak, with your spoken words kept on a single dimmed line above it. You can watch the translation form, judge whether it’s saying what you meant, and rephrase mid-sentence if it isn’t.
- It’s off by default — each session it’s on does extra on-device translation work while you talk.
- It’s display-only. The preview never writes into your document; what gets pasted still comes from the normal translation path.
- It updates on sentence boundaries or after a short pause, so it isn’t re-translating every syllable.
It never costs you your words
The design rule underneath all of this is worth stating plainly: if translation can’t run, you get your original text — never nothing. Language pack not downloaded, translation fails, something times out: your dictation is inserted untranslated. A translation feature should never be able to eat what you said.
Why local translation matters
A cloud translator means every sentence you translate is a sentence you’ve sent to someone else’s server. For a lot of people that’s simply not allowed — regulated industries, legal work, medical notes — and for everyone else it’s a quiet ongoing disclosure. Doing it on-device removes the question entirely: there’s no request to audit, no retention policy to read, and it works with no connection at all. It’s the same reasoning behind OpenWhisp’s on-device AI cleanup, applied to the feature people are most nervous about sending away.
Frequently asked questions
- Does OpenWhisp translate dictation without the internet?
- Yes. Translation runs on your Mac using Apple's Translation framework. You download a language pair once (a few minutes), and after that translation works offline — nothing is sent to a server.
- Which transcription engines support translation?
- All of them. Translation is applied to the transcribed text rather than performed by the speech engine, so it works with Parakeet (the default), WhisperKit, whisper.cpp, Apple Speech, and SpeechAnalyzer alike. You no longer have to switch engines to translate.
- Can I see the translation while I'm still speaking?
- Yes, with the experimental live translation preview. The dictation overlay shows a running English translation as you talk, with your spoken words on a dimmed line above it. It's off by default, and it's display-only — the text that gets pasted comes from the normal translation path.
- What happens if the translation fails or the language pack isn't installed?
- You get your original words. OpenWhisp's rule is that a failed translation inserts the untranslated transcript rather than losing your dictation.
- What macOS version do I need for on-device translation?
- macOS 15 (Sequoia) or later, which is also OpenWhisp's minimum supported version. The on-device translation framework it relies on is part of macOS 15.
Try OpenWhisp
Free, open source, and 100% on-device dictation for Apple Silicon Macs.