From OpenStreetMap Wiki
Jump to: navigation, search
Available languages
Public-images-osm logo.svg lanes
Dscf0444 600.jpg
Total number of traffic lanes available for motorised traffic.
Group: Properties
Used on these elements
should not be used on nodes
may be used on ways
should not be used on areas
use on relations unspecified
Status: Unspecified

Use the lanes=* key to tag how many full-width traffic lanes there are on a highway. To tag individual lanes of a road, see the the article about the :lanes-extension. For tagging cycle lanes see cycleway=*.


The lanes=* key should be used to specify the total number of traffic lanes a road has which are available to motorised traffic wider than a motor cycle.

The following lanes should be included:

  • General purpose Wikipedia traffic lanes suitable for vehicles wider than a motorbike.
  • Wikipedia Bus lanes, that are reserved for public service vehicles (PSV), for example buses and taxis. Additionally to the total number of lanes, consider to tag the number of lanes for PSV with lanes:psv=*, lanes:bus=* and lanes:taxi=*.
  • Wikipedia High-occupancy vehicle lanes (sometimes also called carpool lanes, commuter lanes, express lanes, transit lanes). In analogy with the transport modes from the key access=* they could be tagged using lanes:hov=*.
  • Other lanes such as Wikipedia spitsstrooken in the Netherlands or Wikipedia temporäre Standstreifen in Austria, Germany and Switzerland which are available to traffic at certain restricted times, for example during the rush hour.
  • Longer slip-roads, for example on motorways and other fast major roads. Turning lanes for minor roads are not normally included. See turn=* for further details about tagging turning lanes.

And the following lanes should be excluded:

  • Minor slip roads without a deceleration/acceleration lane, i.e. the main road is wider only because of the intersecting road.
  • Parking lanes. Consider using parking:lane=* to provide further information.
  • Bicycle lanes. Use the tag cycleway=lane for those.
  • Emergency Wikipedia shoulder lanes. See shoulder proposal for further details.

If the number of lanes changes it is necessary to split the OSM way. This should be done as soon as:

  • a new lane has reached its full width, or
  • a lane starts to disappear (usually a merge with another lane)

Remark for data consumers
Many ways have not yet been tagged with the total number of lanes at all points, but only with the number of through lanes of a longer section. Therefore, data consumers can mostly treat the lanes tag as a minimum rather than an exact number.

Extended tagging

Lanes in different directions

If the lanes on a two way road are not distributed evenly between the driving directions, the keys lanes:forward=* and lanes:backward=* can be used in addition to the lanes tag. The key lanes:forward=* hereby refers to lanes which direction is equal to the direction of the OSM way, and lanes:backward=* to the opposite direction.

For lanes, which allow traffic in both directions like e.g. passing and center turn lanes, there currently exists only the proposed suffix :both_ways which would allow the key lanes:both_ways.

See below for some examples of the usage of those keys.

Lanes reserved for specific vehicles

The number of lanes which are reserved for specific types of vehicles can be tagged by suffixing the key lanes with the transport mode from the key access=*, e.g. lanes:bus=1 for a single lane reserved for buses. If it is necessary to specify the direction of those lanes, add the suffix :forward or :backward like in the previous section, i.e. lanes:taxi:forward=1 refers to single lane reserved for taxis in the same direction as the OSM way.

NOTE! The lanes:*= key type can only be used to indicate the number of lanes that are reserved for a specific transport type on a way. It does not and cannot specify which lanes a transport type is restricted to.

If, for example, on a three lane motorway, heavy-good vehicles are restricted to the rightmost lane only, lanes:hgv=1 will not express that meaning! (lanes:hgv=1 means that hgv vehicles have one lane of the motorway reserved for them and doesn't specify which one, either.)

Restrictions for vehicles can be tagged using the :lanes suffix and tagging scheme, e.g. hgv:lanes=no|no|yes would restrict heavy-good vehicles to the rightmost lane.

Restrictions that only apply at certain times and days

For lanes that are restricted for parts of the day only, use the additional lanes conditions tag to indicate when the conditions apply. For example: lanes:bus:conditional=* or lanes:psv:conditional=*. See Conditional restrictions for more details.

Narrow roads

There exist roads, which are two-way roads but so narrow, that vehicles must slow down to pass each other. Besides lanes=* it is strongly recommend in such a case to tag also the width of the carriageway using width=* (Note: do not mistake this with maxwidth). If the width varies a lot, the minimum width of the carriageway should be specified. If it is not possible or reasonable to determine the exact width, use an estimation and tag additionally source:width=estimated, e.g. as follows:


Sometimes on narrow roads passing places exists, which allow vehicles to pass each other (see examples). They can be tagged using highway=passing_place. The lanes-count is not affected by them.

Note: Some people prefer to tag narrow two-way roads with lanes=1.5. See the discussion on tagging. This tagging might not be processed correctly by data consumers. Also see the section Open Issues for this.


Photo Tags Remarks
Residential.jpg lanes=2 A residential road with two lanes. Consider additional tagging with parking:lane=*.
Dscf0444 600.jpg lanes=2
Each direction individually
A dual 2-lane highway represented by two ways (each with oneway=yes).
Narrow road.jpg lanes=2
A narrow two-way road with an estimated width of four metres.
Scotland Kinlochewe SingleTrackRoad.jpg lanes=1 A road with one lane. The passing place should be tagged using highway=passing_place on a node.
HillsideRdCaversham.jpg lanes=3
A road with three lanes, where the middle lane is a center turn lane. Using the proposed suffix :both_ways this could be reduced to lanes=3 and lanes:both_ways=1, because the number of lanes in forward and backward directions are then evenly distributed and need not to be tagged explicitly.
Simpleuklanes middle.jpg lanes=5
Assuming the OSM way runs from left to right
A road with five lanes, whereas three lanes run in forward direction, i.e. in the same direction as the OSM way. The turning lanes should be tagged using turn=* on the way.
Zeitabhängige Busspur.jpg lanes=3
lanes:bus:conditional=1 @ (Mo-Fr 07:00-19:00)
A road with three lanes where the rightmost lane is dedicated to buses at the given time. The merging of the leftmost lane should be tagged with the key turn=*. See the article Conditional restrictions for an detailed explanation of the :conditional suffix.


If for a two way road only the total lane count is tagged and this number is even, it is assumed that the lanes are allocated evenly to both driving directions.

If no lane count is specified at all, a lane count might be assumed as follows:

Tag(s) Assumed lane-count
two way
Assumed lane-count
one way
2 1 If the actual number of lanes is equal to the given assumption, the lane count is usually not tagged.
1 1 If the actual number of lanes is equal to the given assumption, the lane count is usually not tagged.
These should usually be mapped as two separate ways 2 or more The actual number of lanes should always be tagged. However the given assumptions might be helpful for data consumers.

Open issues

  • The number of emergency lanes/shoulders can not be specified right now, but there exists a proposal for those.
  • For lanes running in both directions there currently exists only the proposed suffix :both_ways.
  • Some people use lanes=1.5 on narrow, two-way roads. This is currently under discussion.

Displaying the number of lanes

  • ITO Map offers an overlay for lanes. (There bug in ITO maps, it will count: lanes=4 lanes:backward=1 lanes:forward=3 as 8 lanes, instead of 4)

Related tags

See also