Last updated 16 September 2026
Cookies and browser storage
TrainTwice sets no advertising or tracking cookies, and our analytics run without cookies, so there is no consent banner to click through. This page lists exactly what does live in your browser.
2. Local storage
The app keeps working data in your browser's localStorage so it opens instantly and survives a closed tab. None of it is readable by other sites.
| Key | Purpose |
|---|---|
sb-…-auth-token | Your Supabase sign-in session, so you stay signed in between visits. Removed on sign-out. |
ht.user, ht.routine, ht.logs | Your preferences, routine and logged sessions, cached locally and synced to your account when signed in. |
ht.bodyweight | Body weight entries. Local only, never uploaded. |
ht.game | Badges, streaks and quests. |
ht.session.… | The session you are in the middle of, saved as you type so nothing is lost. |
ht.demo | Marks demo mode and backs up your data while you try it. |
3. Analytics
We use PostHog to count page views and catch JavaScript errors. It is configured for memory-only persistence: it sets no cookie, writes nothing to localStorage, does not record sessions, and does not build a profile. Each event reaches PostHog with your IP address and browser type, which is covered in the privacy policy.
4. Third-party requests
- Typefaces load from Google Fonts on every page. Google sees your IP address but sets no cookie.
- Exercise demonstration images load from jsDelivr when you open a demo.
- Links to YouTube open in a new tab; YouTube's own cookies apply only once you are there.
5. Clearing it
- Sign out to remove your session. "Delete everything" in Settings clears every ht.* entry on that device.
- Deleting your account removes your server data and clears the browser entries on the device you do it from.
- Your browser's "clear site data" for traintwice.app removes the rest, including the Cloudflare cookie.
Questions about any of this: hello@traintwice.app.