OpenStreetMap logo OpenStreetMap

There has been a recent surge of interest in mapping walking infrastructure in Melbourne. This is very exciting because many parts have been lacking for a long time.

I have been adding some things piecemeal over the years. Recently I have made a more concerted effort to get footpath and crossing data into the Map. Several other users have been doing a huge amount to make this happen.

Here I wanted to briefly share a summary of my approach to mapping these footpaths and crossings. As is custom for OSM, this is not prescriptive at all; just a description of how I am approaching this task. It is based on consistency of edits and consistency with existing and new data.

Footpaths

https://wiki.openstreetmap.org/wiki/Tag:highway=footway
https://wiki.openstreetmap.org/wiki/Tag:footway=sidewalk

I am also including the surface where known. Most footpaths are built of concrete, especially in older suburbs. The next most common would be asphalt, but there are still some unpaved footpaths - even in built-up areas. I think this is important to include for accessibility and route planning.

https://wiki.openstreetmap.org/wiki/Tag:surface=concrete

One important aspect here is that I am mapping footpath ways separately to the crossing ways. Which brings us to…

Crossings

https://wiki.openstreetmap.org/wiki/Tag:highway=crossing
https://wiki.openstreetmap.org/wiki/Key:crossing
https://wiki.openstreetmap.org/wiki/Key:crossing:island
https://wiki.openstreetmap.org/wiki/Key:crossing:markings

Here is an example of a simple T-intersection that shows my general approach to mapping ways for footpaths and crossings separately.

Aerial image of a T intersection in Glen Waverley, Melbourne, showing tags used in OpenStreetMap for the crossing point as https://wiki.openstreetmap.org/wiki/Tag:crossing=unmarked, https://wiki.openstreetmap.org/wiki/Tag:crossing:island=no, https://wiki.openstreetmap.org/wiki/Tag:crossing:markings=no and https://wiki.openstreetmap.org/wiki/Tag:highway=crossing

The reason that I do this is because the width and surface of a crossing can be important for accessibility and route planning. A particularly wide crossing can be dangerous and one with an unpaved or other rough surface can impede or prevent access for many people.

This is the only attribute though that I tag for the crossing way. The remaining attributes of the crossing - e.g. whether or not it has a refuge island - is tagged to the point. In other words, I split the information between the crossing way and crossing point as follows:

Crossing (way) Crossing (point)
crossing=* crossing=*
crossing:markings=* crossing:markings=*
surface=* crossing:island=*

This approach gives richer information than relying only on the way or the point. It also avoids problems. For example, mapping only the point would miss information on the extent of the crossing, and mapping only the way would cause routing issues where the two ways intersect. Avoiding duplicate tags also avoids falling foul of ‘One feature, one OSM element’.

Another point to consider for crossings is not overcomplicating ways. There are many instances where there is a ‘cut’ in a property boundary to make a more direct footpath connection on a street corner. See the example below.

Aerial image of a T intersection of two streets

You could technically map it as below, with separate ways for these triangles.

Aerial image of a T intersection of two streets with footpaths mapped

I prefer to map it as below, without these separate ways.

Aerial image of a T intersection of two streets without footpaths mapped

However, when there is a larger distance and the path is distinctly separate, then I will map this way separately. For example, in this instance below.

Aerial image of a footpath curving separately from the main footpath on the corner of a street

This keeps things simple and consistent. The difference here is so small that I don’t think it’s worthwhile mapping each of these tiny bits of path separately. It doesn’t make the map any less accurate. Importantly it avoids issues when you encounter more complex intersections where mapping every single little bit of path would make it incomprehensible.

One last thing I would like to mention is determining when to include a crossing. I only map those with a defined physical way for someone to cross - usually in the form of a kerb ramp. I believe this aligns with the OSM philosophy of mapping what’s ‘on the ground’.

Technically an able-bodied person could cross anywhere on a street but this is not the physical environment. This is an issue that I’m unsure how to fully resolve. Relying entirely on routing software and these ways for walking would severely restrict routing possibilities for people who don’t need a specific kerb ramp to cross the street.

One way that I am hoping this will be resolved in the future is by adding driveways. With Melbourne’s pattern of development, almost every road and street has a lot of driveways. These often provide connection possibilities that don’t exist with formal kerb ramps, including for people in wheelchairs and with mobility aids. This is especially important in quieter residential streets with very limited crossing infrastructure. People may feel safer crossing at a quieter mid-block location rather than at an intersection.

I’m not focused on mapping driveways in my present round of edits. I feel that this can come in later rounds of data entry, inputted on top of the base of the walking network that we are building right now. Of course there are many other important attributes for walking that should be mapped. This includes kerbs, fences and lighting. But for now I and others are concentrating on creating a solid walking network first, upon which we can add other data.

Please feel free to help out! Large parts of Melbourne have been mapped but there are many others that need to be completed - especially in the eastern and south-eastern suburbs.

Location: East End Theatre District, Melbourne, City of Melbourne, Victoria, 3000, Australia
Email icon Bluesky Icon Facebook Icon LinkedIn Icon Mastodon Icon Telegram Icon X Icon

Discussion

Comment from Tomas_J on 4 August 2025 at 07:27

Hi, referring to your “but there are still some unpaved footpaths”: isn’t this highway=path then?

Comment from Tomas_J on 4 August 2025 at 07:38

What if someone adds the kerb tags at both sides of the crossing way to your solution (https://i.imgur.com/SJWuitU.png)? Then the user blocks also the sidewalks for e.g. disabled people. These kerb tags are often suggested by tool like Streetcomplete and novices often adds them without considering the geometry.

Comment from Tomas_J on 4 August 2025 at 07:44

Do you use footway=link tag? If so, could you explain your approach when and where to use them? I map footways a lot, but I use this tag moreless randomly. Thanks.

Comment from philam48 on 6 August 2025 at 22:02

Thanks @Tomas_J, all good questions!

For unpaved footpaths I rely on being consistent with tags for paths that are next to roads. So I choose to use footway=sidewalk regardless of the surface material: osm.wiki/Sidewalks

Regarding kerb ramps, there have been some of these added. I don’t believe that this creates an issue with routing or mapping and would just add extra information.

Finally, I’ve never used the footway=link tag, sorry. Hope that all helps!

Log in to leave a comment