Cookie policy
Optional measurement is off until you choose it. This page lists what Apphelm stores in your browser and how to change your choice.
Effective 22 September 2026 · Version 1.31. Your controls
Use the button below at any time. Rejecting optional categories does not prevent account, security or support features from working.
2. Browser storage
| Name/category | Purpose | Duration |
|---|---|---|
| Better Auth session · Essential | Secure sign-in, session rotation and account access. | Session or configured short-lived expiry |
| apphelm-consent-v1 · Essential | Stores analytics and replay choices so we honor them. | 12 months |
| apphelm_ctx · Preference | In the signed-in app, remembers the product and replay date window you last chose in a workspace, and the Analytics range, so pages open where you left off. Set only when you choose one. Holds product ids and a number of days, and the Analytics range; no personal data. | 12 months |
| Security and load controls · Essential | Abuse prevention, request integrity and reliable delivery. | Session to 30 days |
| Product analytics · Optional | Measures navigation and aggregate feature quality on apphelm.dev. | Up to 13 months |
| Session replay · Optional | Masked interaction diagnostics on explicitly enabled surfaces. | 7–90 days depending on context |
3. What the snippet stores in a customer’s product
Where a customer installs the Apphelm snippet in their own product, the browser storage below belongs to that product’s origin, and the customer is the controller for it. Apphelm does not set these values on apphelm.dev.
| Name | Purpose | Duration |
|---|---|---|
| apphelm.distinctId · Optional | Anonymous identifier that keeps a person’s feature-flag assignment stable and lets repeat visits be counted once. Written only after analytics consent. | Until cleared by the visitor |
| apphelm.sessionHash · Optional | Groups events from one visit into a session. Written only after analytics consent. | Until the tab’s session ends |
Nothing is written before analytics consent exists. Autocapture then records page views, page exits, clicks, form submissions and field-change types as a hashed element path with coarse coordinates — never input values, passwords, or the text of an element. Password, email, telephone, card, IBAN, national-identifier, one-time-code, contenteditable and explicitly masked elements produce no autocapture at all, and the customer’s blocked route prefixes (authentication, billing, admin and payment paths) are excluded. Heatmaps are aggregates of those consented clicks, not screenshots of page content. Grouped browser exceptions are scrubbed of emails, keys and query strings before storage. Feature-flag evaluation works without analytics consent, because it is a configuration lookup rather than measurement; flag exposure events are recorded only with analytics consent.
4. Global Privacy Control
Where technically received, Apphelm treats Global Privacy Control as a rejection of optional analytics and replay, both for the public site and in the snippet a customer installs. Customer telemetry configuration is otherwise controlled by the relevant customer, which is responsible for responding to signals on its own properties.
5. Changes
If storage names or purposes materially change, this table and the consent interface will be updated before the new optional processing starts.