Updated 29 SeptemberThe translation read aloud, and VoiceOver supportThe translation read aloud

Live captions for anything your Mac plays.

Calls, videos, podcasts, and lectures, transcribed as they play and drawn in an overlay that stays above every window. Translated live if you want it. Nothing leaves the Mac.

  • Free for 7 days, no card, no account
  • $19 once, every update included
  • 14-day refund, no questions asked
  • Download for macOS 14.2 or later, Apple silicon
  • Rated 5.0 on Gumroad

Hold ⇧ and drag the captions to move them, as you would in the app.

Point at the captions and they dissolve under you, as they do in the app.

Hold ⌥ to rewind, and the last few boxes stack back up.

Click in the menu bar: items marked Try all work in this demo.

Use cases

Built for the moment you lose the thread

In a meeting, second language or not, one missed word costs you the next three. Subtitles captions whatever your Mac is playing, in real time, so you keep up without asking anyone to repeat themselves. Hold ⌥ to rewind and search through past captions. Whether you are deaf or hard of hearing, hearing but not following, listening in a second language, or just working somewhere loud, three situations come up again and again.

02

Working while you listen

Switch to your notes, your code editor, AI agent, or a browser. The overlay stays above every window and lets clicks through, so the conversation carries on without you watching it, and you can keep working and interacting on what's behind. A notepad like Granola writes the meeting up afterwards, and its live transcript has to be hovered to show; this is the half that has to happen live, without you thinking or focusing on it.

03

Videos, podcasts and lectures

A video with no captions. A podcast in a language you're still learning. A recorded or a streaming lecture, an interview, a film with quiet dialogue. Anything that plays is captioned as it plays, in its own language or translated into yours. Subtitles can also read the microphone if you ask it to, so you can hold conversations, in two languages, or in one.

Privacy

Nothing leaves the Mac. Nothing for IT to review.

The reason you can point this at a work call is that it is not a service. There is no server, no account, and no transcript unless you save one on your own Mac, so there is nothing to send and nobody else in the loop. The long version is there for you to read if you want to know more. The source is published, so none of it has to be taken on trust.

  • No bot joins the call. It captures the audio your Mac is already playing, so nothing appears in the participant list and nobody is told anything is running, because it never records the call. Most of this category sends a visible participant instead, which plenty of companies disallow outright.
  • Nothing is recorded, and nothing is written to disk unless you ask. Audio goes straight to the speech model and is discarded on the spot. Captions are on screen and then they are gone; the boxes you rewind to with ⌥ are held in memory for as long as you set, and never past quitting the app. The one file it will ever write is a transcript you choose to save, where you choose to save it.
  • The microphone opens only when you choose it. By default it hears what your Mac plays. Pick the microphone in Listen To and macOS asks permission, once, the first time; what it hears is read on the Mac and discarded like everything else, so nothing you say goes anywhere either way.
  • No account, no telemetry, no network. Nothing to sign into and no usage reported anywhere. The models download once, and after that the only request left is a daily check for a newer version, which it asks you about first: turn the Wi-Fi off, and it keeps captioning.

Features

Built around three constraints

Live audio can't be paused, can't be re-run, and shouldn't have to leave your machine. Everything here follows from that.

Nothing leaves the Mac

It runs locally and offline: no accounts, no telemetry, no network call carrying anything of yours. Audio goes from the tap straight into the recognizer and is discarded. The only things ever downloaded are the models, once, and an update when you choose one.

Neural Engine, not CPU

Roughly 0.15 real-time factor: six seconds of speech transcribed per second of compute. The same model on the CPU measured about 100× too slow to keep up with a live stream.

Every app, or just one

It listens to everything your Mac plays by default, so there is nothing to configure before it works. Narrow it to a single app from the menu bar when two things are talking at once. It captures that app plus every helper process it spawns, which is what makes browsers and Electron apps work, where audio never comes from the main process.

Music doesn't become lyrics

A voice detector runs ahead of the recognizer, so backing tracks never reach it. Without it, music fills the model's context and the first words after it are lost.

