From OpenStreetMap Wiki
Jump to navigation Jump to search
Public-images-osm logo.svg railway = tram_level_crossing
RU road sign 1.5.svg
A crossing between a tramway and a road. Show/edit corresponding data item.
Group: railways
Used on these elements
may be used on nodesshould not be used on waysshould not be used on areasshould not be used on relations (except multipolygon relations)
See also
Status: de facto

A tram level crossing (where a road crosses a tramway on the same level - i.e. without a bridge). Sometimes has warning lights and barriers or gates [1]. Most of crossings do not have barriers, but in many countries marked with specific road sign.

In some countries traffic codes have specific rules for motor vehicles crossing tramways, different from railways. For example, in Russian Federation prohibited to have a u-turn and overtake other cars on railway crossings (while you may do it on tram crossings). However, tram almost always has priority over other vehicles on tram crossings, so it would be useful to mark such places (e.g. for warnings in navigation systems).

The more common tag railway=level_crossing is used for level crossings, sometimes including tram crossings.

How to map

Use this tag on a node node. The node should be the one common to both the highway and the tramway.

Tags to use in combination

  • crossing:markings=* to add information about the type of markings on the ground
  • crossing:signals=yes/no whether there are traffic signals for pedestrians crossing the tracks


Example sign Image Description Tags

RU road sign 1.5.svg
Example of a tram level crossing sign (Russia)

Tram level crossing. Special traffic rules for tram level crossings apply, which are different from other level crossings.

If there are any traffic lights which do not only rule the level crossing should be mapped separately. (see below)

Zeichen 201-51 - Andreaskreuz (stehend) mit Blitzpfeil, StVO 1992.svg
Example of a level crossing sign prioritizing the railway (Germany)

Signed level crossing. Traffic rules for road vehicles are the same, regardless whether the railway is a main line (railway=rail usage=main), branch line (railway=rail usage=branch/…), light railway line (railway=light_rail), tram line (railway=tram) or any other type of railway. It is likely that a motorist cannot even tell the type of railway when approaching this crossing.

Tagging this correctly is important because it may affect routing.
If there are any traffic lights which do not only rule the level crossing should be mapped separately. (see below)

regular traffic signs for motorized traffic

No difference is made between motorcars and tram cars, they all behave like equal road users. No explicit tagging of the intersection node is necessary.

Depends on the situation. For example highway=give_way or highway=stop on a node node which is part of the road. the node is placed in front of the intersection, at the place where vehicles need to stop.

Traffic signals without a sign that points out the presence of the tramway


Traffic is ruled by traffic signals.

on a node node which is part of the road. It is placed at the position where vehicles need to stop.

on a node node which is part of the railroad. It is placed at the position where tram cars need to stop.

No additional tags at the intersection node of the road and the tramway. For additional tram signal tagging see OpenRailwayMap.



This has been adopted by iD in 2020 at 2.18.5 https://github.com/openstreetmap/iD/blob/release/CHANGELOG.md#2185 together with preset for railway=tram_crossing, now appearing alongside railway=crossing & railway=level_crossing. At that time number of use where really low and only did rise because of a QA check. This was seen as controversial by some from debate in Talk:Tag:railway=tram_level_crossing here, as recorded in ID/Controversial_Decisions#Tram_crossings.

See also