The trick, and its price
Dictation gets names wrong. Not ordinary words — names. The colleague in the thread. The service in the logs. The file in the tab you have open. A speech model has never met them, so it writes something that sounds close and is not right, and you fix it by hand every time.
The fix is obvious once you see it. The right spelling is usually already on your screen. An app that can read the screen can put those words in front of the model, and the model stops guessing.
The usual way to do that is to take a screenshot and upload it. That works. It also means a picture of whatever was on your screen — the customer list, the salary column, the message above the box you are typing into — is now on somebody else’s server.
We did not want to make that trade. It turns out you do not have to.
Reading the screen without sending it
macOS has text recognition built in. It runs on your Mac and it is free. YapScribe takes one screenshot, hands it to that, and gets back the words that were on screen. The image is held in memory for the length of one dictation and then released. It is never written to disk, and it is never put into a network request — not on any setting, not on any plan.
Your voice is the same story. Speech to text runs on your Mac — a Whisper model you download once, or, on macOS 26 and later, Apple’s own speech model that ships inside macOS. The audio is never uploaded.
What comes out of the screenshot is a short, ranked list of words. Names and jargon. That list is the thing our app uses, and — if you have turned cloud polishing on — that list is the thing that travels.
The ledger
This is the whole of it, in the three ways you can set the app up. Local only means polishing is off, or pointed at a model running on your own Mac.
- The screenshot itself. Never leaves your Mac. All three.
- Reading the screen. On this Mac. All three.
- Your voice. Transcribed on this Mac. Never uploaded. All three.
- The words read off your screen. Local only: held in memory, then released. Your own key: sent to your provider with the correction request. Our cloud: sent through YapScribe to a model provider.
- Your saved and learned words. Local only: applied here, sent nowhere. The other two: sent with that same request.
- The transcribed text. Local only: stays on your Mac. Your own key: sent to your provider, on your own API key. Our cloud: sent through YapScribe to a model provider, and back.
- Stored on our servers. Nothing, in all three. Not the text, not the terms, not the result.
That last line is about dictations, and it would be the incomplete kind of true without the next sentence. We do hold an account. Your email address, your licence, and for each Mac a salted hash of its id plus what the device list shows you — its name, model, macOS version and YapScribe version. Your orders, and your usage as a count of words. Never anything you dictated. The privacy page is that paragraph in full.
The fourth, fifth and sixth lines are the honest part. With cloud polishing on, your dictated text and a handful of words read off your screen do go to a model company. That is what polishing is. The picture does not go, your audio does not go, and nothing is kept on the way — but a short list of words from your screen is not nothing, and an app that told you otherwise would be doing the thing this post is about.
Turn polishing off, or point it at Ollama on your own Mac, and none of that happens. Nothing leaves at all.
Check it yourself
Do not take our word for it.
The app tells you first. Before it sends anything, Settings shows one sentence naming exactly where your text is going and who receives it. Those sentences live in one file in the source and the Settings screen, the onboarding sheet and this website all read them from it, so they cannot drift apart.
Then watch the wire. Put Little Snitch or LuLu in front of YapScribe and dictate with polishing off: the dictation makes no connection at all. Turn cloud polishing on and dictate again: you get one request, to the provider you chose. Look at its size. A screenshot is hundreds of kilobytes and a few dozen words are not. Two connections are not the dictation: a licence check-in and an update check, roughly daily, neither carrying a word you said.
What it costs
You pay once. A licence covers two Macs and includes a year of updates; after that the app you have keeps working and newer builds need an optional update pass. No subscription, nothing recurring to cancel. The price starts low and steps up as licences sell, which is a real ladder rather than a countdown — the rung that is selling right now is on the pricing page.
The comparison with the app most people are coming from is on its own page, with a source and a date against every row.