Privacy Policy
Last updated: June 2, 2026 (rev. 3)
GemTimer ("we", "us", or "the app") is a minimalist focus timer for deep work. We are committed to protecting your privacy and being transparent about how we handle your data.
What Data We Collect
We collect the minimum data necessary to provide the app's functionality:
- Account information: If you sign in, Clerk provides us with your email address and name. If you sign in with an OAuth provider (such as Google), Clerk may share additional identity data from that provider; we only use the fields displayed to you in the app.
- Session and activity data: When you use the timer, we store session duration, session name, work type (Deep Work or Sustaining), and timestamp in our Supabase database. Active timer state (elapsed seconds, work type, Pomodoro state) is also stored to enable cross-device sync. Activity names you choose to hide are saved per account.
- Preferences and local state: Your selected language, quote theme, screen-wake preference, "Jeremy's Carve Outs" position, and (for unauthenticated users) your session history are stored in your browser's localStorage. Once you sign in, sessions also sync to Supabase.
- Aggregate analytics: We use Cloudflare Insights to collect privacy-friendly, aggregate usage metrics (page views, performance). It does not use cookies or fingerprint individual users.
How We Use Your Data
Your data is used solely to provide the app's core functionality:
- Displaying your focus session history and statistics
- Syncing your session data and active timer across devices (when signed in)
- Remembering your preferences (language, quote theme, screen-wake, etc.)
- Understanding aggregate, anonymized usage to improve the app
We do not sell or share your data, and we do not use it for advertising.
Data Storage
- Browser localStorage: Preferences and local app state are stored in your browser. This data never leaves your device unless you sign in and sync to Supabase. Keys include
et_sessions,et_language,et_quote_theme,et_hidden_names,et_carveout_index,et_screen_on, andgemtimer_sessions. - Supabase (cloud): If you sign in, your session history, active timer state, and hidden activity names are stored in a Supabase-hosted PostgreSQL database. Your data is associated with your user ID and is only accessible to you (enforced via row-level security).
- Clerk (authentication): Account authentication is handled by Clerk. Please refer to Clerk's Privacy Policy for details on how they handle authentication data.
Data Retention & Deletion
You can delete individual sessions from the app at any time. If you wish to delete all your data, you can:
- Clear your browser's localStorage to remove local data
- Contact us to request deletion of your cloud-stored data and Clerk account
Cookies
GemTimer does not set cookies directly. Clerk authentication uses cookies for session management when you sign in. Cloudflare Insights is cookieless. We do not use tracking or advertising cookies.
Third-Party Services
- Clerk — authentication (privacy policy)
- Supabase — data storage (privacy policy)
- Vercel — hosting and serverless functions (privacy policy)
- Cloudflare — DNS, CDN, and privacy-friendly analytics via Cloudflare Insights (privacy policy)
- jsDelivr — CDN that delivers the Supabase JS SDK to your browser (privacy policy)
Children's Privacy
GemTimer is not directed at children under 13. We do not knowingly collect personal information from children.
Changes to This Policy
We may update this privacy policy from time to time. Changes will be reflected on this page with an updated "Last updated" date.
Contact
If you have questions about this privacy policy or want to request data deletion, please contact us at jeremy@gemka.co.
← Back to GemTimer