Skip to content
HockeyOS

Cookie Policy

Last updated: 2026-09-16

This page lists every cookie HockeyOS sets or causes to be set, and every key it writes to your browser’s storage. It is drawn from the code, not from a template. We do not use analytics, advertising or tracking cookies, and nothing here is shared with an ad network or used to follow you across other sites.

1. Cookies

Strictly necessary cookies are required for sign-in or payment to work. Preference cookies remember a choice you made; the site works without them (you would see the defaults).

NameSet byPurposeHow longCategory
__sessionClerkYour sign-in session token. Every dashboard request checks it to know who you are. Without it you cannot be signed in.While you are signed in; refreshed by Clerk as you use the site and removed at sign-out or when the session expires.Strictly necessary
__client_uatClerkRecords when your sign-in state last changed so pages know whether to check for a session before rendering.Same lifetime as the session.Strictly necessary
__clerk_db_jwtClerkDevelopment instances only (never on hockeyos.ca): carries the session between Clerk's hosted pages and the app.Session.Strictly necessary
hos-themeHockeyOSYour colour theme choice (system, light or dark) so the first paint is the right colour.1 year from when you last changed it. Only set once you pick a theme.Preference
hos-densityHockeyOSYour dashboard density choice (comfortable or compact).1 year from when you last changed it. Only set once you pick a density.Preference
hos-season-<organization id>HockeyOSThe season you last selected in a club's dashboard, one cookie per club, so schedule and stats pages open on that season.1 year from when you last picked a season. Removed when you switch back to the current season.Preference
__stripe_mid, __stripe_sidStripeSet by Stripe's payment form on a club's registration payment page, for fraud prevention. Card details go straight to Stripe and never touch HockeyOS.__stripe_mid: 1 year. __stripe_sid: 30 minutes. Only on pages that load the payment form.Strictly necessary

Clerk may set other short-lived cookies during the sign-in redirect itself (for example while handing off from its hosted sign-in page); they are all strictly necessary and are described in Clerk’s own documentation. The preference cookies are set with SameSite=Lax and are never read by anyone but HockeyOS.

2. Third-party content

Public player pages can embed a video from YouTube, Vimeo or LiveBarn when a club adds one. Those players set their own cookies when you press play, under those companies’ policies. Nothing is loaded until you play the video.

3. Browser storage (not cookies)

These keys stay in your browser and are never sent to our servers as such. They exist for the app to work offline or to save you re-typing something.

KeyWherePurposeHow long
hos:reg-group:<form id>localStorageOn a public registration form, a token for the family group you just registered, so a second child can be added to the same group (for sibling pricing) without re-entering the household.Until you clear site data for hockeyos.ca. Only set after you submit a registration.
hockeyos-install-dismissed-atlocalStorageWhen you dismissed the "install HockeyOS as an app" prompt, so it does not reappear for a while.Until you clear site data.
hockeyos-gamedayIndexedDBThe offline scoring queue: goals, penalties and shot counts recorded at the rink without a connection, held until they sync.Each entry is removed once it has synced. Only created if you use live scoring.
hockeyos-shell-v1, hockeyos-static-v1Service worker cacheCopies of the dashboard shell and static files so the app opens when you are offline.Replaced when a new version of the app is deployed; removed if you uninstall the app or clear site data.

4. Error reporting

If something breaks in your browser, an error report goes to Sentry through our own domain. It carries the error, the page and your browser version; it sets no cookie and does not build a profile of you.

5. Turning cookies off

You can block or delete cookies in your browser. Block the Clerk cookies and you cannot sign in; block the Stripe cookies and the payment form may refuse the card. Delete the preference cookies and you simply get the defaults again. Clearing site data also removes the browser-storage keys above, including any unsynced offline scoring.

6. Changes

If we add a cookie category (for example analytics), we will update this page, list the change on the legal changelog, and — where the law requires — ask for consent before setting it. See also the Privacy Policy.