Unless you are sharding multiple redis instances and merging the HLL counts at the end (you need only do this at google scale, maybe not even then), HLL is not the right way to go. HLL has errors of several percent.<p>Instead you should use a bloom filter plus a simple counter:<p><pre><code>    if not bloom_filter.might_contain(user_id):
        count.incr()
        bloom_filter.add(user_id)
</code></pre>
A bloom filter can easily be tuned to have 1e-6 false positive rate (meaning a 1e-6 error rate in the counts). You just can&#x27;t reliably do that with HLL.