The number that would always say 100%
There is no returning-visitor figure anywhere in Stats4U. It is not missing because nobody got round to it. It was built, run once against real data, and taken back out on 27 August 2026, because the number it produced was 100.0% first-time visits — and it would have said that for every counter, every day, forever.
The reason is one ingredient in a hash.
The day is one of the ingredients
Counting visitors without a cookie means giving each visitor a name that the service can recognise for the rest of the day, and never again. That name is the first sixteen bytes of a SHA-256 hash, and it is made from five things: a secret salt, today's date, the counter's number, the IP address, and the browser's user agent.
The date is in there deliberately. It is what makes the pseudonym expire. Take it out and the same person carries the same name from one visit to the next, indefinitely — which is not a smaller version of a cookie, it is a larger one, because nobody can clear it and nobody is asked.
What the query actually returns
The table currently holds 17,717 rows, covering three days across 742 counters. It also holds 17,717 distinct hashes.
Those are the same number. Not one hash occurs twice. So the query that would have filled the dashboard box — same counter, same hash, seen on more than one date — matches zero rows. First-time visits: 100.0%.
That is not a quiet day or a small sample. It is three days of ordinary traffic, and the answer is structurally fixed. It would read 100% on a counter with a million loyal readers.
It is not a bug that can be fixed
The fix, if you wanted the number, is to take the date out of the recipe. That single change turns a daily pseudonym into a permanent identifier: a cookieless supercookie, invisible, unclearable, and derived from data the visitor did not hand over on purpose. The number would then be real, and it would have been bought with the exact property that made the counting defensible.
There is a second reason it could not work anyway. The table is kept for two days. Everything older is deleted by the nightly cleanup, so even a stable hash would have nothing to compare against by the time it mattered.
The neighbouring question, which does have an answer
"Do they come back" is unanswerable here. "Do they go deeper" is not, and it is measured from data that already exists: hits and visitors per day, per counter.
Across those same three days that works out to 2.93, 2.89 and 2.36 pages per visitor. That is a real measurement of a real thing, and it moves when the site changes, which is the whole point of putting a number on a page.
Why this is worth a post
A box reading "100% new visitors" does not look broken. It looks like a finding. Somebody would have redesigned a homepage over it.
The failure mode is specific and it is common: a number that is an artefact of your own storage format, presented as a fact about the world. The only defence is to run the query once, look at the answer, and ask whether it could have come out any other way. Here it could not, and that was the end of the feature.