1. What cookies and storage we use
We split cookies into four categories: Essential (required for the service to work), Analytics (consent-gated; product usage), Error tracking (consent-gated; crash diagnostics), and Marketing (we don’t use any today).
| Name | Category | Purpose | Duration | Set by |
|---|---|---|---|---|
| mc_consent_v1 | Essential | Stores your cookie-consent preference (granted, denied, or unknown). Without it we can’t remember that you already answered. | Persistent (localStorage; until cleared) | MatCommunity |
| sb-access-token / sb-refresh-token | Essential | Authenticated session for the admin console. Lets us tell which gym owner is making each request. | Session + 7-day refresh | Supabase |
| ph_*_posthog | Analytics | PostHog distinct_id, session_id, and feature-flag evaluation cache. Used to measure aggregate product usage. | 1 year (rolling) | PostHog |
| ph_*_window_id | Analytics | PostHog per-tab session continuity. Resets when the tab closes. | Session | PostHog |
| sentry-trace / baggage | Error tracking | Sentry distributed-trace identifiers attached to each request so we can correlate a frontend error with its backend trace. | Per-request header (not persisted) | Sentry |
| __cf_bm | Essential | Cloudflare bot-management cookie. Helps distinguish humans from automated traffic. | 30 minutes | Cloudflare |
Marketing cookies: none. We do not run third-party advertising on the product or the marketing site. If this changes, this page and the consent banner will update first and we’ll re-prompt for consent before any new category is set.
2. How to manage cookies
You can change your consent at any time. The fastest way is the button below, which resets your stored preference and re-shows the consent banner.
You can also block or delete cookies directly in your browser settings — here are the docs for the most common ones: Chrome, Firefox, Safari, Edge. Note that blocking essential cookies will break login and consent memory.
3. Do Not Track and Global Privacy Control
We honor both Global Privacy Control (GPC) and the legacy Do Not Track (DNT) header. If your browser sends either signal, we automatically treat your consent state as “denied” for non-essential cookies and do not show the consent banner. That decision is made client-side on page load before any analytics scripts run. You can still opt in afterward via the “Manage cookie preferences” button above.
4. Questions
For privacy questions, email [email protected]. For the full data-handling story, see our Privacy Policy.