Analytics
This is a personal website. No personally identifiable information is stored — no IP addresses, no cross-day tracking, and no cookies for visitors. There are no ads and no third-party trackers.
Traffic measurement
I count page views in two privacy-preserving ways, neither of which stores anything on your device:
- Server-side counting. When a page is served, the server records the page path, the referring site's domain, your country and state/region (from Cloudflare's network metadata), and a one-way hash that groups your views within a single day. The hash is computed from your IP address and browser with a random key that is deleted every day — after that, the hash can never be recomputed or traced back to anyone, by me or anyone else. Your IP address itself is never stored. Within about 48 hours, what remains is aggregate numbers (views per page per day, referrer totals, coarse geography with small buckets folded together) plus anonymous same-day reading paths kept with no identifier, no location, and no timestamps. I cannot tell whether a visitor today is the same person as a visitor yesterday — by design. If your browser sends Global Privacy Control (or DNT), the view is counted with no hash at all.
- Cloudflare Web Analytics. A small script measures page performance (Core Web Vitals) and page views. It uses no cookies and no fingerprinting, and Cloudflare processes it as a service provider.
The basis for this measurement is legitimate interest (GDPR Art. 6(1)(f)): understanding what gets read, in a way engineered so that no profile of any person can exist.
Storage on your device
The only thing the site stores in your browser is your dark/light theme choice (kept locally, never transmitted). Functional preference storage like this is exempt from consent requirements. Visitors never receive cookies.
Everything else
Media and pages are served through Cloudflare, which sees requests the way any host does (IP addresses in transit, transient logs). If you email me, I have your email.