From OpenStreetMap Wiki
Jump to navigation Jump to search
Separation features of traffic ways
Proposal status: Draft (under way)
Proposed by: Supaplex030
Tagging: separation=*
Applies to: way
Definition: Specifies physical and non physical separation/demarcation/protection features of cycleways, road lanes and other traffic ways to neighboring traffic users, e.g. to map Protected Bike Lanes.

Draft started: 2020-10-27


Protected cycle path, separated from the flow of traffic by bollards.

The proposed tagging schemas separation, marking and traffic_mode allow for a detailed representation of physical and non-physical demarcations and protections (or the lack of such) for cycle ways, sidewalks, roads, lanes or other ways.

Represent physical protection: The key and namespace separation allows to map physical features like road and lane dividers that separates cycleways, road lanes or other traffic ways from adjacent traffic lanes and users (e.g. between a cycleway and car lanes or sidewalks). The main goal of this tagging is to enable the detailed specification of different types of cycle lanes. Most prominently Separated/Protected Bike Lanes that feature a physical separation like bollards between the cycle lane and the flow of moving traffic (cars, …). In other cases, cycleways might be separated by grass verges, trees or parking lanes.

Represent non-physical protection: The key and namespace marking allows to map road markings, which represent non-physical features that describe the separation of traffic modes. The differentiation between different types of separation and marking (especially solid and dashed lines) can be used in conjunction with the country and its traffic laws to imply legal rules such as compulsory use on cycleways or accessibility for other vehicles. A cycle way can have both separation and marking tags at the same time.

Traffic mode: Separation features and markings are used to delineate different traffic flows from one another. The traffic_mode schema can be used to indicate the type of road users to which the given separation refers. For example: In the case of a cycle path, there is usually motorized traffic to the centre of the road (the left of the cycle way) and pedestrian traffic to the edge of the road (to the right of the cycle way). This can be assumed to be the default traffic_mode (details below). However, in some situations, the spatial layout of traffic flows may deviate from this default, which is relevant for road safety analyses and hard to evaluate indirectly from OSM data and tagging. This is where the traffic_mode schema can be used.

Level of protection: Separation/demarcation/protection elements usually aim to increase traffic safety. An interpretation of which values correspond to a "high" and which to a "low" safety quality or protective status is left to the users. However, the proposed values take into account typical classes of protective elements which, for example, can be passed over more or less easily or not at all by a motor vehicle. Furthermore, it can be assumed that, for example, road markings represent a rather missing protection or that parking cars are associated with the danger of "dooring" (opening of car doors).

Buffer: An other quality of separation and protection can be determined by buffer widths. Consider using tags like cycleway:buffer=* in combination with separation or marking tagging. However, this is not part of this documentation.


Until now there are no documented or common tags for separation/demarcation/protection elements/features. As a consequence, it was not possible to identify e.g. a protected bike lane by a specific attribute (whether mapped separately or a cycle lane at the highway line).

Since not only cycleways but also other lanes can be equipped with elements like this, the scheme is usable for all types of traffic ways.

Especially for cycleways the separation/demarcation from other road users is – apart from factors such as width or road surface – an important indicator for assessing the quality of a cycleway. Whether a cyclist has to expect that cars can drive onto the cycle lane or that pedestrians suddenly swerve onto the path not only has a great influence on the feeling of safety, but can also help determine what speed is appropriate on the cycle path.

It can be argued that objects that are separating, protecting or demarcating different ways and lanes should be recorded separately and therefore do not have to be recorded on the way. But in order to differentiate a Protected Bike Line, for example, from other types of cycleways it's nearly impossible to evaluate separate objects (like bollards along a cycleway) without errors and an appropriate computing effort. In addition, OSM data rarely reveals exactly where other road users are moving in the street cross-section. A separately mapped grass verge next to a road with a non-separately mapped cycleway is therefore a not evaluable information, since the cycleway could be on the left or right side of the green. The separation-scheme offers a simple way of mapping such information precisely and easily evaluable.

Tagging on cycleways

Simple variant

Simple example – mapping separation features only on the "strong" side: cycleway:separation=planter

