Effective 14 August 2026 · Version 1.0
Vitae holds your medical-school application record: hours, activities, grades, MCAT scores, the people who will write your letters, and things you have written about patients. That is sensitive. This page describes exactly what happens to it, in plain terms.
| What | Where it lives | When |
|---|---|---|
| Your record | Your browser's local storage, under vitae.v1 |
Always, signed in or out |
| Your record | A private file on Vercel Blob storage, at a path keyed to your account ID | Only while you are signed in with sync |
| Sync bookkeeping account ID, revision marker, last-sync time |
Your browser's local storage, under vitae.sync.v1 |
Only after you sign in |
| Your email address and login credentials | Clerk, our authentication provider | Only if you create an account |
The synced copy contains exactly what a downloaded backup contains — the same JSON file, nothing added.
The stored file is private. It is not reachable by URL: a request for it without authorisation is refused. Every read and write goes through one endpoint that first verifies a valid session token for your account, and then derives the file path from the identity inside that token rather than from anything the request asks for. There is no request that returns another person's record.
Vercel, as the infrastructure provider, is technically capable of accessing data stored on its platform, in the same way any hosting provider is. We do not read your record.
These are every outside service contacted by Vitae, and what each one receives. All of them see your IP address, the way any website you visit does.
| Service | What it is for | What it receives |
|---|---|---|
| Vercel | Hosting, the sync endpoint, and storage of the synced copy | Standard access logs, and your record if sync is on |
| Clerk | Accounts and sign-in | Your email address and credentials. Never your record. |
| Google Fonts | The typefaces, loaded on every page | Nothing but the font request |
| cdnjs (Cloudflare) | The PDF reader used for transcript import, loaded on every page | Nothing but the script request |
| Cloudflare Turnstile | Bot check that Clerk may run during sign-in | Nothing but the challenge |
If you import a transcript PDF, the file is read entirely inside your browser and is never uploaded — not to us, not to cdnjs, not to anyone.
Vitae sets no cookies of its own and uses no analytics or advertising cookies.
Your record is kept until you delete it. There is no expiry and no automatic cleanup, because a pre-med record is something you build over years.
When you delete the synced copy it is removed immediately. Vitae keeps no version history, no snapshots, and no backups of your record, which also means we cannot restore anything for you — that is what the JSON backup in the Data tab is for. Vercel retains its own infrastructure access logs under its policies, independently of us.
Depending on where you live, you may have statutory rights to access, correct, export, or delete your personal data, and to object to its processing. Vitae is built so you can exercise all of those yourself from the Data tab without asking anyone. If you would rather have us do it, write to the address below. If you are in the EU or UK, the lawful basis for storing the synced copy is performance of the service you asked for by signing in; signing out and deleting the cloud copy withdraws it.
Vitae is intended for university-age applicants and is not directed at children. Do not create an account if you are under 16. If we learn an account belongs to someone under 16, it will be deleted.
If this policy changes in a way that affects what happens to your data, the effective date and version at the top will change and the previous behaviour will be described here. Version 1.0 is the first published policy; it accompanies the release that introduced optional accounts and sync.
Questions, deletion requests, or anything about this policy: arothe2007@gmail.com.