Maybe I'm missing something but (1) I don't think this is GDPR compliant, and (2) why so complicated?<p>Regarding (1),<p><i>> Brute forcing a 256 bit hash would cost 10^44 times the Gross World Product (GWP). [...]<p>> We have rendered the data anonymous to the point where we could not identify a natural person from the hash.<p>> It's possible that GDPR does not apply to Fathom since data is made completely anonymous. Even if GDPR did still apply, we reiterate the stance that there is legitimate business interest to understand how your website is performing.</i><p>This seems to imply a profound confusion between the difference of hashing vs. anonymity. Just because it's hashed doesn't mean it's anonymous! You don't need to "brute-force" the hash, you just need to find a user that matches your hash... which is 1 in 7 billion (or so), much more tractable. This is also the principle e.g. MD5 rainbow tables are based on...<p>They claim to change the hash every 24 hours, so it's equivalent to having a session cookie with 24-hour expiration (session cookies are "anonymous" by their definition, they don't have any user information and they're impossible to "brute force", they "just" <i>enable tracking</i>). I've no idea if 24-hour session cookies are GDPR-compliant...<p>Regarding (2), given that this seems (again, I might be misunderstanding) equivalent to a 24-hour session cookie, why not just do that? However, then you're ... drumroll ... giving control to the user. Why not just <i>give control to the user, period?!</i> For example, by storing the list of pages visited in Local Storage, and only pinging the server once for each page(view) every 24 hours?