Kaart: Pedestrian Features

Introduction
This page covers pedestrian ways, features, and their tags, including:
- Classification of ways with pedestrian access.
- Bridleways
- Footpaths
- Trails
- Cycleways
- Bridges/skyways
- Crossing/intersections
- Sidewalks
- Stairs/steps
- Pedestrian areas
- Barriers
Pedestrian ways are routed and rendered differently than vehicular ways. They have specific features that can and often will interact with other areas and ways in the map. Knowing how to identify these features and how they affect the map will help you identify errors and prevent issues that could be caused by them.
Prerequisites
For editing, you will need an OSM account and a basic knowledge of JOSM, ID Editor and Rapid depending on your editor preference. You should already have basic editing sills and knowledge of how tags work, as well as a basic understanding of classifications.
Skill Instruction
Classifications
While pedestrian is a classification of road in and of itself, it is not the only type of pedestrian classification. There are other classifications that have or are specialized to cater to pedestrian specific access.These were discussed in the Kaart: Road Classifications Guide training but for quick reference, the types of roads with pedestrian access are as follows:
highway=living_street |
Pedestrians have legal right of way, really slow speed limits, could be very narrow. |
highway=pedestrian |
Used for wide footways that may allow specialized motor access such as deliveries/emergencies. ex. Boardwalks or street markets |
highway=footway |
Most common type of walking path that can allow bicycles. |
highway=bridleway |
Intended for horse riding but some allow pedestrians. |
highway=steps |
Stairs found on footways or paths. |
highway=path |
Hiking trails, dirt walkways or sometimes small vehicle trails. |
highway=cycleway |
Primarily for bikes. Must add extra foot=yes tag to allow pedestrian routing.
|
Sidewalks
A sidewalk is a footway, often running parallel alongside a road or through a park, that is set aside for the exclusive use of pedestrians. In some instances they may be shared with cyclists and are often segregated to allow cyclists to pass unimpeded. A highway may have a sidewalk on one side, both sides or may not have a sidewalk at all.
A sidewalk can be separated from the roadway by:
- Road markings
- Different paving
- Curbs
- Barriers
- Etc.
Sidewalks might also be some distance from the road and don't always follow a parallel path.
- ex. Gently winding through a park area, branching off from the road to lead to another destination.
There are two primary methods of mapping sidewalks in OSM:
- Map them as separate ways
- Add a tag to the highway
Below, we will go over the differences between the two and how to map them both ways.
How to Map
Sidewalk tagging is very similar to cycleway tagging with the main difference being the tags that are used. Your goal is to best match what is on the ground to improve pedestrian routing. Before you begin mapping sidewalks in an area, remember to check the existing community data/tagging guidelines to see which method is preferred.
Separate Ways
Mapping sidewalks as separate ways is often preferred for several reasons; it provides better pedestrian routability and allows for more detailed, separate tagging from the road (surface tags, etc.), as well as allowing for more accurate representation of the pathway when it may not be perfectly parallel to the road.
To map a sidewalk using this method:
- Use all avaliable imagery to confirm the sidewalk/footway.
- Determine what additional features will need to be added like bridge tags, barriers, kerbs, bicycle access, etc.
- Draw a new way to represent the footway, using imagery as a guide.
- Double check routing to make sure all features are connected and any access tags were added correctly.
Tag on Highway
This method of mapping sidewalks using only tags on a highway feature can be used when the sidewalks are exactly parallel to the road, following essentially the same path. In dense urban areas this method can sometimes be preferred in order to reduce clutter on the map.
To map sidewalks as a tag on a highway:
- Confirm the sidewalks using available imagery, and take note if the sidewalk is on both sides or only one side of the parallel highway.
- Select the highway and add the appropriate tag:
sidewalk:both=*sidewalk:left=*sidewalk:right=*- The direction of the sidewalk(s) is determined by the direction the highway was drawn in OSM.
- Note: The
novalue is only used when there is a specific reason to indicate that a sidwalk is missing. In most cases, simply omitting the sidewalk tag is enough. However, if pedestrians are not permitted, this should be explicitly indicated.
- Verify your tagging is accurate using the Sidewalks and footways(with knobs on) paint style.
sidewalk:left=no + sidewalk:right=yes
|
When a physically separate sidewalk is already mapped parallel to the highway, tagging the sidewalk on the highway itself is optional unless you need to explicitly indicate that a sidewalk is missing.
Note that drawing in sidewalks is usually not required as, excluding motorways, these are an implied feature in OSM. However, adding this information helps improve pedestrian routing.
Combining Methods
In some situations, you may need to combine these tagging methods to accurately reflect what exists on the ground. Just as cycleways can alternate between sharing the road with vehicles and running in their own dedicated lanes, sidewalks can also shift between being part of the road and running separately.
You'll follow the same tagging guidelines as described above, but this time you'll be determining when to use each method and how to connect them together.
To do this:
- Use all available imagery to confirm the sidewalk/footway.
- Identify which parts should be tagged on the highway and which should be tagged as a separate way.
- Split the ways where these transitions take place then add the appropriate tag(s) to each feature.
- Double check your work.
- Verify that everything is connected, that tags are correct, that routing is working as intended, etc.
- Use tools like the Sidewalks and footways(with knobs on) paint style and pedestrian validators to check for mistakes.
|
Foot/cycleways
Cycleways often overlap with sidewalk features so knowing how to tag them is important.
To start off, cycleway tagging follows the same tagging methods as sidewalks where it can be tagged on the highway or drawn as a separate way. The main difference is the tags that are used. It is important to know when to use each method to best represent what is on the ground.
Separate Ways
This method, like with sidewalks, allows you to add additional details to each way. This is often the preferred method because it's easier to maintain each way as a separate entity.
| To map foot/cycleways separately: | |||
| Use all available imagery to confirm the footway/cycleway. | Determine what additional features will need to be added like bridge tags, barriers, kerbs, bicycle access, etc. | ||
| Draw a new way(s) to represent the footway/cycleway, using imagery as a guide. | |||
| Individual ways: | Same way: | ||
|
| ||
| Add additional tags/features as needed to match what's on the ground. | |||
| Double check routing to make sure all features are connected and any access tags were added correctly. | |||
Tags on Highway
This method is used when a cycleway shares the road with vehicle traffic and the sidewalk(s) run parallel to the highway. This also helps reduce clutter on the map.
To add tags on a highway:
- Confirm the sidewalks/cycleways using available imagery, and take note if the sidewalk/cycleway is on both sides or only one side of the highway.
- Select the highway and add the appropriate tags:
- For sidewalks:
sidewalk:both=*sidewalk:left=*sidewalk:right=*- Note: The
novalue is only used when there is a specific reason to indicate that a sidewalk is missing. In most cases, simply omitting the sidewalk tag is enough. However, if pedestrians are not permitted, this should be explicitly indicated. - See the Sidewalks section for examples.
- For cycleways:
- The direction of the sidewalk(s)/cycleway(s) is determined by the direction the highway was drawn in OSM.
- For sidewalks:
- Verify your tagging is accurate using the Sidewalks and footways(with knobs on) paint style for sidewalks and the cycleways setting in the Kaart Style for cycleways.
Note: These features may not always share the same road. it all depends on the surrounding infrastructure/features. Pay close attention to make sure they are tagged correctly.
cycleway:both=* |
cycleway:left=* |
cycleway:right=*
|
Combining Methods
In some situations, you may need to combine these tagging methods to accurately reflect what exists on the ground. Use all of your resources to verify each footway/cycleway to make sure they are mapped correctly.
You'll follow the same tagging guidelines as described above, but this time you'll be determining when to use each method and how to connect them together.
To do this:
- Use all available imagery to confirm the cycleway/footway.
- Identify which parts should be tagged on the highway and which should be tagged as a separate way.
- Split the ways where these transitions take place then add the appropriate tag(s) to each feature.
- Double check your work.
- Verify that everything is connected, that tags are correct, that routing is working as intended, etc.
- Use tools like the Sidewalks and footways(with knobs on) paint style, the cycleway setting in the Kaart Style and validators to check for mistakes.
Unique Scenarios
This section covers scenarios that aren't very common, but are important to know how to tag if you come across one.
Construction
Construction tagging for footways/cycleways is very similar to how you would tag it for a regular highway. The main thing you need to determine is how long the construction will last.
There are two forms of construction tagging:
- Closed
- Partially open
Closed:

