Subtitles · Setup guide

Set it up once,
then forget it is there.

Installing takes a minute. The first launch takes longer, because the speech model downloads before anything can be captioned. One step in the middle can go wrong silently, and this page exists mostly so you can spot it in ten seconds rather than an hour.

The Subtitles overlay centred near the bottom of a Mac desktop, captioning the line: Captions sit on top of everything, and they never take a click
What you are aiming for: the overlay, over whatever is already on screen.

Before you start

  • macOS 14.2 or later, on Apple silicon. The whole app is built on Core Audio process taps, which is the API that arrived in 14.2. An Intel Mac cannot run it at all, and no update will change that. Captioning wants nothing newer; live translation is the one feature that needs macOS 15, because Apple's translator does.
  • About 600 MB of disk, once. The speech model is not in the download. It is fetched on first run and then kept: 583 MB for the Latin-script pack, 633 MB for the one that covers every other language.
  • A few minutes of internet, once. After that download the app works offline. The only calls it makes afterwards are a daily check for a newer version, which you can decline, and a monthly check of your licence key once you have one.

First launch

Drag it to Applications and open it. There is no Dock icon and no window to arrange: it lives in the menu bar. What you get first is a short welcome that shows the overlay doing its three jobs.

The Subtitles welcome window on a Mac desktop, showing a captioned podcast and a progress bar reading Loading voice detection
First launch, mid-download. The bar at the bottom is the model arriving.

Behind it, the model is downloading. The menu bar icon carries a pulsing dot while that runs, and the menu itself shows a percentage and a file count. First launch takes minutes; every one after it takes seconds.

The step that fails quietly

macOS asks for permission to record system audio. If you miss that prompt, or dismiss it, nothing will tell you. Core Audio keeps returning success, the tap reports itself running, buffers arrive at the right size and cadence, and every single sample is zero. There is no error anywhere in the stack, so the app looks installed and working and simply never captions anything.

If you see no captions and no error, this is almost always why. The menu has Check Audio Permission…, which opens the right pane of System Settings; Subtitles should be ticked under Privacy & Security ▸ Audio Recording. There is no API that reports whether the grant exists, so the app does not pretend to know.

The Subtitles menu with Check Audio Permission highlighted, and a line at the top reading: No audio reaching Subtitles, check permission if audio is playing
The menu says so at the top, and the fix is two rows down.

Where it lives

The macOS menu bar with the Subtitles icon highlighted while its menu is open
The icon, lit up while its menu is open.

Listen To

All system audio, which is the default and needs nothing set. The same menu lists what is playing right now if you would rather narrow it to one app, and that choice sticks until you change it.

Language / Models

Auto-detect leads, and covers sixteen languages. English has its own models with a speed and accuracy trade-off; the other languages come from one multilingual checkpoint. Moving within a pack is instant, crossing between packs is another download.

Translate To

Off until you pick a language, and then captions arrive in that one instead. Any of the sixteen into any other, on the machine, through Apple's own translator. Translation Timing below it decides what you see while a sentence is still being said. Both rows need macOS 15; below that they are absent. How it works.

The switches worth knowing

Skip Non-Speech keeps music from becoming invented lyrics. New Box On Speaker Change is off by default and worth turning on for calls. Fade Away Under Pointer stops the overlay hiding what is beneath it. Show Overlay In Screen Share / Capture is on, and turning it off takes the captions out of anything recording your screen.

Settings

Box size, opacity, how many lines it keeps and how long the history lives, all previewed on the real overlay rather than in a mockup. The model cache can be cleared from the same window.

The Subtitles settings window, showing a live preview of the caption box above sliders for lines, background opacity, pointer reveal and recent boxes
Every slider previews on the real overlay while you drag it, not on a mockup.

The five keys

The overlay takes no clicks, so you work straight through it. These are the only things it wants from your keyboard.

  • Hold ⇧ and drag to move the overlay. Where you put it is remembered.
  • Hold ⌥ to bring the finished captions back and scroll through them, or press ⌥F while they are up and type to search them.
  • Hold ⌃ while translating to see the original language underneath, for as long as you hold it.
  • ⌥⌘S pauses and resumes captioning.
  • Point at it and it fades, so you can read what is underneath without moving anything.

When something is wrong

Nothing is being captioned and there is no error.
The audio permission, nine times out of ten. Open Check Audio Permission… in the menu and make sure Subtitles is ticked under Audio Recording. The failure is silent by design of the API rather than by choice: a denied grant and a quiet machine are identical from inside the app.
Captions are appearing but the words are wrong.
Check which model is loaded. Auto-detect is the most convenient and not the most accurate; if you are only listening in English, picking an English model helps, and picking a slower one helps more. Names, jargon and acronyms are where any recogniser slips, and no setting fixes those.
Music is turning into lyrics.
Skip Non-Speech (VAD) is switched off. Turn it back on and a voice detector runs ahead of the recogniser, so backing tracks never reach it. It is on by default.
There is no Translate To in my menu.
You are on macOS 14. Translation runs through Apple's Translation framework, which shipped in macOS 15, so the two rows are absent rather than greyed out below that. Everything else on this page works unchanged on 14.2.
The translation rewrites itself while I read it.
That is Always Live, which retranslates the whole sentence on every update: nothing lags, and anything on screen can still change. Translation Timing ▸ Live, Then Settle is the other bet. It dims text that may still move and leaves it alone once it has settled, so what is bright has stopped changing.
The overlay is covering something I need to see.
Hold ⇧ and drag it somewhere else, or leave the pointer over it and it dissolves. How far that reach extends and how much it fades are both settings. If it has ended up somewhere unreachable, Reset Overlay Position in the menu puts it back.
It stopped captioning after the Mac slept.
Toggle captions off and on from the menu, which re-establishes the tap. If the app is otherwise responsive, that is faster than quitting it.
I want the disk space back.
Settings has Clear Model Cache, which removes the downloaded weights and reports how much it recovered. The next launch downloads again, so do it when you are done rather than between sessions.

Set up in a minute, then out of the way.

14-day refund, no questions asked

Free for 7 days, then $9 once, every future update included · macOS 14.2 or later · Apple silicon
Unlimited live captions, for as long as you own the Mac. No minutes to buy, no account, no subscription.