If the cycleway is mapped on the road line (cycleway=*), add cycleway:separation with a suitable value (see gallery below) to the road line. On separate cycleways (highway=cycleway), just use separation and one of the values below to specify the type of separation.

With this simple variant, only the demarcation to the flowing traffic on one side of the path is specified. This refers to the side towards the middle of the road with the strongest traffic users: For most cycleways usually towards a lane with motor vehicles – in countries with right-hand traffic usually on the left-hand side of the cycleway (vice versa in countries with left-hand traffic). Since on the left and right side of a cycleway there are usually spaces for different types of traffic (motor vehicles, pedestrians...) and these are often structured in different ways, a separation value can be indicated for the left and right side of the way respectively. This is possible with the following detailed variant.

In addition, there are options to specify the type of adjacent traffic: Typically, this is motor vehicle traffic on the side towards the centre of the road and foot traffic on the other side. However, in some cases this is different, for example when a cycleway runs on the other side of the pedestrians or, in rather rare cases, on the other side of the road against the normal flow of traffic. See the traffic_mode scheme below for how such cases can be mapped more precisely.

Detailed variant

Detailed example – mapping separation features on both sides of a way:


  • cycleway:separation:left and cycleway:separation:right, if the cycleway is mapped on the road line (cycleway=*) or
  • separation:left and separation:right on separate cycleways (highway=cycleway) specify the kind of separation/protection of a cycleway on both of its sides.

Note: If cycleways are mapped on the road line (e.g. cycleway=lane on a highway=* feature), the side of the street on which the cycleway is located should be indicated with cycleway:right=*, cycleway:left=* or cycleway:both=*. The separation keys for every side then contains two side indications, e.g. cycleway:right:separation:left: The first one refers to the side of the road on which the cycleway is located (cycleway:right~ in the example), the second refers to the side of the cycle lane for which separation is specified (~separation:left in the example). So on a road with two cycleways (each with two sides) there may be up to four statements:

  • cycleway:right:separation:left for the left side of the right cycleway,
  • cycleway:right:separation:right for the right side of the right cycleway,
  • cycleway:left:separation:left for the left side of the left cycleway,
  • cycleway:left:separation:right for the right side of the left cycleway.

If the separation is the same on both sides, "both" can be used, e.g. cycleway:both:separation:left=no or cycleway:right:separation:both=kerb.

See below for more information and examples of how these side references are used and to which side of what they each refer.

Typical separation values

It is still to be discussed whether it makes sense to combine several values, separated by semicolons. If this would be useful or necessary, different structures should be tagged from the inside (closer to the way of interest) to the outside (further away). E.g. separation:right=kerb;greenery means, that there is a curb on the right of the way, and behind there is a green strip.)

Other values

  • cone – separation by (movable, possibly temporary) traffic cones.
  • bus_lane, psv_laneUse traffic_mode=psv instead (see below).
  • yes – unspecified; should be specified more precisely if possible.

Symbolic separation: marking

marking example – cycle lane with a solid line in a country with left-hand traffic:
(simple tagging variant)

Please note that there is still no generally accepted and widespread scheme in OSM for mapping specific road markings (Experimental but not well developed approaches: divider=*, road_marking=*), but some road and path properties from which (country-specific) markings could also be derived, like overtaking=*, change=* or cycleway:lane=*.

The separation key is intended for physical features that are more than just a symbolic representation like road markings. However, road markings can also contribute to the demarcation of traffic areas, especially if they are particularly noticeable or wide. The key marking can be used in the same manner as separation to distinguish different marking types and for a clear representation of the type of the marking (instead of an interpretation of their meaning, as with cycleway:lane=*).

Indication of adjacent traffic_mode

Cycle lane on the "wrong" side of a street (in a country with right-hand traffic):
traffic_mode example – stand-alone cycle path on a bridge:
A cycle lane separated from the traffic lane by a parking lane:

The layout of traffic flows on the road (especially motor vehicle traffic, bicycle traffic and pedestrian traffic) is similar in most places on earth: Motor vehicles travel on the roadway or its centre; if there is an area for cyclists, it is along the edges or sides of the road; and if there is space for pedestrians, it is on the outer side of the road cross-section. Therefore, it can be assumed for a cycle path, for example, that motor vehicles move towards the centre of the road ("stronger" road users), while pedestrians move towards the edge of the road ("weaker" road users).

