Saywrite app icon

Saywrite

Private dictation · Mac

Talk. Let go. It's typed.

Hold right Option and talk. Your words appear in a small window as you speak. Let go, and the text is pasted where your cursor is. The speech engine runs on your Mac, and nothing leaves it.

macOS 14 or later · Apple silicon · Runs on your Mac

Animated illustration, not a screenshot: holding the right Option key, speaking, and letting go. Words appear in Saywrite's floating window, then the finished text is pasted into a Mail message.

Try it: press and hold the key, then let go. Or hold your own right .

  • Nothing leaves this Mac.
  • It learns from you.
  • About a tenth of a second.

How it works

Hold a key. Say it. Let go.

No app to switch to and no button to find. Saywrite lives in your menu bar and types into whatever you're using: Slack, Mail, your code editor, anywhere with a text field.

01 · Hold

Hold the talk key

Right Option to start with. Quick taps under 0.3 seconds are ignored, and pressing any other key while you hold it cancels.

Right ⌥ OptionRight ⌘ CommandRight ⌃ Controlfn / Globe
02 · Talk

Watch the words arrive

A small floating window sits by your text cursor and shows your words as you say them, so you know it heard you.

03 · Let go

It's typed

The text is pasted where your cursor is. No text field? It says “No text field — copied, press ⌘V”, and the text is waiting on your clipboard.

~0.1 s

Most of what you say needs no tidying by a model at all, so it lands about a tenth of a second after you let go.

Cleaned up as it lands

Say it how you'd say it. Get it how you'd write it.

Quick fixes run on every dictation, with no model needed.

Fillers, gone

um so the release is uh ready for Thursday

So the release is ready for Thursday.

Um, uh and erm are taken out.

Edit by voice

let's meet on Tuesday scratch that let's meet on Friday

Let's meet on Friday.

Say “scratch that”, “delete the last three words”, “new line” or “new paragraph”.

Your words, spelt right

the cooper netties cluster is on post grass now

The Kubernetes cluster is on Postgres now.

Your dictionary knows how your words sound, so names and jargon come out spelt your way.

Tidy with the local model

A small model, only when it helps.

For the harder cases, a small language model on your Mac tidies the text. It only runs when it's needed, and you can switch it off from the menu bar.

  • You correct yourself: “no wait”, “I mean”
  • An email that starts with a greeting
  • More than 60 words
Style per app

Fits where you're typing

SlackEmailCodeOther

Saywrite picks a style from the app you're in. In Slack, a single trailing full stop is dropped, so messages read like messages. And it switches itself off in password managers and password fields.

It learns from you

Fix it once. It's right next time.

Ordinary dictation keeps getting your colleagues' names and your team's jargon wrong. Saywrite learns them from the fixes you already make.

  • Just fix it. After pasting, Saywrite watches the field for up to 30 seconds and learns from the edits you make.
  • Fix anywhere. Select a word, press ⌃⇧F, type the right spelling and press Enter. It's replaced and remembered.
  • Tap to fix. Tap a word in the floating window just after it pastes.
  • Check the unsure ones. Words it isn't sure of get an orange dotted underline and go to a review list, with a short clip so you can hear what you said.
  • Teach it by voice. Add & teach: say a new word three times.
  • Start with your projects. “Suggest words from my projects” reads only the folder names of your recent VS Code and Cursor projects.
Dictionary window, Words tab: Kubernetes, Anneliese, Postgres, Figma, Nguyen and more, each with sounds-like variants, a source and a use count
Words: each word with what it sounds like, where it came from (You, Learned or Suggested) and how often it's been used.

Private by design

Nothing leaves this Mac.

Your voice is turned into text on your Mac, by models that run on your Mac. The speech engine is blocked from the network by macOS itself. No screenshots, no cloud.

  • The engine can't go online. It runs inside a macOS sandbox with all network access denied.
  • One download, once. Voice setup fetches the speech models from Hugging Face. After that, dictation needs no internet.
  • No telemetry. No analytics, no crash reporting, and no networking code in the app.
  • Your files, in plain sight. Your dictionary and history are plain files on your Mac. Open the folder from the menu and delete it whenever you like.

Read the Saywrite privacy policy

Voice setup welcome screen: Talk. Let go. It's typed. Hold right Option and talk; nothing leaves this Mac; it learns from you; fast. Voice setup, Two permissions: Microphone, to hear you only while you hold the key, and Accessibility.

Voice setup

Five minutes, once.

A short guided setup gets Saywrite ready for your voice. It asks for two permissions, downloads the speech models once (about 6 GB), checks your microphone and learns a few of your words. The voice test you record becomes your own test set.

  1. Welcome
  2. Permissions
  3. Speech models
  4. Microphone check
  5. Your words
  6. Voice test
  7. All set

The film

Forty seconds. No typing.

Talk. Let go. It's typed.

Saywrite is coming soon for the Mac. Email us and we'll tell you when it's out.

macOS 14 or laterMacs with Apple silicon.
About 6 GB, onceThe app is about 434 MB. Speech models download once during setup.
Works offlineAfter setup, dictation needs no internet.
No telemetryNo analytics or crash reporting. Your words stay on your Mac.

Support

Questions, answered.

Something not working, or an idea for the app? Email [email protected] with your Mac model and macOS version. Replies usually within two working days.

What do I need to run Saywrite?

A Mac with Apple silicon running macOS 14 or later. The app is about 434 MB, and Voice setup downloads the speech models once, about 6 GB, so leave room for both.

Does it need the internet?

Only once, to download the speech models from Hugging Face during Voice setup. After that, dictation works with no internet at all. The speech engine is blocked from the network by macOS.

Can I use a different key?

Yes. Open the Saywrite menu in the menu bar and choose Talk key: Right ⌥ Option, Right ⌘ Command, Right ⌃ Control or fn (the Globe key). If you pick fn, set “Press 🌐 key to” to “Do Nothing” in Keyboard settings, or macOS will open emoji or its own dictation as well.

It said “No text field — copied, press ⌘V”

Saywrite couldn't find a text field where your cursor was, so it put the text on the clipboard instead. Click where you want it and press ⌘V.

It keeps getting a name wrong

Select the word anywhere, press ⌃⇧F, type the right spelling and press Enter. It's replaced and remembered. You can also tap the word in the floating window just after it pastes, or add it in the Dictionary with Add & teach and say it three times.

Why does it need Accessibility access?

To notice when you hold the talk key, paste into the app you're using, and read the text field so it can pick the right style and learn from the fixes you make. It doesn't ask for Input Monitoring, and the microphone is only used while you hold the key, or during the microphone check in Voice setup.

Why doesn't it work in my password manager?

That's on purpose. Saywrite switches itself off in password managers and password fields.

When does it use the language model?

Only when it helps: when you correct yourself (“no wait”, “I mean”), start an email with a greeting, or say more than 60 words. Everything else is tidied with quick rules, which is why most text lands in about a tenth of a second. You can turn the model off with Tidy with the local model in the menu.

Where is my data, and how do I delete it?

In a folder on your Mac. Choose Open data folder from the menu to see it: your dictionary, the review list, a history of your dictations and the last recording. They're plain files, and deleting the folder removes them. See the Saywrite privacy policy.

When can I get it?

Soon. Saywrite is being prepared for release. Email [email protected] and we'll tell you when it's out.