Private Captions
← Back to Private Captions

Privacy Policy

Nothing about what you watch leaves your Mac.

Private Captions generates live, translated captions for whatever's playing on your Mac. This page explains, in full, what that requires and what it doesn't — there's no shorter version hiding behind it.

Effective September 29, 2026 Applies to Private Captions for macOS, all versions Contact contact@pinenode.com
01

Summary

Private Captions has no server, no user account, and no analytics. Every model, every transcription, and every translation runs on your Mac. Speech models are downloaded from Hugging Face's public model repository. Apple's services handle translation language downloads and App Store subscription purchases and validation. Your captured audio and captions are not uploaded by Private Captions. We could not see what you've captioned even if we wanted to.

The rest of this document is the detail behind that sentence.

02

What Private Captions does

Private Captions reads audio from a source you pick, then transcribes it, translates it into your chosen subtitle language, and displays both as a floating caption overlay. Two kinds of source are available:

Private Captions cannot capture from either source without the corresponding explicit, revocable macOS permission, and it does not access your camera under any circumstance.

If you use a call-audio source (FaceTime, Zoom, Teams, or a phone call via iPhone Mirroring), you are transcribing and, if History is on, storing the other participant's speech locally on your Mac — and if the optional Save Audio setting is also on, an actual audio recording of that call, not just its transcript. That's between you and the people you talk to — consider letting them know, and be aware that many places legally require every participant's consent to record or transcribe a call. Private Captions shows a confirmation before Save Audio can be turned on for exactly this reason.

03

Audio & speech recognition

Captured audio — from either source — is held in memory just long enough to transcribe it, then discarded, unless you turn on the optional Save Audio setting (see "What's stored, and where" below), in which case the original spoken-language audio behind each caption is written to a local file instead. Either way, Private Captions never transmits audio anywhere. Transcription runs on Whisper: an open-source Core ML speech model that runs entirely on your Mac via Apple Silicon's Neural Engine. The model file itself (not your audio) is downloaded once from Hugging Face's public repository and then reused from disk on every later launch — no further network access.

04

Translation

Subtitle translation uses Apple's built-in Translation framework. Per Apple's own documentation, translation runs on-device once the relevant language pair is downloaded; Apple may log operational metadata such as which language pair was requested, but Private Captions never sends the caption text itself anywhere outside Apple's on-device translation pipeline. See Apple's Privacy Policy for how Apple's own frameworks handle this.

05

What's stored, and where

Everything Private Captions keeps stays in your Mac's local, sandboxed app storage — never in iCloud, never synced, never uploaded:

Use Clear All in History to delete saved transcripts and recordings before uninstalling. Removing the app alone may leave local app data on your Mac.

06

Network access

Network access is used to download Whisper speech models from Hugging Face. Apple also provides translation language downloads and App Store subscription services. These services may require an internet connection; caption audio and text are processed locally. Private Captions does not operate a server or send analytics or diagnostic reports to its developer.

07

What we don't collect

To be explicit, Private Captions has no mechanism to collect any of the following, because it has nowhere to send them even if it tried:

08

Your controls

You can turn history off entirely with the Save History toggle before starting captions. The separate Save Audio toggle (only shown when Save History is on) is off by default and requires confirming a one-time consent notice each time you turn it on. Existing sessions can be renamed, deleted individually, or cleared all at once from the History tab — deleting a session or clearing History also deletes any audio files saved for it. Screen & System Audio Recording, Microphone, and any other system permission can be revoked at any time in System Settings → Privacy & Security.

09

Children's privacy

Private Captions is not directed at children and does not knowingly collect information from anyone, of any age — there is simply no collection mechanism to distinguish between users in the first place.

10

Changes to this policy

If Private Captions' data handling ever changes, this page will be updated and the effective date above will change accordingly. Material changes will also be noted in the app's release notes.

11

Contact

Questions about this policy or how Private Captions handles data can go to contact@pinenode.com.