← Back to Set My Flow

Privacy Policy

Last updated: July 2026

1. What We Collect

Set My Flow is local-first. Your tasks, focus preferences, site classifications, and settings live on your device (localStorage and chrome.storage). The app works fully without an account. The sections below describe the optional situations where data leaves your device.

1a. Optional Account

Creating an account is optional. If you sign in (magic link or OAuth), we store only the minimum identity needed to run your account: email or OAuth subject ID, session tokens, Pro subscription status, and sync connection metadata (provider name and last sync time — not file contents). We do not store your tasks, workspaces, notes, or encryption passphrase on our servers. Signing out clears the session only; it does not delete local data.

2. AI Features (Opt-in)

AI is controlled per workspace under Setup → AI & Privacy. Choose Default, Local, or Off.

  • Default — runs in cloud with a zero data retention policy. Prompts are never used for training. Typical inputs include task or note text you ask about, and similar workspace context needed for that request.
  • Local — runs offline in your browser after a one-time download. Slower, but data never leaves your device. Requires WebGPU.
  • Off — AI is completely off; features fall back to fully local behavior with no model calls.

No account information, name, email, or browsing history is included in AI requests.

3. Cloud Sync (Optional)

Cloud sync is opt-in and requires an account so devices can stay linked. Sync uploads go to your cloud storage (Google Drive and similar — not our servers). Data is encrypted on your device with AES-256-GCM using a passphrase you choose; we never receive that passphrase and cannot read your synced content. Search history and billing data are never included in the sync blob. If you lose your passphrase, we cannot recover your encrypted cloud copy — keep a local export from Settings. Sync is disabled by default.

4. Favicon Service

To display website icons, Set My Flow uses a self-hosted favicon proxy. Your browser only ever requests icons from our servers. On a cache miss we may fetch the icon once via Google's favicon API (Google sees our server IP and the domain, not yours), then store it in our own storage and serve later requests from that cache so Google is not contacted again for the same site.

5. Wallpapers (Optional)

Bundled scene wallpapers and ambient audio are served from our own site (same origin as the app). Custom uploads stay on your device unless you sync them through your own backup. Solid colours involve no extra network requests.

6. Weather (Optional)

If you enable weather, you enter a city name in settings. That name is stored only on your device. Your browser sends it directly to Open-Meteo (an open-source, no-account weather API) to look up the forecast. We never collect GPS or device location, and our servers never see your city.

7. Browser Extension Permissions

The Set My Flow browser extension requests the following permissions:

  • tabs — to detect the current page domain for site classification and tab snoozing.
  • activeTab — to interact with the currently active tab when you use quick actions from the extension popup.
  • storage — to save your tasks, rules, and preferences locally.
  • contextMenus — to let you create tasks from right-click context menus.
  • alarms — to reopen saved tabs at their scheduled time.
  • scripting — to inject the content script that bridges communication between the webapp and extension.
  • system.display — to detect screen dimensions for split-view window positioning.
  • declarativeNetRequest — to redirect navigations to sites you have classified as distractions to an in-extension enforcement page, preventing the distraction site from loading. No browsing data is sent externally; the redirect target is a local extension page.
  • webNavigation — to detect single-page-application navigations so that site blocking rules apply even when a site changes its URL without a full page load.
  • notifications — to surface saved-tab reminders and focus-mode alerts.

No data from these permissions is transmitted to any external server. When a site is blocked, your browser is redirected to a page bundled inside the extension — the distraction site never loads and no request is made to it.

8. Rate Limiting & Server Logs

When you use features that make server-side requests (AI enrichment, search, wallpapers), our API server temporarily stores your IP address in memory to enforce rate limits (e.g. 60 requests per minute). This data is never written to disk or shared with third parties, and is automatically cleared when the rate-limit window expires (typically within 1 minute).

9. Data Deletion

You can delete all your data at any time from the Settings page (Menu → Contexts → Data Management). Uninstalling the extension removes all extension-stored data. Clearing browser data removes all webapp-stored data.

10. Contact

If you have questions about this privacy policy, please contact us at support@setmyflow.com.