Skip to content

Privacy & Data Boundaries

drifty is local-first: the tracker and the complete activity timeline live on your computer. Any cloud use is a separate, narrow feature that you turn on.

  • Local SQLite database: Installed builds store captured activity in ~/Library/Application Support/so.drifty.mac/tracker.sqlite3.
  • Local source of truth: The timeline is read from that local database. It is not published to a profile, leaderboard, team, or analytics surface.
  • Explicit exceptions: AI classification can send selected, minimized fields to the provider you choose. The paid device-sync feature can copy raw segments into your private, account-scoped sync storage when you enable it on a device.

When AI classification runs, its request is built from a reduced set of fields rather than a screen recording or raw timeline row. App name, site domain, and duration are required. Page address, window title, content context, and work profile are optional controls in Drifty’s AI privacy settings.

Your own definitions travel too. A description you write in the category editor goes with each request, with its custom name, and so do the names and descriptions of categories you add, so the model can follow your boundaries. Project matching sends your project names and descriptions. Remove a description to stop sending it; with Local AI, none of these requests leave your computer.

A typical minimized item could contain:

  • appName: Visual Studio Code
  • domain: github.com
  • windowTitle: Pull request · drifty
  • durationSeconds: 180
Route Where inference runs Data leaves device? Quota / Cost
Drifty Cloud Drifty-hosted provider route Selected minimized fields Uses the quota shown in the app
Local AI Managed model on this device No classification request leaves the device No provider fee; download and memory depend on the model
OpenRouter BYOK Your OpenRouter account Selected minimized fields Billed to your API key
OpenAI or Anthropic key Your OpenAI or Anthropic account Selected minimized fields, sent only to that provider Billed to your API key
Custom Endpoint The endpoint URL you configure Sent to that endpoint Set by the endpoint operator

If you opt in, Drifty publishes only the public profile fields you choose and aggregate focus totals. It does not publish the apps, sites, window titles, categories, or sessions behind those totals.

Device sync is off by default. Enable it in Settings → Sync (Settings → Account in earlier versions) on each computer with Pro, an active trial, or a Team plan seat. It copies raw activity segments to your account-only cloud storage so you can view activity across up to three Macs and Windows PCs. It also keeps your category settings the same on each computer: category and productivity names, colors, and descriptions, the categories and productivity levels you add, and their order. Your projects (names, descriptions, colors, and keywords) and your app and site rules stay the same on each computer too; which records belong to a project is worked out on each computer. These records are not used for public profiles, leaderboards, teams, or other shared surfaces.

Pausing sync stops updates without deleting the cloud copy. After all trial, Pro subscription, and Team plan seat access ends, drifty keeps the cloud copy for 60 days and then deletes it. Restoring access during that period cancels the deletion. You can delete the cloud copy immediately from Settings → Sync even after access expires; local activity stays on each computer.

All-device summaries count overlapping elapsed time once. Simultaneous devices share app and classification time so the breakdown matches the total; this allocation does not claim which device had your attention. Original records and each device’s view remain intact.