A new box per speaker

Optionally start a fresh subtitle when someone else starts talking, the same way a pause does. Off by default: it runs a second model alongside the first. It takes a second or two before a new speaker is recognized.

Sixteen languages

The default model detects the language itself. English gets seven dedicated options on top, so you can trade latency against accuracy from 160 ms upward.

Hear the translation

Speak Translation reads each translated sentence aloud in the language's own voice, while the app it came from drops to a quarter of its volume. It turns itself on with VoiceOver, which can read the caption box too; VoiceOver's own speech is never captioned.

A hole where you point

Move the pointer near the overlay, and it fades away underneath it, so the sentence you are reading never covers the sentence you are writing. How much of it goes and how wide the hole reaches are both yours to choose in settings. Hold ⇧ to keep it solid and reposition.

Hold ⌥ to rewind what you missed

The app pages like broadcast subtitles: it fills, clears and starts again, so a line you glanced away from is gone. Hold ⌥ to rewind: the previous captions stack back up above the live one, scrollable for the older ones and searchable with ⌥F. Let go and they are gone again. Nothing is written anywhere.

Settings you can preview live

⌘, from the menu opens settings: how many lines a box fills before it clears, how solid it is, how far the pointer reveal reaches, how far back the ⌥ rewind goes. Every slider applies to both the preview and the live overlay as you drag it, so you set these by watching them rather than by picking a number.

The sixteen languages the app captions, and translates between

  • English English
  • Español Spanish
  • Français French
  • Italiano Italian
  • Português Portuguese
  • Deutsch German
  • Nederlands Dutch
  • Türkçe Turkish
  • Русский Russian
  • العربية Arabic
  • हिन्दी Hindi
  • 日本語 Japanese
  • 한국어 Korean
  • Tiếng Việt Vietnamese
  • Українська Ukrainian
  • 中文(普通话) Mandarin

How it works

From the app's audio to your screen, in four steps

A realtime audio thread that only ever copies, a portable core that never transcribes, and a model running where it belongs.

  1. 1

    Core Audio process tap

    48 kHz stereo, a callback every 10.7 ms. The realtime thread copies into a lock-free ring buffer and does nothing else.

  2. 2

    Resample and gate

    Down to 16 kHz mono on a worker thread, silence skipped, with about a second replayed ahead of speech so no word starts cold.

  3. 3

    Parakeet on the Neural Engine

    A streaming model, not a 30-second-window one: the difference between captions that track the audio and captions that arrive seconds late.

  4. 4

    Overlay

    Two-line pages, configurable in settings, that clear and restart the way broadcast subtitles do, fading four seconds after the last new text rather than after the audio stops.

Everything from the ring buffer to the model boundary is portable Rust that deliberately doesn't transcribe: it hands out frames. The tap and the overlay are the only Mac-specific parts.

Compare

Why not Apple's Live Captions?

macOS has live captions built in, free, under System Settings, Accessibility, Live Captions, on an Apple silicon Mac set to a language Apple has enabled: English alone on macOS 14 and 15, eight languages from 26. If that covers what you need, use it. These are the places it stopped covering mine, and there is a row-by-row comparison if you want the long version.

Feature Subtitles Apple Live Captions
Languages Sixteen, on every macOS from 14.2, automatically detected by the multilingual model, switched from the menu bar, translated live between any pair English only on macOS 14 and 15; eight languages from 26, each tied to a country, one at a time, manually switched in System Settings, and no translation
The overlay Click-through, fades under the pointer, stays above every window, never gets in the way of multitasking A window that stays on top too, but takes the click and covers what is under it
What it listens to Everything the Mac plays, the microphone if you ask, or one app of your choosing Everything the Mac plays, or the microphone
Music Skipped by a voice detector, so a backing track never becomes lyrics Captioned
Speaker changes Optional new box per speaker No equivalent
Past captions Every past caption, in a list that takes the available space, scrollable and searchable with ⌥F Three lines that scroll, can't see more than three lines at once
The model Seven English options trading latency against accuracy, plus the multilingual one. Multilingual can be pinned to a single language if needed One, fixed, and you have to open System Settings and dig through a three-level deep setting to change the language.
Price Free for 7 days, then $19 once, every update included Free, built-in

