From OpenStreetMap Wiki
(Redirected from Bridge)
Jump to navigation Jump to search
Public-images-osm logo.svg bridge
2014 Karwina, Darków, Most żelbetowy 01.jpg
A bridge is an artificial construction that spans features such as roads, railways, paths, waterways or valleys and carries a road, railway or other feature. Edit this description in the wiki page. Edit this description in the data item.
Group: bridges
Used on these elements
should not be used on nodesmay be used on waysmay be used on areas (and multipolygon relations)should not be used on relations (except multipolygon relations)
Documented values: 10
Useful combination
See also
Status: approvedPage for proposal
Typical map representation of a bridge.
Showing a bridge incorrectly meeting a non-bridge at a junction (left), and terminated early (right).

The key bridge=* is a property to describe that a way is on a bridge. It can be combined with several types of ways such as roads, railways, path canals, pipelines or similar.

The value of the key is used to indicate the type of the bridge. See the detail of the known types below.

Bridge or tunnel? Where the lower feature is surrounded by earth then the lower feature should probably be tagged using tunnel=* instead. It is sometimes, however, a matter of judgment as to whether to tag a particular situation using a bridge or a tunnel. But both options should not be used at the same time (a bridge tag for the upper way and a tunnel for the lower way for the same crossing).

The functional description can be complete with additional tags such as bridge:movable=* and the physical aspects of the construction with bridge:structure=* and bridge:support=*.

Notice that the outline area can be also mapped but with a different main tag man_made=bridge and that, in this case, bridge=* can also be used as a secondary tag to give the type of the bridge.

How to map

Split the upper way at each end of the bridge (which is where it joins solid ground) and add bridge=yes to the central section. It is good practice to not let a bridge terminate at a road junction or similar. The bridge should either end before the junction (the normal situation) or in cases where the junction is actually 'in mid air' itself then the other ways joining the junction should also be made into bridges for the relevant sections.

A ramp at an end of a bridge is not part of the bridge and can be tagged as embankment=*. An embankment should not have a layer tag in most cases.

The portion of a bridge between two of its supports is known as a span. Some bridges have one span, others many. The way in which individual spans are supported is often of mapping interest. Different types of spans (e.g., arch, beam, truss) can be described using the tag bridge:structure=*, while the supports beneath multiple spans and at the end of bridges can be described with bridge:support=* if warranted. It may be necessary to split the way in multiple places along the bridge when the bridge contains more than one type of span. Certain arrangements of spans use bridge=*: see the description below of bridge=cantilever, bridge=trestle, and bridge=viaduct. Other bridges with specialized properties are also listed below.

Some bridges are movable: a span or spans can be displaced, providing a greater overhead clearance for the lower way. Such bridges should be tagged with bridge=movable. As with the architecture of bridge spans, the mechanism by which a bridge moves is often of mapping interest, and can be specified in greater detail with bridge:movable=*. This tag can also be used to indicate bridge spans which once moved and are now fixed shut.


If the bridge has a maximum weight, axle load, or length then add a maxweight=*, maxaxleload=* or maxlength=* to the upper way.

If there are restrictions on the class of vehicles or users of the bridge use the access=* tag.

If there are legal height limits for vehicles using the lower way (passing under the bridge) use maxheight=* - see the key page on which section of the way to put it. For physical height limits use maxheight:physical=*.


Bridges should have a layer=*, for simple crossings almost always layer=1 but other values may be appropriate for complex crossings.

Bridge properties

As the bridge=* tag is a property on an object that isn't itself a bridge (but a road, a railway, etc.), you will have to prefix all additional properties that refer to the bridge with a "bridge:" prefix. Since the introduction of objects which actually represent the bridge (man_made=bridge, it may be preferable to add the properties (without the prefix) to the bridge object and refrain from duplicating them on every thing being on this bridge.


