Privacy policy
What OnCo collects, where it lives and what never leaves your device, written from the code that runs the site. The site is open source, so every statement here can be checked against the file it describes.
Last updated Terms of useHistory of this page
1.Who runs this site
OnCo ([legal entity and address]) runs onco.cc and is the controller for the small amount of personal data the site touches. The code that this policy describes is public at github.com/judegomila/OnCo.
2.The short version
- The site is a set of static pages served by Vercel. OnCo runs no server and no database of its own.
- Google Analytics counts visits and page views. It is the only analytics on the site.
- If you sign in, WorkOS handles it and holds your email address and the name you give. Nothing else about you is held by OnCo or WorkOS.
- Everything you choose on the site (who you are, your cancer, watched pages, saved views, appointment notes, theme, language, region) stays in your own browser and is never sent to us.
- No advertising, no advertising trackers, no sale or sharing of personal data for marketing.
3.Hosting
The site is built as a static export and served by Vercel. Like any web host, Vercel logs each request (the address requested, the time, your IP address and browser type) for security and performance, and uses that log to run and protect the service. We add nothing to those logs and do not use them to identify visitors. See Vercel's privacy policy for how long they are kept.
4.Analytics
Every page loads Google Analytics (gtag.js, property G-2TTJ25WSN8) once the page is interactive. We use it for one thing: to see which pages are read and how often, so we know what to build next.
What the code does, exactly: it is the standard Google loader followed by a plain gtag('config') call. No advertising features are switched on, no extra parameters are passed (the snippet sets no IP anonymisation option; how Google Analytics 4 handles IP addresses is described in Google's documentation), and there is no consent banner or gate: the script runs for every visitor. Through it Google receives the pages you view, the time, the page you came from, your device, browser and language, and a rough location derived from your IP address, and it sets the _ga cookies listed below so that repeat visits can be told apart.
To opt out, block googletagmanager.com with a content or tracker blocker, use your browser's tracking protection, or install Google's own opt-out add-on. How Google uses data from sites that use its services is at policies.google.com/technologies/partner-sites, and Google's privacy policy is at policies.google.com/privacy.
5.Accounts
Signing in is optional. When it is switched on, sign-in is handled by WorkOS AuthKit as our processor. Your browser talks to api.workos.com directly, using a one-time code that never passes through any server of ours. WorkOS stores your email address, the name you give, the sign-in method you use and a record of your sessions. Your browser keeps the resulting session (tokens, your user id, email and name) in local storage under onco:session:v1; signing out removes it and tells WorkOS to end the session. See WorkOS's privacy policy.
The code also contains an alternative sign-in and watchlist sync through Supabase (an emailed link plus a watchlist table). It is used only if OnCo configures its keys; in that case Supabase would hold your email address and the pages you watch, and this policy will say so before it is switched on.
6.Your choices and saved items
Who you are. After your first sign-in, the welcome step asks whether you are a patient, a caregiver, a researcher or a medical provider, and offers an optional cancer choice. Your answer, the cancer and the time you agreed are written to local storage under onco:account-profile:v1:<your user id>. They are keyed to your WorkOS user id so two people sharing a browser do not overwrite each other, and they are never sent to OnCo, to WorkOS or to anyone else. The cancer is also written to the browser profile (onco:profile:v1) that For me, the cancer hubs and the header chip read.
Saved items. Watched pages, saved table views and appointment preparation notes are browser-only as well. The Saved page checks for changes by fetching OnCo's own static data files for the pages on your list; the list itself is not sent.
Clearing. Open the account menu and choose Clear my choices to forget your role, your cancer and your reading mode, or Change who you are to pick again. Your browser's site data controls remove everything in the table below.
8.Cookies and browser storage
OnCo's own code sets no cookies; the only cookies come from Google Analytics. Everything else is local storage, session storage or the service worker cache, all of it on your device.
| Name | Where | What it holds |
|---|---|---|
| _ga, _ga_* | Cookie (set by Google) | Google Analytics visitor and session identifiers, so repeat visits can be told apart. |
| onco:theme | Local storage | Light, dark, high-contrast or system theme. |
| onco.layer | Local storage | Reading level (technical, plain, simple) and site language. |
| onco:region | Local storage | The region you chose for approvals and access. |
| onco:profile:v1 | Local storage | Your browser profile for For me and the hubs: cancer, stage, biomarkers, treatments had, country or postcode if you typed one, and reading mode. |
| onco:account-profile:v1:<your user id> | Local storage | The role you chose after signing in, your optional cancer choice, the time you agreed to the welcome step, and a copy of your country, data view, language and theme so they follow your account. One entry per signed-in user of this browser. |
| onco:session:v1 | Local storage | Your sign-in session: access and refresh tokens, expiry, your user id, email address and name from WorkOS. Removed when you sign out. |
| onco:pkce, onco:return-to | Session storage | A sign-in in progress (a one-time code verifier and the page to return to). Removed as soon as the sign-in completes; gone when the tab closes. |
| onco:watchlist:v1 | Local storage | Pages you pressed Watch on, with the dates you last saw them. |
| onco:saved-views:v1 | Local storage | Table views you saved: a name and the address that reproduces the filters. |
| onco:prep:v1, onco:prep-sheet:v1 | Local storage | Ticks, questions and notes on the appointment preparation pages. |
| onco:shortcuts:v1 | Local storage | Whether keyboard shortcuts are on or off. |
| onco:missed-paths | Local storage | The last fifty addresses this browser asked for that did not exist, so the not-found page can suggest where you meant to go. |
| onco:stars | Local storage | The GitHub star count shown in the header, cached for an hour. |
| onco.translate-offer.dismissed | Local storage | That you dismissed the offer to switch language. |
| onco-v3-pages, -shell, -assets, -data, -media | Cache storage (service worker) | Copies of pages you have visited (up to 200), the site's scripts and styles, its data files and images, so the site works offline. |
To clear any of it, use your browser's site data or cookie controls for onco.cc, or the Clear my choices button in the account menu for your role and cancer.
9.Health information
Any cancer type, stage, biomarker, treatment or role you choose on OnCo is sensitive information about health. It is kept only on your device, in the storage listed above, and is never sent to OnCo, WorkOS or Google. You can clear it at any time from the account menu.
Two limits are outside our control and worth knowing. First, the address of a page you read (for example a page about one cancer) is part of an ordinary page view, so it is visible to Vercel in its request log and to Google Analytics as a page view. Second, if you type a condition, a drug or a place into a tool that queries ClinicalTrials.gov, Europe PMC or OpenStreetMap, that query goes to that service from your browser (next section).
10.Other services your browser may contact
Besides Vercel, Google and WorkOS, some features fetch from other services directly from your browser, only when you use them:
- ClinicalTrials.gov: the trial finders send the condition, drug and place you enter to its public API.
- OpenStreetMap Nominatim: the trials-near-you finder turns the place name you type into coordinates.
- Europe PMC (ebi.ac.uk): the latest-papers panels query it for a record's name.
- GitHub: the header fetches the repository's star count about once an hour.
- jsDelivr: the maps load public country outlines from this content network.
Each of these sees your IP address and the request, as any website you visit does, and each has its own privacy policy. Links that leave onco.cc open in a new tab; those sites' policies apply once you are there.
11.No advertising, no sale of data
OnCo shows no advertising, loads no advertising trackers and does not sell, rent or share personal data for marketing or any other purpose. The only measurement is Google Analytics as described above. Nothing about you is used to train models or shared with data brokers.
12.Your rights
Under the EU General Data Protection Regulation and the UK GDPR you can ask to see the personal data an organisation holds about you, have it corrected or deleted, restrict or object to its use, receive a copy in a common format (portability), and complain to your supervisory authority. Under the California Consumer Privacy Act you can ask what is collected, have it deleted or corrected, opt out of sale or sharing (we do neither), and not be treated differently for asking.
Because almost everything is on your device, most of these you can do yourself:
- Your choices and saved items: use Clear my choices in the account menu, or clear the site's data in your browser.
- Your account: to see or delete what WorkOS holds, contact us and we will have it removed.
- Analytics: use the opt-out routes in the analytics section; Google's controls are at myaccount.google.com.
- Anything else: open an issue at GitHub or email [contact email]. We answer within the time the law allows, normally one month.
13.Children
OnCo is not directed at children under 16 and we do not knowingly collect personal data from them. If you believe a child has created an account, contact us and we will have it removed.
14.International transfers
Vercel, WorkOS and Google are companies based in the United States, so request logs, account records and analytics data may be processed there. Each publishes the legal safeguards it relies on for data moved out of the EU, the UK and other places with transfer rules; we cannot verify those arrangements for you here, so please see Vercel's, WorkOS's and Google's policies for the current terms.
15.Changes to this policy
This policy changes when the code changes. The date at the top of the page is the date this page was last built, and every earlier version is in the page's history on GitHub.
16.Contact
Open an issue at github.com/judegomila/OnCo/issues or write to [contact email]. Security matters are covered in the repository's security policy.