What people say

Used on real calls

So smooth, very useful during meetings on different apps (slack, zoom, google), so well integrated on the screen, doesn't block interacting with the other windows, love it!
Remi Santos Verified purchase on Gumroad
Almost no setup, no tweaking around: you install it and it just works. Simple, useful and really effective.
Jérôme Blondon Verified purchase on Gumroad
Very handy! I love how it can be connected to any audio source on my laptop, which helps not only for meetings and videocalls, but also for all those streaming services that do not support subtitles, like news websites or even some YouTube videos. The model supports many languages, so it's also useful if you're learning a foreign language and need subtitles to help you understand what's being said.
Bruno Verified purchase on Gumroad
Awesome app and the translation support makes it even better. Working with French colleagues has never been easier. Highly recommend!
Stef Kors Verified purchase on Gumroad
Definitely a game changer for me! A must have for remote workers
Kai Cotias Verified purchase on Gumroad
Much better than macOS live captions. I love how fluid the UX is, the searchable history when pressing option and all the shortcuts are really well thought, you can feel the author really cares about nailing all the details for a useful live caption app. The gorgeous audio glow is chef's kiss
Johnathan Verified purchase on Gumroad
5.0

Average rating on Gumroad

14-day refund, no questions asked

Buy for $19

Why this exists

I work at an American company, and my meetings are in English, which is not my first language and not most of my colleagues’ either. I would be halfway through something else when the part that mattered was said, and it would be gone: a word I did not catch, an accent I was not used to, or something that was said a minute before. Asking for it again costs everyone thirty seconds and interrupts whoever was speaking.

So the captions had to stay readable while I was doing something else. That is why they are an overlay above every window rather than a panel inside one app, why they take no clicks, why there is a searchable rewind stack, and why they fade under the pointer instead of needing to be moved. Everything else came from that.

Mathieu Jouhet, who makes it.

Pricing

One price. Nothing recurring.

Try it free for 7 days first, with no card and no account. Then $19, once: no minutes to buy, no seats, no renewal, every future update included, for about the price of one month of a transcription subscription.

Translation is in the price, not above it. The sixteen languages, the live translation between any two of them, and the streaming model come with the one license; there is no second tier to unlock. All future updates included.

  • Checkout is handled by Gumroad. VAT, receipts, and refunds are handled there, and the license key arrives through them too.
  • Signed and notarized, so the permissions you grant survive every update.
  • Source published. Read it, or build it yourself.
  • Buying for a team? Write to me and I will set up a pack of license keys.

Subtitles for Mac

$19 one-time

  • Free for 7 days first, no key needed
  • Unlimited captions, for as long as you like
  • Every future update included
  • Sixteen languages and live translation
  • One license key for every Mac you use. No account, no subscription, no telemetry
  • 14-day refund, no questions asked

One-time $19 · macOS 14.2 or later · Apple silicon
About 633 MB downloaded on first launch.

FAQ

Questions people ask first

