Offline speech to text on Mac
See how local Whisper and Parakeet models keep transcription on your Apple Silicon Mac after the one-time download.
Free · Source on GitHub · macOS
Press Option plus Space⌥Space to dictate into any app. Runs locally on Apple Silicon — free, no account required, and source available on GitHub.
Speak in Notes, Slack, Mail, Notion, ChatGPT, a terminal, or any other text field. Review the result before it types, or turn on instant paste.
WhisperKit and FluidAudio run speech models locally on the Apple Neural Engine — audio stays on your Mac in local mode.Read the setup guide
See it work
This is the real app dictating directly into a coding workspace — no copy and paste, no window switch, and no staged interface.
Three steps
A floating HUD with a live waveform appears — from any app, no window switch. Esc cancels anytime. Prefer push-to-talk? Switch to hold-to-record in Settings.
Full sentences, paragraphs, casual or technical. Punctuation is inferred; with a streaming model the words appear live as you speak.
The transcript pops up for a quick edit — hit Return and it lands at the cursor of the focused app. Turn review off and it pastes instantly.
Choose your workflow
Dictate everyday writing, longer AI prompts, or entire meetings. Pick a workflow to see how VoiceToText fits the Mac apps you already use.
Writing
Put the cursor where you want the text, speak naturally, review the result, and press Return. VoiceToText handles punctuation and types into the app already in front of you.
Quick update — I finished the proposal and shared it with the team. I’ll send the final version before lunch tomorrow.
Mac speech-to-text guides
Practical guides for private dictation, faster coding, and meeting transcription on Mac.
See how local Whisper and Parakeet models keep transcription on your Apple Silicon Mac after the one-time download.
Dictate prompts, implementation notes, and terminal commands into Cursor, Claude Code, ChatGPT, and other coding tools.
Capture your microphone and system audio together, then transcribe calls locally by default—without a bot in the meeting.
What you get
The essentials stay simple. Local transcription is the default; cloud models and AI actions are optional when you explicitly add your own provider key.
Parakeet and Whisper run on-device, so those recordings are not sent to a speech provider. There is no VoiceToText account or app telemetry; model downloads, update checks, optional cloud engines, and AI actions use the network.
Press Option plus Space⌥Space to start, again to stop — or switch to hold-to-record push-to-talk. Esc cancels. Rebind to any shortcut, even Right Control alone.
Pure SwiftUI with no Electron overhead — quick to launch, light in Activity Monitor, and built for Apple Silicon.
Slack, Mail, Notes, browser address bars, terminals, code editors — if macOS puts a cursor there, VoiceToText types into it.
FAQ
Eight direct answers about privacy, setup, compatibility, and everyday use.
Ready to dictate
One DMG. Drag to Applications. Grant Microphone and Accessibility. Press Option plus Space⌥Space and speak.
Drag VoiceToText to /Applications. Takes 5 seconds.
The default local model (Parakeet TDT v3) downloads itself — no setup, no account.
One-time prompt — mic hears you, accessibility types into whatever app you’re in. Revoke anytime in System Settings.
Review the transcript, hit Return — it lands at the cursor. Prefer hold-to-talk? One switch in Settings.
Why two permissions? Microphone lets the app hear you. Accessibility lets it type into whatever app you’re in. Both stay on-device. Revoke anytime in System Settings.
Requirements: macOS 15.0 or later · Apple Silicon (M1 or newer). Updates are built in — the app checks GitHub Releases and installs new versions in place.