Tracking HSDirs and the version of Tor they run

I realized that there may be people coming here without technical knowledge of Tor and Onion services, an “HSDir” is a Tor node that has information about onion services, e.g. how to connect to them.
HSDirs that run a version of Tor without v2 onion support will not accept the information of a v2 onion. Which means, if all 6 of a v2 onion service's HSDirs don't understand v2, it will be impossible to access it.
You might want to see the How do onion services work? page to learn more.


I made a script* to track how many HSDirs run a version of tor that understands v2 onions. It runs every hour, downloads the current consensus, finds all relays that have the HSDir flag and checks their tor version. If the tor version is 0.4.[6-9] (as of 16 UTC 26th Oct it also includes 0.3.5.17 and 0.4.5.11) it is counted as being “nonv2” otherwise it is counted as “v2”

This is what it looks like as a chart:

But you may want to know what fraction of HSDirs are non-v2:

The fraction to the power of 6 (keep an eye on this one). That is, the chance that 6 (random) HSDirs will not understand v2. If all 6 of a v2 onion service's HSDirs don't understand v2, it will be impossible to access it. Because it is very close to 0, v2 onion services are expected to work fine.

(The line is there, it's just so close to 0 you may not be able to see it)

The charts are self updating, every hour at 30, e.g. 11:30.
The data is available here:

And the source code here

* And then 3 others to generate charts and csv files.