Install & operate

Privacy & data

The visitor id

hash(secret_salt + day + site + ip_prefix + browser)
  • The id changes when the day changes. There is no persistent identifier.
  • The IP is never stored — it is only an input, and the hash is one-way.
  • IPv6 is reduced to its /64 prefix. Privacy extensions rotate the low 64 bits several times a day; hashing the full address would mint a new visitor on every rotation and inflate unique counts. A /64 also identifies a network rather than a device — less identifying.

What we never collect

  • Cookies and localStorage — not used at all
  • Values typed into form fields — only the field name
  • Password and hidden fields — never observed
  • Stack traces — error message, file and line only
  • Session recordings and heatmaps — deliberately not built
  • Visitor de-anonymisation ("which company visited my site") — out of scope

A known limitation

A dual-stack browser may reach the same site over IPv4 on one request and IPv6 on another. Those two addresses have nothing in common and cannot be joined without a cookie — that visitor is counted twice. It is rare in practice (the OS sticks to one family for the life of a connection) but it is not zero, and we would rather write it down than pretend.

Strict mode

For a smaller footprint still, see privacy mode.