Key:crossing:markings
![]() |
![]() |
Description |
---|
The existence and style of pedestrian crossing markings. ![]() |
Group: crossings |
Used on these elements |
Requires |
|
Useful combination |
|
Status: approved![]() |
Tools for this tag |
|
For the purposes of crossing:markings=*
, 'markings' shall be those markings on the ground meant to draw attention to the area where slower traffic (e.g. pedestrians, horses, cyclists) is to cross the road. The standard for these markings can vary from country to country, but are usually required to be the same colour as the other road markings, in high visibility white or yellow. This is most commonly done with paint or bright bricks.
Values
This tag is most commonly used in conjunction with crossing nodes (mainly highway=crossing
but also e.g. railway=crossing
when the crossing area is marked) and crossing ways (e.g. highway=footway
+ footway=crossing
, highway=cycleway
+ cycleway=crossing
and highway=path
+ path=crossing
).
For the purposes of documentation and discussion, markings parallel to the crossed road should be referred to as 'bars' while markings orthogonal to the roadway should be referred to as 'lines'.
Key | Value | Diagram | Description | Example |
---|---|---|---|---|
crossing:markings
|
no
|
![]() |
The absence of crossing markings at a crossing. Implied by crossing=unmarked . May be useful in combination with crossing=traffic_signals where there is no marking on the ground, but there is a pedestrian signal.
|
![]() |
crossing:markings
|
surface
|
![]() |
A crossing which is not differentiated by high visibility road markings, but only by a change in surface. Depending on the jurisdiction, this may or may not be considered a proper crossing. Additional details can be added with the established tags surface=* and surface:colour=* .
|
|
crossing:markings
|
lines
|
![]() |
Lines on either side of the crossing (U.S.: "standard/transverse"; Canada: "twin parallel lines") | ![]() |
crossing:markings
|
lines:paired
|
![]() |
Pairs of lines on either side of the crossing. | ![]() |
crossing:markings
|
dashes
|
![]() |
Dashed lines on either side of the crossing. Used in some countries (such as Germany) at (nearly) all signalized crossings. | ![]() |
crossing:markings
|
dots
|
![]() |
Dotted lines on either side of the crossing. The dots sometimes are reflectors slightly raised from the carriageway. (U.S.: "dashed"). In former CIS countries used as cycleway crossing markings. | ![]() |
crossing:markings
|
rainbow
|
![]() |
A crossing with rainbow colours, other than in zebra pattern or lines along the crossing. | ![]() |
crossing:markings
|
lines:rainbow
|
![]() |
Rainbow coloured lines along the crossing. | ![]() |
Zebra style crossings | ||||
crossing:markings
|
zebra
|
![]() |
Regularly spaced bars along the length of the crossing. (Called "continental" in the United States.) | ![]() |
crossing:markings
|
zebra:double
|
![]() |
The similar to zebra, but split in the middle. (U.S.: "triple-four") | |
crossing:markings
|
zebra:paired
|
![]() |
Like a zebra crossing but skipping every third bar to avoid premature tire wear. (U.S.: "double-paired") | ![]() |
crossing:markings
|
zebra:bicolour
|
![]() |
A zebra crossing with alternating colours. The colours can be tagged using crossing:markings:colour=* .
|
![]() |
crossing:markings
|
zebra:rainbow
|
![]() |
A zebra crossing with rainbow colours. | ![]() |
Ladder style markings | ||||
crossing:markings
|
ladder
|
![]() |
Lines perpendicular to the roadway along with bars parallel to the roadway. | |
crossing:markings
|
ladder:skewed
|
![]() |
Two lines orthogonal to the direction of the roadway with diagonal bars connecting the two lines. Sometimes confusingly referred to as "zebra" in the United States. | |
crossing:markings
|
ladder:paired
|
![]() |
Ladder-style markings with the bars paired together. | ![]() |
Pictogram crossing markings | ||||
crossing:markings
|
pictograms
|
![]() |
Painted pictogram(s) of pedestrian and/or bicycle (with or without arrows) | |
Unspecified or unknown crossing markings | ||||
crossing:markings
|
yes
|
An unspecified or unknown crossing marking. Can also be used in document any crossing marking which hasn't been documented. |
More values may be documented as they are discovered or invented by governments.
More difficult cases
In the case of segregated crossings for pedestrians and cyclists, this can be tagged separately as cycleway:crossing:markings=*
and footway:crossing:markings=*
.
The color of the markings can be specified using the standard colour=*
scheme (e.g. crossing:markings:colour=yellow
).
Multiple values of crossing:markings=*
can be separated by a semicolon to specify multiple patterns atop each other (see examples below).

Although quite rare, if a crossing has markings which change within a single crossing, one can tag this most precisely by splitting the crossing way and tagging the individual segments with the appropriate value of crossing:markings=*
. The highway=crossing
node should still be tagged with the most prominent value for crossing:markings=*
or simply crossing:markings=yes
.
Examples
Example | Tagging |
---|---|
![]() |
The most accurate way to tag this would be However, simply tagging the markings as Note: Dots refers to the very small markings right besides the zebra bars. The more prominent dashed give-way-lines are a separate feature. |
![]() |
A segregated foot and cycle crossing |
![]() |
A shared pedestrian and cyclist crossing |
![]() |
|
![]() |
|
![]() |
|
![]() |
Artistic crosswalk This crosswalk is painted in various colors, but it isn't a solid marking; the white lines are still required for it to be a legal crosswalk (in the US). |
Where crossing:markings is not appropriate
Buffer markings

These markings act as a painted curb extension for pedestians, somewhat common in Germany.
crossing:buffer_marking=*
was proposed to document this.
See Verkehrswende-Meetup/Gehwege for more details (in German).
Look left/look right markings

These markings should not be included in crossing:markings=*
as they serve a different role from a crossing markings.
No scheme has been proposed to document these (yet).
Software support
Editors and other contributing tools
- iD includes a preset with icons.
- JOSM's standard map style marks crossings with different icons depending on this key. [1]
- The JOSM Sidewalks plugin synchronizes
crossing:markings=*
between the way and node representations of a given crossing. - osm-yolo-crossings sets
crossing:markings=zebra
on crossings that it detects. [2] - StreetComplete asks whether there are markings of any kind. [3]
Renderers
- Straßenraumkarte Neukölln depicts values such as
zebra
andsurface
. [4]
Routers
- GraphHopper considers
crossing:markings=yes
to be synonymous withcrossing=traffic_signals
andcrossing:markings=no
crossing:signals=no
to be synonymous withcrossing=unmarked
. [5]
Possible tagging mistakes
See also
markings=*
- Specifies if a feature has markings in generallane_markings=*
- Specifies if a highway has painted markings to indicate the position of the laneshighway=crossing
- The location of a designated street crossing for pedestrians, cyclists, or equestriansfootway=crossing
- Specifies that the footway is a road crossing- osm-yolo-crossings - AI import tool for zebra crossings