Privacy guide · 7 min

Offline speech to text on Mac, without sending your recordings away.

VoiceToText downloads a speech model to your Mac and transcribes locally after that. You can dictate into any app, transcribe files, and record meetings without uploading the audio when a local model is selected.

  • Local models by default
  • No app account
  • Source on GitHub
  • macOS 15+ · Apple Silicon

The short answer

Choose Parakeet or Whisper in VoiceToText and the actual transcription runs on your Mac. The initial app and model downloads need an internet connection, and the app checks GitHub for updates. Audio is sent off-device only when you deliberately select an optional cloud transcription model or run an AI transcript action with your own provider key.

“Offline” should describe the audio path, not make a blanket network claim.

A useful privacy answer names every point where the network can appear. That makes it possible to choose the right workflow instead of relying on a vague badge.

In local mode, microphone or file audio is processed by a downloaded model on the Mac. The transcript is produced on-device and the app does not need to upload that recording to a VoiceToText server—there is no VoiceToText account or first-party transcription service.

A new installation still needs to download the app and a model. VoiceToText also checks GitHub Releases for updates. Those connections are different from sending the content of a dictation or meeting to a transcription provider.

Cloud models remain available as an explicit choice. If you select one, the audio goes directly to that provider under the API key you supply. AI cleanup actions likewise require a provider. For a strictly local session, stay on Parakeet or Whisper and do the final edit yourself.

A local dictation workflow in four deliberate steps.

Install the signed app

Download the DMG from GitHub Releases, move VoiceToText to Applications, and open it. Current builds require macOS 15 or later on Apple Silicon.

Download one local model

Start with Parakeet for a responsive English workflow or choose a Whisper size when multilingual coverage or a different speed-and-quality tradeoff matters.

Grant only the needed permissions

Microphone captures speech. Accessibility lets the app paste at the focused cursor. Meeting capture separately uses Screen Recording permission to receive system audio.

Confirm the selected engine

Before sensitive work, check Settings → Models and make sure a local Parakeet or Whisper engine—not an OpenAI or ElevenLabs option—is active.

One local engine can serve short dictation, files, and long conversations.

For everyday writing, put the cursor in Mail, Notes, a browser, chat, or a code editor. Press the global shortcut, speak, stop, review, and paste. The review step is useful when names, numbers, or commands must be exact; instant paste is available when speed matters more.

For existing audio or video, import the file from Conversations. VoiceToText extracts its audio, runs the chosen local model, and stores the transcript in the on-device history. That is a better fit for confidential interviews or research recordings than a browser uploader when organizational policy forbids sending recordings to a third party.

For meetings, VoiceToText can capture the microphone and Mac system audio together. Local transcription keeps the recording on the machine, but consent obligations do not disappear: recording laws and workplace rules vary, so tell participants and follow the rules that apply to the call.

Local processing gives control, but it is not automatically the best result for every recording.

Hardware matters

Larger Whisper models use more storage, memory, and processing time. A smaller model or Parakeet can feel better for rapid dictation on a memory-constrained Mac.

Audio quality still matters

Distance from the microphone, overlapping speakers, room noise, and domain-specific names can all change the transcript. Review important output against the recording.

Languages differ by model

Do not assume every engine covers the same languages equally. Use a representative sample in your language and compare models before committing to a long recording.

Local is not anonymous

Transcripts and recordings stored on the Mac are still data. Protect the user account, enable disk encryption, and delete sensitive history when it is no longer needed.

Compare the practical differences.

The choices available inside VoiceToText; no universal accuracy claim is implied.
Decision pointLocal modelOptional cloud model
Audio processingRuns on the Mac after the model download.Runs at the selected external provider.
Internet during transcriptionNot required.Required.
Provider accountNo account or API key required.Your own provider API key is required.
Best fitPrivate or offline work, predictable control, and no usage billing.A specific cloud capability, realtime output, or a difficult recording you choose to send.
What to verifyActive model, local storage policy, and transcript quality on your audio.Provider terms, retention controls, cost, and whether the audio is permitted to leave the device.

Check the claims at the source.

Product behavior changes. These official pages were reviewed on July 27, 2026.

  • VoiceToText source repository

    The public Swift source, installation notes, feature list, and issue history for the app described on this page.

  • VoiceToText releases

    Signed release downloads and version history. Review the current release notes before installing.

  • OpenAI Whisper model card

    Primary documentation for Whisper’s model family, intended uses, multilingual training, and limitations such as uneven performance and possible hallucinations.

Try a complete dictation with Wi-Fi off.

Download a local model once, disconnect, and test the whole record–transcribe–review–paste loop on your own Mac.