Proposed features/cycleway hierarchy

From OpenStreetMap Wiki
Jump to navigation Jump to search
cycleway hierarchy
Proposal status: Proposed (under way)
Proposed by: Balchen
Tagging: cycleway:hierarchy=*
Applies to: Way
Definition: A classification of the role/significance a cycleway has in the cycle road network, comparable to primary/secondary/tertiary for highway.

Drafted on: 2022-07-27
RFC start: 2022-07-31


A new key, hierarchy=*, in the cycleway=* namespace that will indicate the significance of the cycleway in the regional cycle road network, mirroring the functionality (if not the actual hierarchy) provided by highway=* for non-cycleway roads.

Intended for ways that are tagged with highway=cycleway or highway=* + cycleway=lane/track.


A road can be classified along two different axes: its technical properties, and its role in the transport network. The current highway key implicitly mixes these two classifications into one hierarchy for general roads, with highway=motorway being a technical description and implicitly signifying the most important role in the transport network, and highway=trunk being the role it has and implicitly guiding towards a technical standard for roads having that role. There are a number of tagged and untagged properties of a road, such as width, lane separation, curve radius, frequency of re-paving, tolerance towards degradation, winter/snow maintenance, right-of-way, practical speed, priority, crossings, etc. that follow from this classification.

The road's classification is used by renderers to filter which roads are drawn at various zoom levels, and by routers to select the best/most efficient/highest quality road to travel on. While there is no guaranteed correlation between technical standard and classification, a correctly tagged classification will reflect the real-world significance of the road in terms of traffic volume, maintenance, quality, and priority compared to nearby roads of lesser classification, and will allow renderers and routers to select the most appropriate roads for the use-case.

For highway=cycleway, this distinction is completely absent, and there is currently no way to tag it. Yet cycle roads are now rapidly developing in the same direction as other roads, and the lack of classification means there is no way to distinguish between them. One highway=cycleway might be of very little significance in the transport network, whereas another highway=cycleway with identical tags is of the highest significance. To render these roads equally on a map means cluttering the map with roads of little significance, at the expense of roads of high significance being hidden. To use these roads equally for routing means guiding cyclists onto roads that are poorly maintained, have sharper curves, less visibility, frequent unmarked crossings, slower speeds, and lower quality of travel, when a much better road (even if it may be longer) is available.

An example is a 13 km long cycle "motorway" under construction in Stavanger, Norway, which is 4.5 meters wide, with two lanes wide enough to pass another cyclist in the same lane, no foot traffic expected (and foot traffic will be prohibited if there turns out to be foot traffic), no level crossings with other roads, wide curves, left-turn lanes, a design speed of 30 kph, and constructed to support 12,000 cyclists per day between two large cities and to and from the region's largest commercial area. Even a significant detour to get to and from this road would be worth the effort instead of using low-priority cycle roads or lanes on the shortest route.

Another example is a cycle road that's 1 km long, runs parallel to a gravel foot path, has sharp curves and sometimes only a few meters visibility, level crossings equipped with cycle barriers to slow down cyclists, doesn't play a meaningful role in the regional cycle network, and is connected at both ends to a combined pedestrian and cycle road.

In OSM today, there is no way to accurately and explicitly distinguish between these two roads. A few of the distinguishing features can be tagged, the majority cannot. The overall significance, quality and role of the road cannot be communicated, because is it a cycleway and not a general road.

A previous proposal using the same terms (Proposed features/Cycle Hierarchy) had a different rationale and a different underlying classification scheme, both based on circulation plans, and sought to explicitly classify a much larger range and variety of qualities. While there's overlap, I don't see that proposal as being the same as this one.

cycleway:hierarchy=* isn't the easiest way to accomplish this. A simpler approach would be cycleway=*, similar to how it is with highway=*. For highway=cycleway, cycleway=primary is intuitive and straightforward. This unfortunately conflicts with some values for cycleway, e.g. cycleway=lane and cycleway=track, which would need to be tagged alongside the hierarchical classification. Specifically for cycle lanes/tracks, the classification of the "car" road network they're on could be very different from the classification of the cycle network. A cycle lane on a tertiary road could easily be a primary cycleway.

A cycleway's hierarchical classification can in some cases be inferred from other tags. If it has lanes=2, segregated=yes, surface=asphalt, the apparent investment put into this cycleway makes it more likely that it is of high significance in the transport network compared to a cycleway with surface=fine_gravel, segregated=no (and no lanes). Still, in the examples I described above, both cycleways would be tagged identically. The distinguishing observable features (curvature, level crossings, design speed, visibility, priority, maintenance, etc) can't be easily captured in OSM, and the major difference in connectivity and network function of the cycleways, such as you could represent with highway=primary, can't be captured at all.

