Privacy

Last updated April 22, 2026

What Ghost observes

Ghost uses macOS accessibility APIs to see which app you're using, when you switch, and how long you stay. It also reads window titles, browser URLs, and on-screen text visible through accessibility.

Ghost does not take screenshots, record keystrokes, capture audio or video, or monitor network traffic. It only detects whether your keyboard is active, never what you type.

Sensitive patterns are redacted before storage

Before on-screen text is written to disk, Ghost runs it through pattern-based redaction for emails, passwords, API keys, phone numbers, credit card numbers, social security numbers, JWT tokens, and URL query parameters. Redaction is a best-effort defense. No system catches everything, but it runs on every capture. If something slips through, the data tools in Settings let you inspect exactly what was captured and delete anything you don't want kept.

Everything stays on your Mac

All focus data is stored in a folder on your computer. Ghost does not sync your sessions, Recaps, or activity to the cloud.

Sessions, Recaps, and learned focus patterns are kept until you delete them. Raw screen-text snapshots, used to generate Recaps and rollups, are deleted after 30 days. Raw activity logs are size-capped at roughly 2.5 GB; oldest files are removed first.

You can delete all Ghost data at any time from Settings, or by deleting the .ghost folder in your home directory.

What leaves your Mac

Ghost makes a small number of network requests by default:

  • Update checks. Once a day, Ghost asks updates.ghost.fitness whether a new version is available. The request includes your app version and a randomly-generated install ID; it does not include any personal information.
  • AI features (optional). If you enable Recap or Reflect, redacted session context is sent through Ghost's server, which routes it to the model provider on your behalf. Ghost selects the model. This only happens when you explicitly request a Recap or Reflect.
  • Telemetry (when signed in, opt-out). Anonymous feature-usage events and aggregate counts (number of sessions, total focus duration) so we can see what people actually use. No window titles, app names, URLs, on-screen text, or keystrokes. You can turn it off in Settings.
  • Sign in with Apple (if you use it). Apple gives Ghost your name and an email relay address. We store these to identify your account.
  • Stripe (paid plans). If you subscribe, payment information is collected directly by Stripe. Ghost never sees your card number. Stripe sends us your subscription status and billing email so we can keep your account in good standing.

You're in control

You can disable content snapshots, disable all AI features, opt out of telemetry, and delete all your data. All from Settings. Ghost includes debug views where you can inspect exactly what was captured and what was sent to AI.

You can request access to or deletion of any account data we hold (subscription, telemetry, account email) by emailing hello@ghost.fitness. We'll respond within 30 days.

Children

Ghost is not directed to children under 13 (or 16 in the EU). We don't knowingly collect data from anyone in those age groups. If you believe a child has given us data, email us and we'll delete it.

About this website

This page is about the Ghost app. The website itself (ghost.fitness) is separate and collects a small amount of data to help us understand what's working.

We use Vercel Analytics for page views. It doesn't set tracking cookies or collect personal information. When you click the download button, we record the button position, your platform (Mac / mobile / other), viewport size, timezone, scroll depth, country, and a one-way hash of your IP + browser. This lets us count unique clicks without storing your IP. If you join the waitlist, your email is stored alongside the same context.

None of this leaves our own infrastructure. We never sell it, never share it with ad networks, and delete analytics older than one year.

If we send you an email, clicks on links in that email are logged. We use that to see whether the links we send you are useful. We don't track whether you opened the email itself.

If you joined the waitlist and want to stop receiving emails, every email we send has an unsubscribe link in the footer. If you'd rather be removed from our records entirely, email us at hello@ghost.fitness and we'll delete your data.

Changes to this policy

When we change this policy in a material way, we'll update the date at the top and, if you have an account, send you an email.

Questions? hello@ghost.fitness