Last updated: 24 May 2026
Dictator runs entirely on your device — Mac or iPhone. The short version: your audio, your transcripts, and your settings never leave the device.
Audio captured from the microphone is held in memory for the duration of a recording and then discarded. The transcript is produced locally by WhisperKit or Parakeet (on macOS) or Parakeet (on iOS), optionally tidied by a local language model — MLX on macOS, Apple Intelligence on iOS — and pasted into the focused app. Dictation history, conversations, vocabulary, custom prompts, and input-device preferences are stored in plain JSON files in the app's own container — on macOS at ~/Library/Application Support/Dictator/, on iOS in the app's sandbox (also visible to the Dictator keyboard extension via a shared App Group so it can collect a dictation result for the field you were typing in). Everything stays on the device.
One thing on iOS, two on macOS, all initiated by you:
Model downloads. When you first set up the app (or pick a different Whisper / LLM model from Settings → Models on macOS), Dictator downloads the weights from Hugging Face. Hugging Face will see those requests; Dictator doesn't add anything to them.
Update checks (macOS only). The macOS app periodically asks dictator.robgough.net whether a newer version is available, via the Sparkle updater. The request includes your operating system version and the running app version — what any auto-updater needs to compare. The site is hosted on GitHub Pages; standard GitHub access logs apply. You can disable update checks in Settings. The iOS app receives updates through the App Store instead and makes no update-check requests of its own.
The Dictator apps do not send analytics, crash reports, or usage data to the author or anyone else. There is no account, no sign-in, and no server-side component beyond the static macOS update feed.
This marketing website uses Fathom Analytics to count page views. Fathom is cookieless, doesn't track individuals across sites, and doesn't collect personal data. It's only used on the website — it has no presence inside either app.
macOS. macOS asks you to grant Microphone (to record) and Accessibility (to paste into the focused app via synthetic ⌘V) the first time you use the relevant feature.
iOS. iOS asks you to grant Microphone access the first time you press a record button. The Dictator keyboard extension also needs you to enable Allow Full Access (Settings → General → Keyboard → Keyboards → Dictator) so it can talk to the host app's container and open the host app to start a recording. Full Access is only used for that local communication — the keyboard does not transmit anything off the device.
All permissions can be revoked at any time from System Settings (macOS) or Settings (iOS).
Questions: hello@robgough.net.