In some road situations, however, this standard layout is different, which can be indicated by traffic_mode. In road safety analyses, this indication is valuable to assess the safety quality: For example, if there is no traffic area adjacent to a cycleway, there is no need for separation.

The key and namespace traffic_mode can be used in a similar way to separation and refers to the same side references. The values are based on the access=* scheme – an adjacent footpath can therefore be tagged with the value foot. Here are some typical values and examples:

Common values

  • no – there are no other traffic participants adjacent on this side of the way (and separation for protecting from other road users is therefore not necessary).
  • motor_vehicle – there is flowing motor vehicle traffic on this side of the path. For cycleways, this is the default value on the side towards the centre of the road (left of the cycle path in countries with right-hand traffic, right in countries with left-hand traffic).
  • parking – a parking lane or area.
  • psv – an exclusive lane for public transport like bus or taxi.
  • bicycle – there is a cycle path adjacent.
  • foot – an area of the road intended for pedestrians, especially footpaths. For cycleways, this is the default value on the side towards the side of the road.

Directions of left and right

As a prefix of separation, left and right refer to the direction in which a (cycle)way is used, if it's a oneway (e.g. separation:left: The left side of the way in traveling direction). If it's not a oneway, but the way is mapped separately, left and right refers to the direction of the OSM line feature. For bi-directional cycle path mapped on a highway feature (tagged with cycleway:left:oneway=no or cycleway:right:oneway=no), left and right refer to the direction of traffic in which the path would be used if it were a one-way path (in other words: in this case left and right usually refer to the direction of travel on the adjacent traffic lane).

Cycle paths that are mapped on the highway feature should also be tagged with a side reference that refers to the direction of the line feature in OSM (cycleway:right=* for a cycleway on the right side of the line, cycleway:left=* for the left side or cycleway:both=*). In this case, a separation key can contain two side indications: One for the side of the road on which the cycle path is located (as seen from the direction of the road line) and one for each side of the cycle path itself. If a road has cycle path on both sides, there can be up to four different separation statements. :both can be used as a prefix instead if the information on both sides is identical.

Examples for left and right usage on cycleways mapped on a road way.


Protected Bike Lane
Separated cycle track
Stand-alone cycle track right of a road
(simple variant)
(simple variant)
534c Radfstreifen HB Wachmannstr.jpg
Radweg Eschersheimer Straße Neukölln.jpg
Auf der Schlossbrücke, nach W gesehen.JPG
Separated bike lane - Washington DC (49172814558).jpg

Note: Cycle tracks, but also most Protected Bike Lanes could also be mapped with a separate line, as there is a physical separation between the bike lane and the road.

Tagging on roads, lanes and other ways

This tagging scheme is not only suitable for cycleways, but can also be used on the whole road, individual lanes or other paths. Here are some examples:

M9 motorway Carlow Ireland catseyes.jpg
Radfahrstreifen in Mittellage Holzmarktstraße Mitte.jpg
(see also lanes)

Current Usage on cycleways

As of 2021-10-20, the separation tagging scheme has been used 2.784 times (simple variant: 80, detailed variant: 2.704).

As of 2022-07-20, the separation tagging scheme has been used 6.514 times (simple variant: 462, detailed variant: 6.042).

simple tagging separation=* cycleway:separation=* cycleway:left:separation=* cycleway:right:separation=*
detailed tagging separation:left=* separation:right=* cycleway:separation:left=* cycleway:separation:right=* cycleway:left:separation:left=* cycleway:left:separation:right=* cycleway:right:separation:left=* cycleway:right:separation:right=*

External discussions

This proposal was created after discussions and deliberations in parts of the Berlin OSM community on the mapping of Protected Bike Lanes and detailed cycleway information. The key has been tested and improved on different cycleways there since 2019. A detailed page in German on this topic can be found here. It was reworked in collaboration with the Institute for Transportation and Development Policy (ITDP) in summer 2022 to test mapping practice in cities around the world.

An overpass query for cycleways with this key is available here.


Please comment on the discussion page.