Skip to content

Cookies, analytics & data stored in your browser ​

This page covers the cookie/analytics choice and everything the app remembers on your device, so you know exactly what "clear site data" would reset, and what analytics does and doesn't run.

On the web app, builds with analytics configured show a one-time banner along the bottom on your first visit: We use cookies for analytics, with Accept and Decline buttons and a link to the Privacy Policy.

  • Until you decide, browser analytics is fully off: nothing is sent from your browser. (The two server-side signals described under What analytics is (the launch ping and the sign-up record) don't depend on this choice.)
  • Accept enables it; Decline keeps it off.
  • Essential features work identically either way; the choice only controls optional product analytics.

The banner never appears in builds without analytics configured (there's nothing to consent to).

Changing your mind ​

Account menu (top-right) → Cookie preferences… reopens the choice any time. The dialog states your current status (Analytics are currently enabled. / Analytics are currently disabled. / You haven't made a choice yet.) and offers Enable analytics / Disable analytics; withdrawing consent is as easy as granting it. Re-picking your current choice does nothing.

The desktop app is different

The desktop app never shows the banner or the Cookie preferences item: accepting the installed-app terms is the consent there, and analytics runs by default.

What analytics is ​

When enabled, the app sends product-usage analytics (PostHog, EU-hosted): which features get used, app launches, which library parts you pick (the brand and model of a panel, processor, switch or card, never your project's contents), and similar product signals. Automatic click capture is off. Session replay is on, but the 3D view (canvas) is never recorded, every text field you type into is masked, and web addresses are stripped of any sign-in codes or tokens before anything is sent. Replay itself does not even start until a sign-in link's one-time code has been used and cleared from the address bar. So replays show how the interface is used without capturing your project data or credentials. Replay follows the same consent choice as the rest of analytics (off until you Accept on web; on by default in the desktop app). Every analytics event also carries the app version and the build it came from (where the build was made and a short code naming the exact release, the same pair the About panel shows), so a fault can be traced to one specific build rather than a version number two different builds share. Separately from the consent-gated analytics, cloud-connected builds send a once-per-session launch ping (app version + platform) that powers the app's own usage statistics. Likewise, creating an account (by any sign-in method) records a single sign-up event on the server: your account id and which method you used (Google, Apple or email), never your email address or name. It's recorded there because the account itself is created on the server, not in your browser.

What the app stores on this device ​

Everything the app remembers locally, and what clearing it would reset:

WhatWhereWhat it holds
Preferencesbrowser storage (led-fyi:preferences)Language, units, the wiring-sheet colour palettes and the main/backup colour pair, any data-path pattern defaults you saved, your cable-stock presets, and your drawing templates (this browser's copy; when you're signed in they're also saved to your account); see Preferences and Cable stock
Template sync recordbrowser storage (led-fyi:template-sync:…)Which of your template changes this browser has already sent to your account, so changes made offline are sent when you reconnect (cloud builds, while signed in)
Inspector foldsbrowser storage (led-fyi:inspector-sections)Which Inspector sections you've collapsed, remembered per kind of thing; see Interface overview
3D display settingsbrowser storage (led-fyi:previs)Render style, LED look, fill factor, brightness, background, floor, floor size and grid; see Render styles & LED look
Themebrowser storage (led-fyi:theme)System / Light / Dark; see Theme & appearance
Cookie choicebrowser storage (led-fyi:consent)Your Accept/Decline decision
Sidebar statebrowser storage (led-fyi:left-sidebar-open)Whether the left sidebar is collapsed
Autosave slotbrowser storage (led-fyi.autosave.v1)The continuously-autosaved working copy of the open project; see Projects, saving & autosave
Local version historyIndexedDB (led-fyi-vcs)The local project's committed versions, so undo history and versions survive a reload, in the browser and the desktop app alike
Equipment library cacheIndexedDB (led-fyi-equipment-cache)The last fetched copy of the equipment library, so it's available instantly and offline
Sign-in sessionbrowser storage (sb-…-auth-token)Your Supabase session token (cloud builds, while signed in); see Accounts & signing in
First-launch timestampbrowser storage (ledfyi.launched.v1)When the app first ran on this device (cloud-connected builds; used for the anonymous launch ping)
Session flagsession storage (ledfyi.launch-beacon.session.v1)Marks the launch ping as sent for this session; gone when the tab closes
Analytics identifiersbrowser storage + cookie (ph_…)PostHog's anonymous/identified ids, only after consent on web; by default on desktop

Private browsing & clearing site data ​

  • Private/incognito windows: everything works for the session, but nothing persists: settings, the autosave slot and local history are gone when the window closes.
  • Clearing the site's data resets all of the above at once: preferences (including this browser's copy of your drawing templates), theme, 3D display settings, Inspector folds, your cookie choice, the sidebar state, and the autosave slot plus the local version history. Signed in, your templates come back from your account the next time you sign in; signed out, they're gone.

Offline work lives in this storage

When you're working without the cloud (signed out, offline build, or the desktop app before signing in), the autosave slot and the local version history are your project. Before clearing browser data, download a .ledproj copy via File → Download project; see Project files. Cloud-saved projects are unaffected; they live on the server.

Why a setting can reset itself after an update ​

The settings stores (preferences, 3D display, cookie choice) are version-tagged. When an app update changes what a stored setting means (or its default needs to reach everyone), the update deliberately discards the old stored value and re-baselines it to the new default. So very occasionally a preference snaps back to default after an update: that's intentional re-baselining, not data loss. (For the cookie choice, that would mean the banner simply asks again.)

LED.FYI · Make every pixel count.