Legal
Cookie Policy
Everything UroCompanion stores on your device, and why. Last updated 11 August 2026.
This policy lists every cookie and every piece of browser storage UroCompanion uses. It forms part of our Privacy Policy, and the tables below are generated directly from the site’s own configuration — so what you read here is what the site actually sets, not a description of it.
The short version
UroCompanion runs no advertising, no tracking, and no analytics. There are no third-party cookies on this site at all. What we do set is a handful of first-party cookies that keep you signed in and secure, plus some browser storage that remembers your reading preferences. You can change your choice at any time from .
1. What a cookie is (and what browser storage is)
A cookie is a small text file a website asks your browser to keep, and which the browser sends back on each visit. That is how a site can tell that this request comes from the same person who signed in a moment ago.
Browser storage (also called local storage) is similar, with one important difference: it never leaves your device. It is not attached to requests and our servers never see it. We use it for preferences such as your reading theme.
2. The categories, and what you control
We group everything into three categories. Only the first is set without asking you.
- Essential (always on) — Needed for the site to work at all — keeping you signed in, protecting the sign-in form from cross-site attacks, and remembering this privacy choice. These are never used to track you, and they cannot be turned off.
- Functional — Remembers your preferences on this device — reading theme, whether the sidebar is expanded, and your study progress while you are signed out. Turning this off does not break the site; it just forgets these settings between visits.
- Analytics — Would let us measure which pages are used and where people get stuck, so we can improve the site. We do not currently run any analytics — this stays here so that if we ever add it, it cannot start without your permission.
Essential items are exempt from consent because the site cannot work without them — you cannot stay signed in without a session cookie, and we cannot remember that you declined cookies without storing that you declined. Everything else is off until you switch it on.
3. Cookies we set
All of these are first-party — set by urocompanion.com, sent only to urocompanion.com. None of them contain advertising identifiers, and none are shared with anyone.
| Name | Purpose | Category | Lasts |
|---|---|---|---|
uc_id_tokenhttpOnly | Your signed-in session. Holds the Cognito ID token that proves who you are on each request, so you do not have to log in on every page. | essential | About 1 hour, renewed silently while you are active |
uc_refresh_tokenhttpOnly | Lets the site renew your session in the background so you are not logged out mid-study. Deleted when you sign out. | essential | 30 days |
uc_usernamehttpOnly | Your account's internal username, stored alongside the refresh token so the session can be renewed after the short-lived token above has expired. | essential | 30 days |
uc_oauth_statehttpOnly | A one-time random value that protects the sign-in round trip against cross-site request forgery. Security only. | essential | 10 minutes |
uc_pkce_verifierhttpOnly | The PKCE secret that stops an intercepted sign-in code from being redeemed by anyone but your browser. Security only. | essential | 10 minutes |
uc_chgemail_athttpOnly | Carries the re-authentication token across the two steps of changing your email address, so the change requires your current password. | essential | The length of the email-change flow |
uc_chgemail_tohttpOnly | Holds the new email address you entered while you fetch the verification code sent to it. | essential | The length of the email-change flow |
uc_consent | Your answer to this cookie banner, plus the date you gave it and the version of the notice you saw. Without it we would have to ask you again on every page. | essential | 12 months |
Cookies marked httpOnly cannot be read by JavaScript at all — a deliberate protection so that a scripting flaw anywhere on the page still could not steal your session.
4. Browser storage we use
These stay on your device and are never transmitted to us. If you turn off the Functional category, we delete the ones below and stop writing new ones; the site keeps working, it simply forgets these preferences between visits.
| Name | Purpose | Category | Lasts |
|---|---|---|---|
uc-read-theme | The reading theme you picked on topic and study-note pages. | functional | Until you clear your browser storage |
uc-rail-expanded | Whether the left navigation rail is expanded or collapsed. | functional | Until you clear your browser storage |
uc-palette-recent | The last few pages you opened from the command palette, so they appear first next time. | functional | Until you clear your browser storage |
urocompanion:assess-theme | Light or dark theme for the Self-Assessment surface. | functional | Until you clear your browser storage |
urocompanion:cards-theme | Light or dark theme for the Cards surface. | functional | Until you clear your browser storage |
urocompanion:decks-theme | Light or dark theme for the Decks surface. | functional | Until you clear your browser storage |
urocompanion:daily-theme | Light or dark theme for the Daily Review surface. | functional | Until you clear your browser storage |
urocompanion:tools-active-calc | The last calculator you had open, so Tools reopens on it. | functional | Until you clear your browser storage |
urocompanion:quiz-history | Your question results while signed out, so guest progress and weak-topic feedback survive a page reload. Signed-in results are saved to your account instead. | functional | Until you clear your browser storage |
urocompanion:topics-viewed | Which topics you have opened while signed out, for guest progress. | functional | Until you clear your browser storage |
urocompanion:flashcards-srs | The spaced-repetition schedule for flashcards you review while signed out. | functional | Until you clear your browser storage |
uro:pending-email-change | Remembers that you have an email change awaiting a verification code, so the confirmation step survives a reload. Cleared as soon as the change completes or is cancelled. | essential | Until the email change completes or is cancelled |
5. Third-party cookies
There are none. No advertising network, analytics provider, social network, or embedded widget sets a cookie on this site.
We do rely on a small number of service providers to run UroCompanion, but they are called from our servers rather than from your browser, so none of them place anything on your device:
- Amazon Web Services (AWS) — Hosting, database, file storage, and the Cognito identity service that holds your login credentials. (processed in Frankfurt, Germany (eu-central-1); privacy policy)
- Google (Gemini API) — Generates UroBot's answers from UroCompanion's own content. Called from our server, never from your browser. (processed in Google Cloud infrastructure; privacy policy)
- Resend — Sends account emails — activation codes, password resets, and email-change verification. (processed in United States / European Union; privacy policy)
6. Changing or withdrawing your choice
Open — from here or from the footer of any page — to change your answer. Withdrawing is exactly as easy as giving consent, and takes effect immediately: switching a category off also deletes what it had already stored.
You can also clear or block cookies in your browser settings. Blocking essential cookies will stop you being able to sign in, because the site would have no way to recognise your session.
7. How long we keep your choice
Your answer is stored for 12 months, after which we ask again. We record the date you answered and the version of this notice you saw. If we materially change the categories or add a new service, we reset the notice and ask you afresh rather than relying on a decision you made about something else.
8. Questions
Email urocompanion@gmail.com and we’ll answer. For the wider picture of what we collect and the rights you have over it, see the Privacy Policy.