LightPhotos

Privacy

This site counts visits and browser app usage. Here is exactly where that line sits, in plain terms.

The short version

There are no cookies on this site, no accounts, no advertising networks and no third-party analytics service. Events go to a first-party endpoint hosted by Cloudflare and are stored in our Cloudflare D1 database. We do not send events to advertising networks.

What the website records

When you load a page here, it records the page’s path, the site you followed a link from — the domain only, never the full address — your country, and a daily pseudonymous visitor number described below. It also records a few named events: that a download button was clicked and which platform it was for, and whether the web app finished loading.

The browser app also records folder opens, rating changes, committed edits (including Auto Tone), filter changes, successful exports, and categorized decode or export failures. Startup and first-photo timing help identify reliability problems. First-photo time includes time spent choosing a folder; it is not a decode benchmark. Session length and photo counts use coarse bands. Error messages are never sent.

How visitors are counted without cookies

Counting people normally means giving each browser a lasting identifier and storing it. This site doesn’t. Instead the server takes your IP address, your browser’s user-agent string, today’s date and a random number generated fresh each morning, and runs the lot through a one-way hash. What gets stored is the result — a short pseudonymous string rather than the original IP address.

Because the date and that day’s random number are both part of the hash, the number representing you changes at midnight and tomorrow’s cannot be connected to today’s. So it can count how many distinct people visited on a given day, and it cannot follow anyone from one day to the next. Your IP address and user-agent are used to compute the hash and are then discarded. Neither is written down.

Each day’s random number is itself deleted after two days. That matters: while it exists, someone holding the database could in principle confirm a guess about one specific IP address by recomputing the hash. Once it is gone, that stops being possible at all, for anyone, permanently — including for me. Events themselves are deleted after a year.

What is never recorded

The desktop app makes no network requests

This page is about the website. The downloadable app is a different matter, and the answer there is simpler: it does not talk to the network at all. The code that reports anything is compiled only into the browser build. For the desktop build it does not exist — not disabled by a setting you have to trust, but absent from the binary.

The web app, running at /app.html, does report which features get used — that a folder was opened, that a photo was rated, that an export ran. Those are counts and categories only. The number of photos in a folder is recorded as a rough band rather than an exact figure, and never the folder, never the filenames, never the images. Your photos are read by the browser on your own machine and are not uploaded, in either version.

Opting out

If your browser sends Do Not Track or Global Privacy Control, this site records nothing at all — not even a page view. No banner, no preference to set here. Any content blocker that stops the request will also work, and nothing on the site breaks when it does.

Questions

If something here is unclear or you think it is wrong, open an issue on GitHub.