Cookie Policy
Last updated: 15 July 2026
The short version: nothing that tracks you runs unless you say yes. Analytics cookies load only after you click Accept on the cookie banner, and you can decline and still use the whole site. Here is exactly what may be stored on your device and why.
Your choice comes first
On your first visit you see a short cookie banner with Accept and Decline. Google Analytics is not loaded at all until you accept, so if you decline (or ignore the banner) no analytics cookies are set and no data is sent to Google. Your choice is remembered so you are not asked again; clear this site's data to be asked afresh.
Analytics cookies (only if you accept)
If you accept, Google Analytics (GA4) sets a small number of cookies (such as _ga and _ga_<id>) to measure aggregate, anonymized traffic, which pages are visited and roughly where visitors come from. These are used only to improve the portfolio, never for advertising. Advertising and personalization signals are switched off. You can withdraw consent any time by clearing this site's cookies, which brings the banner back.
Cookieless analytics (always on)
I also use Vercel Web Analytics, which is cookieless: it sets no cookie and stores nothing on your device, collects no personal data, and cannot follow you across other sites. Because it stores nothing on your device it needs no consent and runs regardless of your banner choice.
Essential local storage
The site saves one small preference in your browser's local storage so the page looks the way you left it:
- theme — whether you chose light or dark mode.
It also stores your cookie-consent choice so the banner is not shown on every visit. These are strictly necessary, contain no personal data, and under the GDPR and ePrivacy rules do not require consent.
Removing everything
Clearing your browser's site data for this domain removes all of the above, including your consent choice. The banner then reappears and the site falls back to its defaults on your next visit.
More on data
For everything else, including the contact form and hosting, see the Privacy Policy.