Last updated August 30, 2026
Privacy policy
What webtype.org stores, what it measures, and what it never collects.
Who is responsible
webtype.org is an independent project run by an individual, not a registered company. The contact address for any privacy question, including requests to access or erase data, is admin@webtype.org.
An account is optional
You can solve every puzzle without registering, and nothing asks you to. Your solutions, stroke counts and streak live in your own browser, in localStorage. Clearing site data erases them.
If you sign in with GitHub, we receive your GitHub account identifier, username and email address, plus a display name if you provided one there. We never post anything on your behalf. Signing in lets you explicitly attach results you have already earned so they survive a cleared browser.
Results that leave your browser
To show how everyone did, we record the puzzle number, stroke count, solved and hint status, reading language, and the pass/fail score grid used by a shared result card. Ordinary play sends no source code. If you explicitly submit to the optional short-game leaderboard, the source is sent once for server verification and discarded immediately; only its character count is stored.
Each attempt carries a random identifier generated **per puzzle**, not per person or per device. It exists so that running the checks five times counts as one result rather than five. Because a fresh one is created for every puzzle, these records cannot be linked together into a history of anyone — that is a property of the design, not a policy we promise to keep.
The only way these records ever become linked to a person is if you sign in and explicitly choose to attach them. Until then they are counts and nothing more, and the aggregate is all that is ever displayed.
Account profiles are private by default. You may publish a handle, display name, solved-puzzle history, streaks and golf scores; switching the profile back to private removes those surfaces from public view.
The code you write stays with you
During ordinary play, the TypeScript compiler runs inside your browser in a web worker, so source attempts stay local. The only exception is an explicit short-game submission: the server compiles that source to attest the score and does not store it.
Analytics
Vercel Web Analytics counts anonymous usage: which puzzle was viewed, how many attempts it took, whether the hint was used, and which language you read in. It is served from webtype.org itself, sets no cookie, writes nothing to your browser, and creates no identifier that could follow you to another site — so there is nothing to consent to and no banner to answer. Google Analytics was used until 30 August 2026 and has been removed entirely.
Vercel derives a visit count from the request itself — page, referrer, country, and coarse device and browser information — without storing an identifier for you. Requests are counted, people are not followed.
Hosting and logs
Vercel serves the site and keeps short-lived operational logs containing IP addresses and user agents. Supabase provides authentication and stores validated result records, optional account profiles and golf character counts. Neither receives puzzle source except the temporary verification request described above.
Your rights
Under the GDPR you may request access to, correction of, or erasure of personal data. You may make a profile private in account settings at any time. Write to admin@webtype.org and you will get a reply from a person.
Questions about this document? admin@webtype.org

