Well, it's my site and I can host whatever (legal) content I want on it, it's akin to having cameras in my store. Similarly, people can choose not to visit the site.
Maybe it's not commonly understood but that is what is happening regardless. Being at home when reading content versus in public doesn't make any analogical sense because the internet is not a physical space, so it should have no bearing on your expectation of privacy if you visit someone else's site.
Same with cameras in stores then, there is no expectation of privacy when entering a store, and similarly, there is none when visiting someone's server and website.
As already stated: most people are unaware of and do not expect this level of intrusive behaviour tracking. I don't think I can be any clearer on this point.
I'm just stating that the justification is not "because everyone else does it," because you could say the same about stores. That is why I mentioned that they are not "clearly very different situations" as you said, they are the same situation; one is going to a place that is not theirs so they have no expectation of privacy. Just because one is in cyberspace and the other is in meatspace doesn't mean that they are necessarily different in analogy.
That people know about this type of tracking with stores and do not with websites is not my problem, and at best, they should be educated about that, and indeed we have laws against this exact thing, such as CFAA, and no judge will let you off the hook just because you said it was in cyberspace and not meatspace that you invaded someone else's servers. Therefore, both are analogously the same.
That is correct, people not knowing about CCTV is not the problem of the store. At best, they could have a sign stating so but are not obligated to do so.
It actually would be quite difficult for adblockers to block 1st party scripts if I just embed the tracking into my JS bundle. At that point the adblocker would have to deobfuscate the code and block selective parts of the JS.
Only if you self host or proxy all of the tracking requests. Otherwise, the tracking will occur but get trapped in the browser. The moment your code tries to send the request to hotjar or any other domain, it's blocked.
Yes, hence why I said in my initial comment that I'm looking for a self hosted version, mostly because Hotjar is bloated and has unnecessary amounts of extraneous JS that slows down the page.