Privacy Policy
Last updated: September 2026
The short version
Gnoseed is a browser-based learning app with no mandatory account. Everything you need to study is kept in your own browser. Analytics runs without cookies unless you allow them, and you can change that choice any time. We don't sell your data, and there are no ads.
What we store on your device
The following are strictly necessary for the app to function. They stay in your browser's localStorage (and are exempt from the cookie choice below). Clearing your browser data removes them.
| Stored item | Why |
|---|---|
| gnoseed.state.v1 | Your learning progress, streak, settings, profile and stats. |
| gnoseed.theme | Your light / dark / system colour-mode preference. |
| gnoseed.consent.v1 | Your cookie choice, so we don't ask again. Set by this policy. |
| gnoseed.content.v1 / gnoseed.cards.v2 / gnoseed.cardrevs.v1 / gnoseed.archived.v1 | A local cache of quiz decks (their content versions and which are archived) so the app works offline, loads fast, and refreshes when a question is corrected. |
| gnoseed.sync.uid | Links your device to your account for cross-device sync (only when signed in). |
| gnoseed.daily.set.v1 | A short-lived copy of the last Gnoseed Daily question set, so reloading the page does not re-fetch it. |
| gnoseed.installDismissed | Remembers that you dismissed the "install app" prompt. |
| gnoseed.push.v1 | Whether push reminders are on for this device, at which hour, and which kinds — only present if you turned them on. |
| Supabase auth session (sb-…-auth-token) | Keeps you signed in across visits — only present if you create an account. |
Analytics (cookieless by default — cookies only with your consent)
We use Google Analytics (gtag.js) to understand which topics and pages are used, so we can improve the app. It runs under Google Consent Mode v2: until you choose, and permanently if you decline, it operates in a cookieless mode — it stores no cookies and no identifiers in your browser, and reports only an aggregate, non-identifying signal that a page was viewed. Only if you choose "Accept all" or enable Analytics in the cookie banner does it store analytics cookies and measure your visit as a session. In both modes usage data (including your IP address) is processed on Google's infrastructure. Advertising and personalization signals are disabled at all times, regardless of your choice. You can change your choice at any time via Withdrawing consent takes effect immediately — measurement drops back to the cookieless mode without needing a reload.
If you enable Analytics, the app also sends us anonymous study statistics when you finish a session: which cards were answered, whether they were right, and how long they took. These are folded into per-card and per-week totals — there are no per-user records, and nothing is linked to your account even when you are signed in. So that we can tell "one person studied ten times" from "ten people studied once", each batch carries a random installation identifier (gnoseed.installId.v1) — a value generated on your device, not derived from you, your account or your email, and stored only as a one-way hash on our side. It is created only once you enable Analytics, and clearing your browser storage replaces it.
Gnoseed Daily
Your Gnoseed Daily results — score, streak and which days you played — are kept on your device (in gnoseed.state.v1, with the rest of your progress) and sync across your devices only if you sign in. Answers are checked on the server, because the correct option is deliberately withheld until you have answered, but nothing about your attempt is stored there: no score, no identity, no record that you played. Playing requires no account.
Push notifications (optional)
Reminders are off by default. If you turn them on (Settings → Notifications, or "Remind me" after a Gnoseed Daily), your browser asks for its own notification permission — that is a browser-level choice, separate from the cookie banner. Turning them on sends and stores, on our server, the push subscription your browser creates (an opaque endpoint URL on your browser vendor's push service plus its encryption keys), the timezone and hour you picked, and which reminders you want. If you are signed in, the subscription is linked to your account so the due-card reminder can count your synced progress; signed out, it is linked to nothing and only the Daily reminder is available.
Messages are delivered through your browser vendor's push service (Google, Apple or Mozilla, depending on the browser) and are encrypted end to end, so that service cannot read them. They contain counts and plain words only — "12 cards due", "Daily #42 is up" — never a question or an answer. Each kind is sent at most once a day. Turn reminders off in Settings at any time: the subscription is deleted from our server and revoked in your browser. Subscriptions the push service reports as expired are deleted automatically.
MCP connector (optional)
Gnoseed can be added to Claude and other AI apps as an MCP connector . It works in two modes, and the default one needs no account.
Without an account, the only thing sent to us when you answer is the id of that question and the option you picked; we grade it, reply with the explanation, and keep nothing — no identifier, no account link, no stored answer or score. Every tool is read-only, and a round played this way does not update your streak or your spaced-repetition schedule. Only the questions already published on gnoseed.com are served.
If you connect your account, you are asked to authorize it first and shown exactly what the app gets. From then on the connector can read the cards you are due to review and, when you answer one, record that answer — it reschedules the card, advances your streak and counts towards your review total, the same as answering on gnoseed.com. What is stored is what a review always stores: the card, whether you got it right, and when to show it next. The AI app never receives your email address. You can disconnect it at any time in Settings → Account, which stops all of this immediately.
Either way, the AI app you use has its own privacy policy for the conversation itself, which we neither see nor control.
Accounts & cross-device sync
An account is optional. If you sign in, authentication and progress sync are handled by Supabase (Postgres, Auth). Your email and learning progress are stored there so your streak, settings and card history follow you across devices. Your session token is kept in your browser to keep you signed in. Delete your account to remove this data; without an account, nothing leaves your device.
Third-party requests
- Google Fonts — we load the "Plus Jakarta Sans" web font from Google's font CDN (
fonts.googleapis.com/fonts.gstatic.com). This is a styling request; it sets no cookies, but Google receives the request (including your IP address) to serve the font file. - Supabase — only contacted if you sign in or your device syncs (see above).
- Google Analytics — cookieless by default, with cookies only if you consent (see above).
- Rollbar — error tracking. When something in the app crashes, a report is sent to Rollbar so the bug can be found and fixed: the error message and stack trace, the page you were on, your browser and its version, and recent app activity (page changes, network requests, console messages). If you are signed in, your account ID is attached so repeated reports can be told apart — never your email or name. Form input is scrubbed, and no recording of your screen or session takes place. This is operational, not measurement, so it runs regardless of your analytics choice.
Your choices
You control non-essential storage. Update your cookie preferences at any time:
Contact
Questions about your data? Email tomas.chudjak@gmail.com.
