From OpenStreetMap Wiki
(Redirected from Tag:tunnel=building passage)
Jump to: navigation, search
Available languages — Key:tunnel
Afrikaans Alemannisch aragonés asturianu azərbaycanca Bahasa Indonesia Bahasa Melayu Bân-lâm-gú Basa Jawa Baso Minangkabau bosanski brezhoneg català čeština dansk Deutsch eesti English español Esperanto estremeñu euskara français Frysk Gaeilge Gàidhlig galego Hausa hrvatski Igbo interlingua Interlingue isiXhosa isiZulu íslenska italiano Kiswahili Kreyòl ayisyen kréyòl gwadloupéyen kurdî latviešu Lëtzebuergesch lietuvių magyar Malagasy Malti Nederlands Nedersaksies norsk norsk nynorsk occitan Oromoo oʻzbekcha/ўзбекча Plattdüütsch polski português română shqip slovenčina slovenščina Soomaaliga suomi svenska Tiếng Việt Türkçe Vahcuengh vèneto Wolof Yorùbá Zazaki српски / srpski беларуская български қазақша македонски монгол русский тоҷикӣ українська Ελληνικά Հայերեն ქართული नेपाली मराठी हिन्दी অসমীয়া বাংলা ਪੰਜਾਬੀ ગુજરાતી ଓଡ଼ିଆ தமிழ் తెలుగు ಕನ್ನಡ മലയാളം සිංහල ไทย မြန်မာဘာသာ ລາວ ភាសាខ្មែរ ⵜⴰⵎⴰⵣⵉⵖⵜ አማርኛ 한국어 日本語 中文(简体)‎ 吴语 粵語 中文(繁體)‎ ייִדיש עברית اردو العربية پښتو سنڌي فارسی ދިވެހިބަސް
Public-images-osm logo.svg tunnel
A tunnel is an underground passage for a road or similar. Edit
Group: Placement
Used on these elements
should not be used on nodesmay be used on waysshould not be used on areasmay be used on relations
Documented values: 2
Useful combination
Status: approved

tunnel=* is used for roads, railway line, canals etc that run underground (in tunnel).

For some grade separated crossings it may however be debatable if the lower way is in the tunnel or if the upper way is on a bridge=*. In general, if the lower way is long and surround by earth it is almost certainly a tunnel; and if the lower way is short and the upper way is supported on concrete, brick on metal pillars / beams then that is almost certainly a bridge. There are however situations where it is a matter of personal judgement, but it is preferred to either tag the lower way as tunnel or the upper way as a bridge but not both.

For covered passages which are open on one side, often ways underneath a building, use covered=* in place of tunnel=*. One exception are landslide/avalanche protectors on mountain roads which are tagged as tunnel=avalanche_protector.

Where the water from a smaller stream, drain or even cattle crossing passes under a way structure or a building consider using tunnel=culvert in place of the tunnel=yes used for larger tunnels for roads or railways or canals.

For a structure that carries water or another liquid some considerable distance then it may be more appropriate to tag it as a pipeline using man_made=pipeline.

Power cables (power=cable) buried underground should not be tagged as tunnels. The location of a buried cable may optionally be tagged as location=underground/underwater. However if the cable is located inside a self-supporting tunnel it may be tagged as tunnel=yes. Such dedicated power tunnels are sometimes found in large cities.

How to map

Showing a tunnel that continues to the junction on the left (wrong) and that is terminated before the junction on the right (correct).
  • split the way in question at the points were the tunnel starts and ends and add the tunnel tag. It is best to avoid having a tunnel continue to a junction that is not in a tunnel by splitting the way prior to the junction.
  • most tunnels should be tagged with layer=-1 or another suitable negative value (exception: tunnel=building_passage). For metros/subways or other very long ways it is often convenient to use layer=-2 to accommodate underground passages for pedestrians between the tunnel and the surface.
  • Where the approach to the tunnel is in a cutting this can be identified with cutting=yes. Note that a layer=* tag is not desired on a cutting or embankment unless there are several layers of objects that need to be differentiated.

tunnel=building_passage should not normally have a layer assigned as there is no clear above/bellow relation to the building but a layer may be required when there are several layers of building passages.

It may also be useful to add maxheight=* and maxwidth=* if there are publicised restrictions and use access=* if there restrictions on use by certain classes of vehicle or user.

If the tunnel has a name this can be specified using tunnel:name=* although there is still some debate on the best method to include a name of the tunnel as discinct from the road/railway etc that goes through it. lit=* can be included to provide information about any lighting in the tunnel (or not).



Ways that go through a building and have walls to all sides should be tagged with tunnel=building_passage.

  • the building and the way should have shared nodes at the entry and exit points of the building.
  • the way is split at the entry and exit nodes and only the part covered by the building is tagged with tunnel=building_passage.
  • the layer should be the same as the layer of the building, with the above mentioned exception when several tunnels are passing on different levels. So if the building doesn't have a layer tag, the way should not have one either.

When building_passage should not be used:

It is not meant to be used for indoor mapping. The walls at both sides (and the top) of the tunnel are considered outer walls of the building, which can have entrances that lead into it (This proposal doesn't cover entrances inside building passages). For indoor mapping highway=corridor or indoor=yes can be used. It is also not meant for ways that go through something else than a building.


A variant of covered=arcade is tunnel=avalanche_protector and should be used in case of tunnels alongside mountains. These constructions stand for themselves and are not attached to a building. Their purpose is to protect the highway or railway from avalanches and landslides. Use avalanche_protector:left=open or avalanche_protector:right=open to define which side of the way is open ("open" in case of avalanche protectors means, that light and air can enter on that side).


tunnel=yes, tunnel=building_passage and covered=yes are rendered by the default OpenStreetMap styling.

See also