Privacy and data flow

A feature-by-feature account of what stays on your Mac, what leaves it, who receives it, and how to turn each one off.

Topic: Settings, privacy, and plans 6 min read Verified against the current RoughCut app on 7 November 2026 العربية

RoughCut has no servers. Your original video and audio stay where they are and are read in place. On-device transcription, the default, runs entirely on your Mac and uploads nothing. The AI editing pass sends transcript text and word timing to the provider you chose, under your own key, and never your video or audio. Pro Cloud transcription is the one feature that sends audio, and only that job's audio, only to OpenAI, only when you select it for that job. Langfuse tracing is off by default and inert without your own keys. API keys live in the macOS Keychain. Every one of these paths is separate and individually switchable.

On this page

This article describes the released native macOS app. For the optional local ChatGPT/Codex plugin with compatible builds, see the integration privacy notice. The compatible native build is not yet released through the Mac App Store, and the plugin is an OpenAI draft.

The short answer

Your video is never uploaded. Not by the editing pass, not by Cloud transcription, not by anything.

Audio leaves your Mac in exactly one case: you have RoughCut Pro and you explicitly select ✦ Cloud (OpenAI) as the Transcription source for a particular job. On-device transcription is the default and uploads nothing.

Transcript text leaves your Mac when Bad-take removal is on, going directly to the AI provider you chose, under your own API key.

There is no RoughCut server anywhere in these paths. RoughCut does not operate one.

The complete matrix

FeatureDefaultWhat is sentWho receives itBillingHow to disableLocal alternative
Original media—Nothing. Read in place, never copied or re-encoded————
On-device transcriptionOnNothing leaves—None—This is the local path
AI editing passOn when a key existsTranscript text and word timingOpenAI, Google (Gemini) or Anthropic (Claude), your keyYour provider, directlyTurn Bad-take removal offSilence-only cut
Cloud transcriptionOffThat job's audio, 16 kHz mono chunksOpenAI, your keyOpenAI, per audio minuteSelect On-deviceOn-device Whisper
Video goal summarisingOffThe goal text you typedOpenAI, Google (Gemini) or Anthropic (Claude), your keyYour providerDo not click Summarize with AIShorten the goal by hand
Speech model downloadOn first useA request for the model fileHugging FaceNoneImport the file manually insteadImport model file…
Langfuse tracingOffRun metadata and aggregate scoresYour Langfuse projectNoneLeave Langfuse tracing off—
Purchases—Handled by StoreKitAppleApple——
App Store rating requestOccasional, after repeated useNothing from RoughCut; Apple's own rating dialogAppleNone—Help → Rate RoughCut in the App Store… any time

Feature by feature

Your original video and audio

RoughCut reads your files where they are, through file access you grant. It never copies them, never re-encodes them, and never uploads them. The exported FCPXML is a set of cut decisions that references your original file by path. This is why moving the file after export breaks the link in Final Cut Pro.

On-device transcription — the default

Audio is extracted locally, transcribed locally with Whisper using Metal acceleration, and the transcript stays on your Mac. Nothing is uploaded and no API is billed. This requires the one-time speech model download.

The AI editing pass

When Bad-take removal is on, RoughCut sends the transcript text and word timing context directly to the provider you selected — OpenAI, Google for Gemini, or Anthropic for Claude — using your own API key. No video. No audio. No files.

If you turn Bad-take removal off, no key is needed and nothing at all is sent — RoughCut still removes silences using on-device analysis. See Bad-take removal.

Cloud transcription — the one audio path

This is a Pro feature, chosen per job, and it is the only feature that sends audio anywhere.

When you select ✦ Cloud (OpenAI) for a job, RoughCut uploads that job's audio to OpenAI's transcription endpoint under your own key. The audio is converted to 16 kHz mono and split into chunks whose boundaries land in detected silences, so a chunk never breaks mid-sentence. Your video is not uploaded — only the audio.

The picker states this on screen before you choose it. Every other job on your Mac remains on-device unless you select Cloud for it too. See On-device and Cloud transcription.

Langfuse tracing

Off by default and completely inert unless you turn the toggle on and supply both your own Langfuse project keys. When enabled, it sends run metadata — run identifier, mode, clip counts, outcome — and aggregate scores to your own Langfuse project. It does not send media, transcript text, or API keys.

If you are privacy-sensitive, leave it off. It is not needed for any editing feature. In the App Store build there is no way to enter the two keys it requires — those fields sit in the development-only Evals group — and the evaluation runs that emit traces cannot be started there either, so this path is unreachable. See Connect Langfuse tracing.

Where secrets live

API keys are stored in the macOS Keychain, encrypted by the system. They are never written into RoughCut's configuration file — secrets are explicitly stripped before that file is saved — and never included in an exported configuration. Each key is sent only to the provider it belongs to: OpenAI, Google or Anthropic.

In the App Store build three keys can be stored: your OpenAI key, your Gemini key and your Claude key. The schema also has Langfuse public and secret key fields, but they sit in the development-only Evals group.

The RoughCut welcome tour page Keep your key safe, explaining that the key stays in the macOS Keychain and is sent only to OpenAI, Google or Anthropic.
The welcome tour's key-safety page. RoughCut has no server between your Mac and your provider.

Purchases

Purchases and entitlements go through Apple's StoreKit. RoughCut does not see or store payment details.

After you have exported a few jobs over at least a week, RoughCut may occasionally ask the system to show Apple's rating request — at most once per version, and never more often than Apple's own limits allow. The dialog is Apple's; RoughCut sends nothing, and it never learns whether you rated it or what you wrote. Only a local record of when it last asked is kept. Help → Rate RoughCut in the App Store… opens the App Store review page directly, any time.

The website

This website uses its own separately disclosed analytics, described in the Privacy Policy and controllable through Privacy Choices. Website analytics are unrelated to what happens inside the app — the app sends no telemetry to us at all.

Accepting the Terms, buying the app, or entering an API key is not consent to send data to a third-party AI provider. Each cloud feature is opted into separately, at the point of use:

  • The AI editing pass runs only when Bad-take removal is on and a key exists.
  • Cloud transcription runs only for a job where you selected it.
  • Langfuse runs only when you enable it and supply keys.

Common mistakes

  • Believing the absolute claim. "Nothing ever leaves your Mac" is not accurate once you enable an AI feature. The accurate statement is that each path is separate, opt-in, and visible.
  • Confusing the editing provider with the transcription source. Choosing Gemini or Claude for editing does not affect how audio is transcribed.
  • Assuming Pro means cloud. Pro includes local features too, such as Smart Silence. Buying Pro does not send anything anywhere by itself.
  • Sharing a Debug Bundle without checking it. It contains your transcript and cut decisions. Review it before attaching it to a support message.

The governing documents

This page explains behaviour. The Privacy Policy, Privacy Choices, and Terms of Use are the governing legal texts, and where they and this page differ, the legal pages govern. The app licence itself is covered by Apple's Standard EULA, with the RoughCut Terms as supplemental product terms.

Still stuck?

Contact support

Was this page helpful?