The actual classification of a cycleway would naturally be different from country to country, as it is with highway=*. Official classification, where it exists, is of course the verifiable truth. In the absence of official classification, one may choose either to not tag at all, or follow established national guidelines on how to classify. Road quality would probably contribute significantly to the classification, as in the examples above. The higher the quality of road, the more likely is it that the classification should be high. The connectivity of a road in the network also plays a major part. Tertiary (collector) roads may not differ noticably in quality from residental roads if you compare them meter by meter, but the overall connectivity of a tertiary road is planned so that it plays a more significant role in the transport network than a residential road. A cycleway which is signed as a cycle route, or with signs to destinations, will likely have better connectivity and be more significant in the transport network, than a cycleway with no signage. The length of the road, and how it connects with the overall network, also help in classifying it -- long cycle roads that connect a number of urban areas will have a higher classification than short cycle roads that provide access to limited areas or services.

Cycling routes slightly overlap with the proposed hierarchy, but not significantly or meaningfully. The presence of a cycling route may indicate an intention to build cycling infrastructure in the future, while there may not be any today. A cycling route could be placed on any road, with any infrastructure, with no plans to ever build cycling infrastructure. Some cycling routes are purely touristic, while others are for everyday transport. Cycling routes are often placed opportunistically (they go where there is an adequate road), and so would often follow the cycle road network, but do not contribute towards having a cycle road network. The presence or absence of a cycling route is a poor indication of cycle road's classification.

Another seemingly overlapping concept is that of cycle_network=*. The intention seems to be to capture a cycleway's relation to the cycling network, but instead of classifying its network function, the tag's usage is more focused on capturing the name of the cycle route network or the organization administering the cycle route network. These are two different properties of the cycle network that do not really overlap with the network function of a road. The associated network=* tag has classifications of national, regional and local cycle networks, but again is focused on cycle routes, not road network function.


This is a proposed tagging scheme, and I encourage suggestions. The hierarchy=* key need not be limited to the cycleway=* namespace; it could equally well be a key in its own right, usable for any road.

In selecting the proposed name of the key, other names have been considered. rank=* or role=* could be equally good names (and easier to type). hierarchy=* seems to be the most common way of referring to this type of classification (ref

I propose two different value schemes. One mirrors the current value scheme from highway=*, while the other uses more explicit and easily understandable classifications. Having regional as the currently highest classification allows the scale to be extended as necessary. primary doesn't offer the same flexibility.

Key Value scheme 1 Value scheme 2 Meaning Identifying/typical traits
cycleway:hierarchy primary regional A cycleway between towns/cities, or between major residental/commercial areas. Long, continuous road between major areas. Several of the following: segregated or no foot traffic; divided lanes; wide curves; good visibility; few or no level crossings.

Official classification: belonging to the regional/county main cycle network. Signed as part of the cycle network, with destinations and/or distances.

Example signage:

cycleway:hierarchy secondary district A cycleway between adjoining districts, or connecting a district to a primary/regional cycleway. Long, continuous road between districts or collector cycleways leading to primary/regional cycleways. One or more of the following: segregated or no foot traffic; divided lanes; wide curves; good visibility; few or no level crossings; wide cycle tracks or lanes; compulsory cycle lanes.

Official classification: belonging to the city/municipal main cycle network. Signed as part of the cycle network, with destinations and/or distances.

Example signage:

cycleway:hierarchy tertiary local Internal cycleways in a district, or collector cycleways leading to secondary/district cycleways. Combined cycle/pedestrian roads; narrow cycle lanes; advisory cycle lanes. May end at major destinations such as shopping centres, sports/cultural venues, mass transit hubs, etc. without transitioning to a lower classification.

Official classification: belonging to the city/municipal seondary cycle network. Signed as part of the cycle network, but rarely with destinations or long distances.

Example signage:

cycleway:hierarchy residential / service neighbourhood Cycleways that end in a small residential or commercial area, the final stretch to your destination. Ends in a residential/service road or in a (bicycle) parking area. Through traffic makes little sense.

Official classification: Typically none, but signed as cycleway or combined cycle/pedestrian.

cycleway:hierarchy unclassified unclassified Beyond classification. Gravel paths, narrow strips of asphalt wide enough for one person/cyclist. Makes you wonder why someone tagged this as a cycleway.


Country Sample road Tagging Comment
Norway cycleway:hierarchy=regional
Norway cycleway:hierarchy=district Technically indistinguishable from below example, but providing only inter-district connection and connection to the regional network
Norway cycleway:hierarchy=regional Technically indistinguishable from above example, but integral part of the long-distance regional network
Norway cycleway:hierarchy=regional Technically inferior to all of the above, but still the most important cycleway in the area and part of the regional cycle network
Norway cycleway:hierarchy=district Technically indistinguishable from above example, providing inter-district connection (the first row in this table is the regional network in this area)
Norway cycleway:hierarchy=local Technically indistinguishable from above example, providing local (intra-district) connection
Norway cycleway:hierarchy=neighbourhood Technically indistinguishable from above example, providing access to hospital bicycle parking


Rendering will depend on the use-case. CyclOSM and other bicycle-oriented maps already use different ways of visually distinguishing the significance of a cycle road. This tag allows them to make the distinction more accurately.

Features/Pages affected

External discussions


Please comment on the discussion page.