Where the bridge has a name there are a number of options for tagging. The one chosen is partly personal choice but may also depend on the significance of the bridge:

  • When man_made=bridge is used for the bridge outline, it should hold all bridge specific-attributes like name=*, reference, etc. The outline and the name are rendered in the OpenStreetMap Carto style.
  • For the street on the bridge, use the name=* tag as signposted. Typically there are two cases:
    • If the signposting uses the bridge name, this goes into name=*.
    • If the street remains its name, use name=* for the road name. Use bridge:name=* for the bridge name if there's no man_made=bridge.

If the bridge has former names these can be tagged using bridge:old_name=*.

Bridge numbers

A bridge reference can use bridge:ref=*. Not all bridges will have an obvious reference, but for example, navigation on canals frequently refers to bridge numbers that are sequential along a stretch of canal, and the reference is a numbered plate better visible from the canal or towpath than from the road or path passing (usually) over it. These references would be invaluable for any map rendering designed for boaters on the canal.

Here we see the ref, 12-048, circled at the left, and the name, 慈濟三橋, circled on the right.
United States (California):
bridge:name=Merced River Bridge

Tags to use in combination

Don't use the tag building=bridge just for marking bridges (their outlines). For such purposes you can use man_made=bridge. The tag building=bridge refers only to buildings which are used as bridges.

Other features of the bridge can be mapped and/or tagged with bridge:structure=* and bridge:support=*.

If the bridge has former names these can be tagged using bridge:old_name=*. A bridge reference can use bridge:ref=*. When using the proposed relation or man_made=bridge the keys old_name=* or ref=* can be used. Bridges can also be annotated with wikipedia=* and other standard annotation tags. start_date=* can be used to indicate the date on which the bridge was opened for traffic.

Bridges with several roads/ways or additional features

In case a bridge is represented by several ways or carries additional features there are currently two ways to indicate this:

  • With man_made=bridge the outline of the bridge is drawn and the roads/ways passing the bridge are connected to the outline. All bridge-specific attributes like layer, name, reference, etc. can be tagged directly on the outline. In case of bridges with multiple levels the proposed relation bridge has to be used additionally.
  • When using the proposed relation bridge all features of the bridge have to be members of the relation and all bridge-specific attributes can be tagged in the relation. In case the bridge has multiple levels only the relation can be used in order to group together all objects of the bridge.

Outline of bridges

The outline of large bridge, especially those carrying several ways should be drawn using man_made=bridge. The outline should have the same layer as the ways.

Landuse/natural areas around bridges

The ways under and on the bridge should not be attached to any landuse/natural area around the bridge. The outline of the bridge, if mapped as man_made=bridge, may be attached to landuse/natural areas, from the corner at layer=1 down to the point where the bridge starts to spans the air. If the landuse/natural area continues further down, e.g. to a water body below the bridge, it is usually connected to that natural=water body at layer=0. This lower point may actually be under the bridge, which means it is mapped within the bridge outline but not attached to it.

Objects and features on bridges

Node-type objects which are part of the bridge-way are commonly considered to be on the bridge, these do not need an own layer tag.

More complex situations could be handled with an extension of man_made=bridge or Relations/Proposed/Bridges and Tunnels.

Proposed features/Simplify man made=bridge mapping has some related ideas.

Bridges and waterway routing

Bridges are landmarks and can pose significant obstacles/hazards for navigability.



Many types of bridges not listed in the table below can be tagged with either of