Does it work with Zoom, Teams, and Google Meet?
Yes. It taps the audio an app plays rather than integrating with any one service, so a Zoom window, a Slack huddle and a call in a browser tab all caption the same way. Browsers and Electron apps included: it captures the helper processes those spawn, which is where their audio actually comes from.
Which languages does the app caption?
Sixteen: English, Spanish, French, Italian, Portuguese, German, Dutch, Turkish, Russian, Arabic, Hindi, Japanese, Korean, Vietnamese, Ukrainian and Mandarin. The app detects which one is being spoken, or you can name the language in the menu to stop the guessing. The list is the same on every supported macOS version, with no country or region condition, and from macOS 15 any of them translates into any other.
Can it translate what it hears?
Yes, since 1.3. Translate To in the menu takes any of the sixteen languages into any of the other fifteen, through Apple's on-device translator, so a translated caption never leaves the machine, just like an untranslated one never does. It is off until you pick a target, and holding ⌃ shows the original language underneath while it runs. You can also show both the translation and the source in the overlay at the same time, and Speak Translation, the row below Translate To, reads the translation aloud, with the original turned down underneath. It needs macOS 15; captioning alone still runs on 14.2.
Does it work with VoiceOver?
Yes. VoiceOver reads the caption box and presses its button, and Speak Translation, on by default whenever VoiceOver is running, reads the translation aloud, so a call or a film in another language can be followed by ear. What the app asks you, such as whether to save a transcript, is spoken as it appears, and VoiceOver's own speech is never captioned or translated.
Doesn't an overlay get in the way?
It takes no clicks at all, so you work straight through it, and it fades away under the pointer so you can read and interact with what is beneath it. How much it fades, how far that reaches, how solid the box is, and how many lines it holds are all settings. Hold ⇧ to keep it solid and drag it somewhere else; wherever you put it on your screen is remembered.
Does it caption my own voice?
Not unless you choose the microphone in Listen To. By default, it hears what your Mac plays, so on a call you read the other people, not yourself. With the microphone chosen, it captions the room instead, macOS asks for the permission for it the first time, and with Show Both Languages on under Translate To, two people can talk in two languages, with each reading their own.
Does it need an internet connection?
Once, to fetch the model on first run, about 633 MB. After that it runs entirely offline. The only other requests it can make are a daily check for a newer version, which it asks permission for first and which you can decline, and a license check from time to time.
Can I save or export a transcript?
Yes, when you ask. After a minute or more of speech, the caption box offers to save the session when the audio stops, or before a long enough silence clears the rewind history, and Save Transcript… in the menu saves it at any time, as plain text, Markdown or SRT subtitles; nothing is written to disk otherwise. While the app is running, holding ⌥ rewinds through the finished boxes and ⌥F searches them, for finding the line you looked away from. If you need notes or a summary of a conversation, this is the wrong tool; it was designed as complementary to note-taking apps.
Does IT have to approve it?
There is no vendor here to approve: no account, no server, no transcript leaving the Mac, and nothing joining the call as a participant, so nobody in the meeting is being recorded by anything. It is one signed, notarized app on one machine, and after the model downloads once, the only requests it can make are a version check you can switch off, and a license check. Whether that clears your own policy is your call, but there is no third party in it to review.
Does it work with headphones or AirPods?
Yes. It captures the audio an app produces, not the sound coming out of a speaker, so what you listen on makes no difference.
Will it slow my Mac down?
Transcription runs on the Neural Engine rather than the CPU, at roughly a 0.15 real-time factor, or six seconds of speech per second of compute. The same model on the CPU measured about 100× too slow to keep up.
Which Macs does it run on?
Apple silicon, macOS 14.2 or later. The version floor is Core Audio process taps, which is the API the whole thing is built on. Translations run from macOS 15 upward.
Is it real-time?
Yes. The model is a streaming ASR model, so a caption appears while the sentence is still being said rather than after it ends. It reads the system audio an app plays, with no loopback driver to install, and the English options allow you to trade latency against accuracy from 160 ms upward. If you searched for speech to text or real-time transcription for the Mac, this is that, drawn on screen as it plays, rather than saved to a file.
Is it a subscription?
No. The download is a free seven-day trial. A license key is $19 once, every future update included, no account to create and no minutes to buy; it covers every Mac you use, and the app checks it with Gumroad about once a month, sending the key and nothing about you. If it is not for you, there is a 14-day refund.
Can I see the source?
Yes. It is published under FSL-1.1-ALv2, which becomes Apache 2.0 two years after each release. Read it, or build it yourself, at github.com/daformat/subtitles.

Captions for anything, without sending audio anywhere.

14-day refund, no questions asked

Free for 7 days, no card, then $19 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. Read the setup guide.