Short answer: only you, by default. Here are the specifics.
What's stored
When you complete an exercise, we store:
- The exercise ID
- Your text inputs (encrypted at rest)
- The completion timestamp
- Time-spent metric (used for "minimum threshold" check)
- Your tier and locale at the time (used for analytics aggregates)
Where it's stored
- In our Supabase database, in the exerciseresponses table
- In your local browser cache while you're working on an in-progress one
Database access is gated by RLS (Row Level Security): only the row's userid == auth.uid() can read or write. Even our admin tools can't read user-content rows by design (the schema enforces this; admin tools have access to aggregate counts, not bodies).
Who CAN see my responses
- You — via My Workbook, the exercise detail page, and the data export
- You, on a sufficiently-trusted device — your cached responses live in localStorage until you log out
Who CAN'T see my responses
- Other users on the platform — never, by any feature path
- Mentors / accountability partners — only if you explicitly share via the share UI (see Sharing exercise responses)
- Forum readers — your forum posts are separate; exercise responses don't appear there even if you reference them
- Admin / moderation team — they have aggregate analytics access (e.g., "this exercise is completed 1,500 times per month") but cannot read the bodies. RLS-enforced.
- Anyone outside the platform without your authenticated session — content is encrypted in transit (TLS) and at rest
What about analytics
Aggregate analytics (Plausible) record:
- Anonymous events: "exercisecompleted", "exercisestarted", "exercisebookmarked"
- Properties: exercise ID, modality, difficulty, completion time bucket
- Never: the actual text you typed
You can opt out of analytics from the Cookie Banner or Settings → Privacy → "Cookie preferences."
What about backups
We run daily encrypted backups via Supabase's standard backup tooling (point-in-time recovery + daily snapshots). Backups inherit the same encryption-at-rest as the live DB. Backups are retained 30 days, then rolled off.
If you delete your account:
- Live DB rows are deleted on the 30-day grace period (or immediately if you choose)
- Backups continue to contain your data for the 30-day backup window. After that, backup rotation removes them.
Subpoena / law-enforcement requests
We've never received one, and we comply with valid requests under the relevant jurisdiction's law (US: ECPA / Stored Communications Act). Our policy:
- We require valid legal process (warrant for content; subpoena for non-content)
- We notify the affected user unless legally barred
- We disclose only the minimum required
Documented in docs/data-retention-policy.md (linked from Privacy Policy).
What if I want to delete a single exercise response without deleting my account?
My Workbook → tap the exercise row → "..." menu → "Delete this entry." Confirm.
The row is immediately removed from your live DB. Backups roll off as above.
Related
- What we collect, how it's stored
- How do I export my data?
Last reviewed: 2026-05-04