Out of curiosity, I pulled some statistics on the US Rail network. This does cross into a bit of Canada and Mexico where the GeoFabrik extract approximated the boundary.
level_crossing TOTAL 232167
crossing TOTAL 8231
Rail_Bridge 47232
Rail_Tunnel 16394
Highway_Bridge 70811
Highway_Tunnel 8972
Total Layer Crossings 143409
A bridge or tunnel is counted as a single occurrence no matter how many rail lines are included. Each marked crossing node is counted, so a fully mapped rail yard could contain many crossing nodes.
For a closer look here is a breakdown of the top 20 categories of level_crossing - the first column is the type of ‘highway’, and the second column is the type of ‘railway’ in OSM:
residential rail 112659
service rail 29171
tertiary rail 26789
secondary rail 16717
unclassified rail 12732
track rail 10058
primary rail 6734
residential disused 1628
residential light_rail 1547
residential tram 1413
trunk rail 1122
tertiary light_rail 1114
secondary light_rail 1059
service light_rail 676
residential abandoned 660
primary light_rail 517
tertiary tram 493
service disused 435
tertiary disused 372
residential Unknown 371
residential preserved 353
A type of ‘Unknown’ usually means that a node that joins ‘highway’ to ‘highway’ is marked as type level_crossing for example.
Similarly, here are the top 10 ‘crossing’ types:
footway rail 2984
footway light_rail 2083
path rail 881
cycleway rail 762
footway tram 565
path light_rail 116
cycleway light_rail 96
footway miniature 86
footway preserved 62
residential rail 56
service rail 34
Note the presence of ‘residential’ and ‘service’ which are either newly incorrectly marked ‘crossing’s or a rail crossing at the junction of ‘residential’ and ‘path’ for example.
To see the complete breakdown to perform custom category groupings, obtain the raw .CSV files from Rail Crossing Counts
Discussion