The short version

DiffCue has no analytics, no telemetry, and no crash reporting. It doesn't watch what you do in the app, and it doesn't phone home. Your git changes are read straight off your own disk and never uploaded anywhere by the app itself. If you turn on an AI feature, your diff text goes directly from your machine to the AI provider you configured, using your own API key, which never touches DiffCue's servers. The only data DiffCue's backend ever sees is what's needed to sell and validate a license: your email, a Stripe payment reference, the license key itself, and the devices it's activated on.

The app: zero analytics

DiffCue contains no analytics SDK, no telemetry, and no crash reporter of any kind. This isn't a configuration you can disable — it's not built into the app. Nothing about how you use DiffCue, which files you open, which hunks you view, or how often you launch it is measured, logged, or sent anywhere.

Your code and your git repository

Git operations happen entirely on your machine, against whatever local folder you point DiffCue at. The app reads your working tree, staged changes, and untracked files directly off disk to build the diff view. DiffCue never uploads your repository, your files, or your diffs to any server it controls, and it never transmits them anywhere on its own initiative.

AI features: opt-in and bring-your-own-key

AI explanations and chat are entirely optional. To use them, you provide your own API key for a provider you choose — OpenAI, OpenRouter, or a custom OpenAI-compatible endpoint — in Settings. That key is stored in the macOS Keychain and is never transmitted to DiffCue's own servers.

When you use an AI feature, the relevant diff text is sent directly from your machine to the AI provider you configured, using your key. That exchange is governed by your chosen provider's own privacy policy and terms, not DiffCue's. DiffCue has no visibility into, and does not log, the content of those requests or responses.

The free-trial counter

DiffCue includes 50 free AI actions before a purchase is required. That count is tracked entirely on-device, in local UserDefaults, and is never reported to DiffCue or anyone else.

Purchases

Purchases are processed by Stripe. DiffCue never receives or stores your card details. When a purchase succeeds, Stripe notifies DiffCue's backend — a Cloudflare Worker running at license.diffcue.com — of the buyer's email address and a payment reference. The backend then generates a license key, stores it, and emails it to you via Resend.

License activation

When you activate your license in the app, DiffCue generates a random device identifier on your machine — it isn't derived from your name, hardware serial, or any other real-world identity — and registers it against your license key. Activation is capped at a small number of devices per license, and the backend periodically checks in to confirm the license is still valid.

What the backend stores

This is the complete list of what DiffCue's backend (Cloudflare D1) stores. Nothing beyond this is collected:

  • License key — the key generated at purchase.
  • Email address — the buyer's email, from Stripe.
  • Stripe payment reference — so a license can be tied back to its purchase.
  • Per-device activation records — a device identifier plus its activation and last-seen timestamps, for each device a license has been activated on.

Contact

Questions about this policy or your data can go to support@diffcue.com.