I've looked at the attributes/tags of the OSM highways but couldn't find any information about my issue.

Is there a way to receive the information which roads (of the OSM highway key) are accessible by pedestrians? I know there is the "pedestrian" value, but I would like to find out ALL roads where pedestrians are allowed to walk (they can not only walk on pedestrian roads, sometimes also on secondardy roads, etc, wich are accessible for cars and for pedestrians both).

Is it possible to get this information using OSM data? Or is there a good workaround?

My area of interest is the country of Austria. My target is to receive all roads where pedestrians can walk...so not only footways...they can also walk on roads which are usually for cars (and pedestrians). Excluded for example should be all motorways (and other roads).

  • 2
    Unfortunately the OSM tagging depends on the data available, and the traffic rules for all countries are not the same. Can you constrain the problem somewhat (e.g. a specific country or area)? Do you want footpaths, sidewalks, tracks in Africa, or is your need more specific?
    – BradHards
    Commented Jul 29, 2016 at 9:32
  • thank you, I have edited and included my area of interest. My target is to receive all roads where pedestrians can walk...so not only footways...they can also walk on roads which are usually for cars (and pedestrians). Excluded for example should be all motorways (and other roads).
    – Duddel
    Commented Jul 29, 2016 at 9:43
  • Can you just choose multiple highway= options, leaving out the ones you don't want?
    – BradHards
    Commented Jul 29, 2016 at 9:45
  • yes, but I was hoping to find a way to avoid that...or at least to find an improved way to do that.
    – Duddel
    Commented Jul 29, 2016 at 9:47

3 Answers 3


You might have a look at the default access rules that are defined inside OpenStreetMap for each country:


You see that all highways tagged as motorway, trunk, bridleway and cycleway are forbidden per se. You can add all highways that have foot=yesor foot=designated (overriding the default above), and remove all higways that have foot=no.

  • 1
    Also drop ways tagged with access=no and not foot=yes. Depending on your use-case you might want to look for additional tags. For example if you want to search for ways that are safe to walk on then skip ways tagged with sidewalk=no or sidewalk=none (values no and none are synonymous) because these ways don't have a sidewalk and people have to walk on the road instead.
    – scai
    Commented Jul 29, 2016 at 12:18
  • thank you for your help. So for accessing the roads for pedestrian-use I actually just need the "foot" tag? For downloading it then you would use an overpass turbo query where you would specify "foot=yes or "foot=designated"? Since I am new for accessing OSM data, how would you define such an overpass query, or would you access this data differently?
    – Duddel
    Commented Jul 29, 2016 at 14:00
  • 1
    No, you need highway, foot, access and maybe sidewalk. Note that motorways usually don't have foot=no, and footways usually no foot=yes because it is implicated. Paths for bicylces and pedestrians along a highway can be tagged as highway=cycleway or highway=footway, allowing the other half with foot=yesor bicycle=yes.
    – AndreJ
    Commented Jul 29, 2016 at 15:48
  • thank you very much Just for my understanding: By default all roads except motorway/trunk, bridleway and cyeway should be available for pedestrians in Austria. So I could download the whole highway key (overpass turbo: highway = *) and then delete all motorways/trunks, bridleways and cycleways. Then I have to delete the exceptions too, where access = "no", "private", "forestry", "customers", "agricultural", "destination?" and where foot="no", "private" and "official?". This should result in all highways available for pedestrians, correct? Or would you download the data differently?
    – Duddel
    Commented Jul 30, 2016 at 9:47
  • 1
    The download is ok, but before you delete bridleways and cycleways, make sure they have no foot=yes or foot=designated. This would override the default restriction. Furthermore: foot=yeswould invert any access=no. I don't think that access=agricultural forestry or destination would imply any restriction for pedestrians. I suggest to visualize the highways on a OSM background with QGIS, and take a closer look on the tag combinations.
    – AndreJ
    Commented Jul 30, 2016 at 11:12

GraphHopper has a grown (read: good ;)) mechanism to return all possible footpaths. So you could write a bit java code to export all geometries or whatever you need:

GraphHopper hopper = new GraphHopper().init(args);
Graph graph = hopper.getGraphHopperStorage();
FlagEncoder foot = hopper.getEncodingManager().getEncoder("foot");
EdgeExplorer ee = graph.createEdgeExplorer(new DefaultEdgeFilter(foot));
// start at the 'random' node 0 hopefully connected to the rest of the graph
new BreadthFirstSearch() {
     protected boolean checkAdjacent(EdgeIteratorState edge) {
          System.out.println(edge.getEdge() + " -> " + edge.fetchWayGeometry(2));
}.start(ee, 0)

(note I'm the author)

  • Thank you for you input. Returning all geometries with a java code would be great, but since I am not familiar with java, it is not really possible for me. (Or is the given code actually all I need?!)
    – Duddel
    Commented Aug 3, 2016 at 8:37
  • Yes, that is all you need (maybe some tweaks here and there as I did not test nor compile it). E.g. copy&paste into the Import file: github.com/graphhopper/graphhopper/blob/master/tools/src/main/… and run ./graphhopper.sh import your-osm.pbf
    – Karussell
    Commented Aug 3, 2016 at 13:36

You can find that information mapped in highway=footway under sidewalk=left;right;both. See also the Sidewalk description in the OSM wiki.

  • 1
    thank you, but using the value "footway" does not lead to all roads which are accessible by pedestrians, it only leads to a part of it.
    – Duddel
    Commented Jul 29, 2016 at 9:40
  • I see. In that case I can't help you, sorry.
    – karpfen
    Commented Jul 29, 2016 at 9:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.