- Use available imagery/resources to identify where the construction is and how long it will last.
- Split the way(s) where the construction starts/ends. Make sure the way that aren't under construction are still routable.
- Add the tags:
highway=constructionconstruction=footway/construction=cyclewayopening_date=*check_date=*note=*(as needed)
- Use the graph view plugin to check your tagging/routing.
Note: For short term construction it is better to use a conditional restriction with a note to indicate how long the highway will be closed. For this you would usee the tags: highway=footway / highway=cycleway, (transportation type):conditional=*, note=*
Partially Open:

- Use available imagery/resources to identify where the construction is and how long it will last.
- Split the way(s) where the construction starts/ends. Make sure the ways that aren't under construction are still routable.
- Add the tags:
highway=footway/highway=cyclewayconstruction=minoropening_date=*(where applicable)check_date=*note=*(as needed)
- Double check your tagging and run the validator.
Disused
It's not very common to find disused sidewalks, but there are some cases where this tagging applies.
How to map:
- Use available imagery to verify that a sidewalk is considered disused as well as the reason why.
- Split the way on either side where the way is disused.
- Add the following tags to the
highway=*:disused:sidewalk=*note=*(explain why it's disused)
- Double check routing for the way(s) that are disused to see if they are still being used. If they are, you may also want to include the
sidewalk=notag to disable routing for these features.
Some examples of when this tagging might be used are:
- Cars park on the sidewalk 24/7
- There are various obstruction blocking the path
- The surface is badly damaged/deteriorated and unusable
Restricted Access
This is the most common scenario you'll come across. Knowing how/where to add the correct restrictions will drastically improve routing.
There are two main categories:
- Standard Access Restrictions
- Conditional Access Restrictions
Standard Access Restrictions

foot=no access and one road with a sidewalk:left=yesThese restrictions are simple tags that consistently restrict access in general or to a specific group. It's important to note that a specific restriction will overwrite a general restriction for that group.
How to map:
- use available imagery/resources to identify the type of restriction and where it needs to be added.
- Split ways as needed where the restriction applies. Keep routing in mind for ways that don't have this restriction.
- Add the restriction tag(s) to the ways/nodes.
- Double check your work with the graph view plugin, validator, paint styles, etc.
foot=no:
This tag is commonly used on overpasses, tunnels, ramps, and large intersections where pedestrian access is explicitly prohibited. It helps improve routing accuracy by ensuring pedestrians aren't directed onto roads where walking is unsafe or illegal.
In addition to improving routing, it also enhances pedestrian safety by encouraging the use of designated features like crosswalks, pedestrian bridges, or underpasses.
Conditional Access Restrictions

motorcycle:conditional=no @ (Sa,Su,PH)Conditional restrictions are used to apply access rules only during specific time periods or under certain conditions. These are especially useful when:
- A way is temporarily closed (e.g. at night or during construction)
- A specific group (e.g. vehicles, pedestrians, cyclists) is only restricted at certain times
How to map:
- Use available imagery/resources to identify the type of conditional restriction and where it needs to be added.
- Split ways as needed where the restriction applies. Keep routing in mind for ways that don't have this restriction.
- Add the restriction tag(s) to the ways/nodes.
- Double check your work with the graph view plugin, validator, paint styles, etc.
Crosswalks/Pedestrian Crossings
Pedestrian Crossings
A pedestrian crossing exists anywhere a pedestrian is legally allowed to cross a road. These can be added to nodes and ways.
To add a pedestrian crossing to a node:

- Select the node where the crossing(s) occurs.
- Add the tags:
highway=crossingcrossing=*crossing:markings=*(where applicable)- Additional details can be added to further define the crossing.
- Double check your work by running the validator, using paint styles, etc.
To add a pedestrian crossing to a way:
- Use available imagery to identify where the crossing is.
- Add a new footway using the imagery as a guide.
- Add the tags:
highway=footwayfootway=crossingcrossing:markings=*(where applicable)- Additional details can be added to further define the crossing.
- Add crossing nodes along the footway where the footway intersects with a vehicular way.
- Double check your work by running the validator, using paint styles, etc.
Note: To indicate that a pedestrian crossing is not allowed, simply do not map a crossing at that location. Most routing software will prioritize explicitly marked crossings (e.g. highway=crossing) and avoid areas without them, unless no alternative exists.
If you need to explicitly prohibit pedestrian movement across a way, refer to the Restricted Access section above for details on using tags like foot=no or different types of access tags.
Foot/Cycleway Crossings
Depending on the circumstances, we may or may not want to add a tag(s) to the crossing node when cycleways and footways intersect. Consider the following factors to determine if the intersection should be labelled with the official crossing tags.
| 🟢 Indicators that a crossing node should be added: | The cycleway has foot=no. (or any other tag indicating there is no foot access)
|
| The cycleway intersects with a pedestrian crosswalk footway. | |
| Painted markings and/or signs are present which indicate an official crossing. | |
| When these indicators exist, it is usually because the bike and foot traffic between the two intersecting ways is different/truly separate, and so official crossing tags are justified. | |
| 🔴 Indicators that a crossing tag(s) should NOT be added to the node: | Both the footway and cycleway have positive foot access. (such as foot=yes or foot=designated)
|
| There are no painted markings or signs indicating an official crossing. | |
| When there are no markings and both paths have identical surface types. (For example, the footway and cycleway are both paved with plain sidewalk concrete.) | |
| With these conditions, we can treat the intersection similarly to a footway/footway intersection and leave the crossing tags off, since both directions are open to the same type of foot/bike traffic. | |
| Cycleway crossings:
Crossing node:
| |
Crosswalks
If the crossing is marked or signalized in some way, it is called a crosswalk.
| Below are a few tags commonly added to crosswalks: | |
crossing=marked |
Used on crossings with painted markings on the road. |
crossing=unmarked |
If a crossing is not marked or traffic controlled. |
crossing:markings=* |
|
crossing=traffic_signals(controlled) |
Used on crossings with signals to regulate pedestrian traffic. |
crossing=uncontrolled |
Pedestrians are allowed to cross at their own discretion. |
crossing:island=*(pedestrian) |
|
railway=crossing |
|
Traffic Calming
Some traffic_calming=* tags can be used with crossing tags to further explain the details of that crossing. A good example of this would be a traffic_calming=island. You can learn more about other traffic calming features on the traffic calming wiki page.
How to map a traffic_calming=island:
Identify where the island occurs and how large it is.
- For a small island:
- Add a
traffic_calming=islandnode to the way where the crossing occurs.
- Add a

- For a large island:
- Split the highway for the length of the island (divide it if needed).
- Tag the affected ways with
traffic_calming=island. - If the highway is divided, add
oneway=yesto the ways as needed. - Optionally, you can add the island itself as an area with
area:highway=traffic_island.
- For the footway crossing:
- Extend the crossing footway across the island and split the way on either side.
- Add
highway=footway+footway=traffic_islandtags to the way that crosses the island.
Stairs/Steps
Steps are used to connect two different highway=* features that have varying heights like stairs between building levels.
How to Map
- Use available imagery to identify where the steps are. Add the steps using the imagery as a guide.
- Add
highway=stepsto the way. - For the much wider steps which may be seen as areas, use
area:highway=steps.- Simple area:
- Draw a polygon around the area. Add
area:highway=steps+highway=stepsas a way through the middle of the area.
- Draw a polygon around the area. Add
- Complex area:
- Draw a polygon around the area as well as all the other details that go inside. Create a multi-polygon relation and add
area:highway=stepsto the multi-polygon andhighway=stepsas a way through the middle of the area. - Make sure to connect the multi-polygon to all surrounding buildings. walls, etc. and connect the steps to the polygon where they cross.
- Draw a polygon around the area as well as all the other details that go inside. Create a multi-polygon relation and add
- Simple area:
highway=steps
| |
area:highway=steps
| |
type=multipolygon + area:highway=steps
| |
Pedestrian Highway/Areas
Pedestrian Highways
A pedestrian highway is a road or area primarily intended for pedestrian use, but it may occasionally allow limited vehicular traffic (e.g. deliveries, taxis, public service vehicles). These are typically found in major shopping districts, local plazas, town centers, and similar areas.
How to map:
- Use available imagery to identify where the pedestrian highway is. Add the pedestrian highway using the imagery as a guide.
- Add the
highway=pedestriantag.
|
| |
Pedestrian Areas
Pedestrian areas represent pedestrian zones. These areas often allow pedestrians to travel in any direction while some have a clear direction of travel.
There are two types of pedestrian areas:
highway=pedestrian+area=yes- Routable, multi-directional area.
area:highway=pedestrian+highway=*- Polygon that describes the shape of the area. Not routable without a
highway=*feature going through it. - Common values and use cases for area highways can be found on the area:highway Wiki page.
- Polygon that describes the shape of the area. Not routable without a
How to map a pedestrian area:
- Draw a polygon around the area (closed way or multi-polygon).
- Add:
highway=pedestrian+area=yes(closed way).type=multipolygon+highway=pedestrian(multipolygon).- If
highway=*features, both vehicle and pedestrian, pass through the area map them as usual connect them to the pedestrian area polygon where they intersect. Note: It is optional to extend ahighway=footway/pedestrianthrough the area to improve routing. The area itself is routable, but most routers will route along the edge instead of through the area.
- If
How to map a pedestrian area highway:
- Draw a polygon around the area (closed way or multi-polygon).
- Add:
area:highway=pedestrian(change the value as needed) +highway=*as a way through the middle of the area (closed way).- Connect the
highway=*to the polygon where it intersects.
- Connect the
type=multipolygon+area:highway=pedestrian(change the value as needed) +highway=*as a way through the middle of the area (multipolygon).- Make sure to connect the multi-polygon to all surrounding buildings, walls, etc. and connect the
highway=*to the polygon where it intersects.
- Make sure to connect the multi-polygon to all surrounding buildings, walls, etc. and connect the
Note: A highway=* + area=yes is a routable area in which traffic is able to route omnidirectionally, whereas an area:highway=* is a non-routable shape of a highway=*.
Footbridge/Skyways
There are two types of pedestrian bridges:
- Footbridge
- Skyway
Footbridge
A footbridge, also known as a pedestrian bridge, is a bridge designed solely for pedestrians. The primary definition of a bridge is a structure that connects two points at a height above the ground, but a footbridge can also be a lower structure, such as a boardwalk, that allows pedestrians to cross wet, fragile, or marshy terrain.
Footbridges are very common in communities around the world as they may grant access to points of interest such as health centers, schools, markets, etc.
How to map: These are tagged the same way as bridges.
- Use available satellite and ground imagery to confirm the bridge.
- Split the way at the start and end of the bridge.
- Make sure there is a spacer between the bridge and any intersections.
- Add
highway=footway/highway=stepswhere appropriate as well as the correctbridge=*andlayer=*tag. - Make sure it is connected on BOTH sides so routing will work properly.
For additional information about bridges see the Kaart: Tunnels, Bridges, Fords, Etc. page.
Skyway
Another form of a footbridge is called a skyway. Skyways are bridges that are enclosed between two buildings that provide pedestrians and cyclists with a means of sustainable transportation. These are also common for raised train stations and other pedestrian related features.
How to map
Tagging these can be a little tricky since you're essentially 3D mapping. The most important part is making sure all of the features involved relate to each other. We'll break it up into two parts; buildings and ways.
How to map buildings:
- Use available satellite and ground imagery to confirm the skybridge.
- Draw the polygon using satellite imagery.
- Connect the polygon to the buildings on either side.
- Add
building=bridge,layer=*,building:levels=*, andbuilding:min_level=*- Note: The building level tags function like layers, where 0 is ground level. Both
building:levels=*andbuilding:min_level=*are needed to indicate the range of floors the skybridge occupies and to show which levels it connects to on the adjoining buildings. - Use ground imagery to identify/add the correct
building:levels=*andbuilding:min_level=*tags.
- Note: The building level tags function like layers, where 0 is ground level. Both
In some situations a building=* tag may already be present on the feature. When this happens, you need to confirm if the function of the building matches the value of the building=* tag or not then adjust your tagging accordingly.
| There are two ways to handle this situation: | |
| If the function of the building is incorrect: | |
| If the function of the building is correct: |
|
For more information on layers see the Kaart: Tunnels, Bridges, Fords, Etc..
How to map ways:
- Use available satellite and ground imagery as well as the data to confirm any ways in or that interact with the skybridge.
- Split all ways that pass through the skybridge and connect them to the polygon.
- Add the following tags to way in the skybridge:
bridge=yes,covered=yes(not fully enclosed),layer=*,indoor=*(fully enclosed),location=bridgeandlevel=*.- If a pedestrian bridge is connected to the polygon the
layer=*of the way must match thelayer=*of the polygon. - The
level=*tag marks the floor on which a usable feature (like a footway) is located. In simple cases, this will often match the value ofbuilding:min_level=*(for example, a skybridge starting at floor 2 has bothbuilding:min_level=2and the walkway taggedlevel=2). However, for more complex structures with multiple usable floors, thelevel=*may differ frombuilding:min_level=*to indicate the specific floor the feature occupies.
- If a pedestrian bridge is connected to the polygon the
Note: There are some proposed tags for this feature that apply to more complex tagging which can be found here.
| Example of tags for the footway in the skybridge. |
Example of tags for the skybridge. |
Barriers
A barrier is a physical structure that blocks, prevents movement or restricts trespassing to any determined area such as fences, walls or others. To map barriers in OSM, an editor will add a barrier=* tag to a node or way depending on the type of barrier.
It's important to know what types of barriers will allow pedestrian traffic while blocking other types of traffic and vice versa. Adding the correct type of barrier to pedestrian ways will greatly improve routing!
- Note: You can use the graph view plugin to check routing for barriers and access tags.
To learn more about editing barriers and access tags see the Kaart: Access and Barrier Tags training.
Practical Application
Use this knowledge towards any project that involves pedestrian features. When interacting with the OSM map it is good to know how these features work and how they interact with other feature types. This knowledge can help you to map connections accurately and avoid breaking existing routes.








































