We use cookies and similar technologies in two categories. Strictly necessary technologies keep you signed in, remember preferences like your currency, secure your downloads and protect the site; they cannot be switched off without breaking it. Analytics (PostHog) is optional and stays off until you accept it on the consent banner shown on your first visit. You can change your choice at any time via the Cookie preferences link in the site footer, or control cookies directly through your browser settings.
The complete list of what we set, and why:
| Name | Type | Purpose | Retained |
|---|
| gc | Cookie, strictly necessary | Stores the two-letter country code we derive from your IP address, so prices can default to your local currency without re-detecting it on every page. | 30 days |
| guestDlToken | Cookie, strictly necessary | Proves a guest download link belongs to you, so you can download what you bought without an account. Server-only (HttpOnly) and scoped to the download endpoint. | 1 hour |
| dlBind | Cookie, strictly necessary | Binds an in-progress file download to the browser that requested it, so a download link cannot be reused elsewhere. Server-only (HttpOnly). | 10 minutes |
| Firebase authentication | Browser storage, strictly necessary | Keeps you signed in between visits and refreshes your session token. Set by Firebase Authentication, our sign-in provider. | Until you sign out |
| cart, recipientEmail | Browser storage, strictly necessary | Remembers what is in your cart and the email you last used at checkout, so neither is lost if you navigate away or reload. | Until cleared |
| cookieConsent | Browser storage, strictly necessary | Records your cookie choice and when you made it, so we do not ask again on every visit and analytics stays off unless you accepted it. | Until cleared |
| theme, accentColor, notificationSettings, currency | Browser storage, strictly necessary | Remembers display preferences you set: light or dark mode, accent colour, notification and toast behaviour, and your chosen display currency. | Until cleared |
| ph_*_posthog | Cookie, analytics (optional) | PostHog product analytics: counts pageviews and feature usage against a random identifier so we can see what is used and diagnose errors. Set only after you accept analytics. Session recording, autocapture and surveys are disabled. | 12 months |
Several of the entries above are browser storage rather than cookies: they stay on your device and are never transmitted to us. We list them here anyway, because the distinction matters less to you than knowing what is stored. Your cookie choice itself is recorded in browser storage rather than a cookie, so it is not sent to our servers; clearing your browser storage will make the consent banner appear again.
Payment pages load fields hosted by Stripe, and the payment providers named above set their own cookies inside those fields to process the payment and detect fraud. Those are governed by the provider's own privacy notice, not this one.