Cookies & storage
The short version
The marketing site does not use traditional advertising cookies and does not sell or share your data. We use a small number of "strictly necessary" storage items so the site functions (theme preference, your analytics choice, the timer demo), plus — depending on your analytics choice — a couple of identifiers from our analytics provider, PostHog.
Strictly necessary
Set in all modes. Required to deliver the site you're looking at.
| Key | Where | Purpose | Lifetime |
|---|---|---|---|
puzzled-theme-pref | localStorage | Remembers your choice of system, light, or dark theme so the page doesn't flash the wrong colour on each load. | Until cleared by you. |
puzzled-analytics-consent | localStorage (or sessionStorage as fallback) |
Records your analytics choice: basic, optional, or
objected. Without this we'd ask you on every visit. If your browser
blocks localStorage, we fall back to sessionStorage so the choice at least sticks
within the tab.
| localStorage: until cleared by you. sessionStorage fallback: until the tab closes. |
puzzled-timer-elapsed | sessionStorage | The elapsed time of the live timer demo on the home page, so the demo keeps counting if you reload within the same tab. | Until the tab closes. |
puzzled-timer-running | sessionStorage | Whether the timer demo is paused or running. Same scope as above. | Until the tab closes. |
Analytics — basic mode (default)
In basic mode PostHog runs in memory-only persistence: the main distinct id used
to attribute events is freshly generated on every page load and discarded when the page
closes. No cookies. No localStorage entry. The one PostHog storage item in basic mode is a
short-lived window identifier in sessionStorage, used to group events from a
single browser tab together.
| Key | Where | Purpose | Lifetime |
|---|---|---|---|
ph_<token>_window_id | sessionStorage |
Groups events from a single browser tab. Doesn't identify you across tabs or sessions.
<token> is the PostHog project's public API key.
| Until the tab closes. |
Analytics — optional mode (only if you opt in)
If you choose Accept optional analytics, PostHog adds a persistent identifier on top of the basic-mode sessionStorage row above — so a returning visitor counts as the same person across visits, rather than a fresh anonymous one each time.
| Key | Where | Purpose | Lifetime |
|---|---|---|---|
ph_<token>_posthog | localStorage + cookie | The persistent distinct id PostHog uses to recognise a returning visitor. Also stores session id and a small amount of state needed for accurate event sequencing. | 1 year (cookie). localStorage persists until cleared. |
Switching to basic or objected at /analytics instructs PostHog to clear its identifier on the next page load and stop setting these.
Analytics — objected mode (only after you object)
When you choose Object at /analytics, PostHog records its own opt-out marker so the SDK can suppress capture even before our snippet's consent check runs on future page loads. This marker holds no identifier and no event data — just a boolean opt status.
| Key | Where | Purpose | Lifetime |
|---|---|---|---|
ph_<token>_posthog (opt-out flag only) | localStorage + cookie | Records that this device has opted out of analytics. No identifier, no event data — just the boolean opt status. The full distinct id row from optional mode is cleared first. | Cleared automatically when you switch back to basic or optional (on the next page load), or when you clear the site's storage. |
Third parties
The site loads a small icon font (Ionicons) from unpkg.com. unpkg is a CDN; it sees the request and may log it as part
of normal CDN operations, but the site does not deliberately send any identifying
information to them and they set no cookies on our behalf.
How to clear
Clearing the site's storage from your browser settings is the most thorough way: it removes every key listed above. You can also visit /analytics to switch analytics mode (which clears the relevant PostHog keys), or use your browser's developer tools to delete individual items.
Changes to this page
We update this page whenever any item above is added, removed, or changes purpose. The "Effective" date at the top changes with it.
Contact
Questions about storage: contact@obsidiumlabs.uk.