Key Value Element Comment OSM Carto Photo
bridge yes way Non-specific bridge tag, possibly combined with other bridge:* tags. Weißenberg - Nechern - Riegel-Mühle 10 ies.jpg
bridge aqueduct way area A longer structure for carrying a canal or fresh water. Consider using historic=aqueduct for significant ancient aqueducts. Pont du gard.jpg
bridge boardwalk way area A plank walkway over wet or otherwise difficult terrain, usually low to the ground and supported by posts. Swampy But Pretty Bog In Fiordland NZ.jpg
bridge cantilever way area A bridge where a span is supported at one end only. Usually, the free ends of two spans are fastened to one another, giving a longer clear span between supports. Hudson River from Waryas Park in Poughkeepsie, NY 2.JPG
bridge covered way area A covered bridge has a roof and fully or partly enclosed sides, usually to protect the bridge deck and members from deterioration. Consider also the combination bridge=*+covered=*. Pont couvert (Routhierville).jpg
bridge low_water_crossing way area Also known as an "Irish bridge", this is a low bridge which is engineered to carry vehicles above water at low flow levels and survive submersion at high flow levels. Consider also adding either ford=yes or flood_prone=yes on low-water-bridges that will sometimes be flooded on a seasonal and/or intermittent basis (see Discussion page). Roanoke River low water crossing.jpg
bridge movable way area Movable bridges contain a span that can be moved up or to the side, often to provide greater clearance for traffic moving beneath the bridge. All such spans should be tagged with bridge=movable. Further information may be provided using bridge:movable=*. The fixed spans should be tagged separately, to make clear which part of the bridge is and is not movable. MovableBridge roll.gif
bridge trestle way area A bridge composed of a series of short spans where each span is supported by a rigid frame, usually called a "bent" rather than a pier. Rattlesnake Trestle.jpg
bridge viaduct way area A bridge composed of a series of spans, often short relative to its overall length. The spans may be arches, girders supported by piers, etc. For ways or features that raise a feature above the natural ground on mounds or earth walls, use embankment=*. Railway Viaduct.jpg

This table is a wiki template with a default description in English. Editable here.

Bridge lifecycle

For bridges that are proposed, being constructed, being demolished, collapsed, the usual lifecycle tagging applies to the top-level tag carrying the bridge=yes specification, i.e. the highway=* or railway=* tag.

For construction, the scheme highway=construction + construction=(highway-type) is most common. For all other stages, the lifecycle prefixes are suitable. To preserve the OSM object history, do not delete an object that is collapsed if any remains are visible in the real world, and/or the object is being reconstructed.

Depending on the situation, when the bridge outline is mapped as man_made=bridge, the lifecycle prefix can be applied as well.


Basic bridge mapping with iD

  • As can be seen in the image below, the primary road stops when it meets the river. So we are going to map the existing bridge over the river on the map below. We are going to attach the bridge segment to the existing road.
Map representation of a road intersecting a water flow.
  • Select the line tool from the top menu.
Select the line tool for mapping.
  • Start mapping by using the line tool as follows:
    • start on one shore, somewhere on the primary road, but don’t start the bridge mapping at the junction of the roads (the bridge should start/end before the junction)
    • drag the line to the other shore, on the primary road, before the other junction of the road
Map the bridge between the two heads of the road.
  • The bridge in this case is situated on a primary road, so from the “Feature Editor” menu we are going to select “Road Features”, then look for primary road and select it.
Select the type of structure we are going to map.
Attributes of the newly mapped structure.
  • Next we are going to add more attributes to this segment of the road that we are mapping as a bridge:
    • Name: is the name of the bridge, in this case the bridge gets the same name as the road that is upon; in other cases the bridge can be “between” the roads (one road at one end of the bridge, another road at the other end of it) - in that situation the bridge can get either of those names, or it can have a specific name
    • One way: if the bridge is used just for going one way or the other (this bridge has both ways, so we don’t check this)
    • Speed limit: is there any speed limit on the bridge (in this case the road speed limit is in effect on the bridge too, and it’s 50km/h)
    • Structure: mapping the structure as a “Bridge”; the layer tag is automatically added with the default value of 1 (typical value for bridges).
    • Access: type of access for this bridge (on this particular bridge all type of access is permitted so we leave everything on yes as default)
    • Lanes: number of lanes. This bridge has 1 each way, so we set lanes=2
    • Surface: choose what type of surfaces is the bridge made of (in this case is asphalt)
    • Road number: the reference number or code of the road; in this case since we are keeping the information for the bridge consistent with the one from the road, we are filling there the national name of the road (DN71).
  • All tags: here are presented all the attributes of the newly mapped bridge
  • to add a custom tag, click on the plus sign (at the end of the list), type the name of the tag and insert a value.
  • Don't forget to save your work!
Save the newly mapped bridge.

Quality assurance

Possible tagging mistakes

If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!

See also


  1. Shaun das Schaf: Fehlerhafte Verbindungen im Straßennetz erkennen. forum.openstreetmap, 2022-06-03 online