Cycleway naming, routing and destination problems

Hi, some weeks ago I started to reason about how to improve the mapping of the cycleway network of a city near me (Cremona). In Italy, cycle networks are often called Biciplan, like the one in Cremona. Trying to improve the map, I noticed that there are some problems in naming not well consolidated in the community and important lacks in terms of quality of bicycle routing.

Tell me your opinion, considering that I prefer to do this post (before any modification) because some things can be used worldwide and I’m not an expert.

Starting from naming:

I take for example the Pista/Cycleway 5 “Migliaro-Via/Street Bergamo-Piazza/Square Risorgimento” considering that:

  • is made of ways that are cycleways and cycle/pedestrian paths that don’t have specific names, but they are generally called (also in official parts of documents by the municipality) as cycleway of Via/Street “name”
  • without a name in routing, also if there is a relation, the indications are only “turn left/right”. Not very helpful if we consider that in some European cities (like Helsinki, or in the north of Europe) there are several tunnels and bridges, wrong route can cost a lot of time/energy.
  • the cycleways can differ significantly from the original street
  • we don’t want to invent anything, only be clear

So, I try to propose a tagging criterion that can be seen in the example below as name=Pista n. Via/Street and the name of the street that runs in parallel (or not in parallel but less than 20 meters, this distance is provided by typical junctions’ problems for road crossing on marked zebra and dots).


Google Maps (from my experience) in car routing made extensive use of turn right in Street to/following direction to “…”, while services that use OSM is very rare. I notice a lack of use of tag destination that is used only on highways/motorways or heavy traffic roads. But for a complete indication, it is very helpful also in cycleways even if nowadays it is almost not used at all by routing (sadly). In the example below you can see an example, I used for routing. I add also a destination_sign relation for the right turn as example.

Thank you all and sorry for my base level of English, let me say what you think.



Why does it need to have a separate name and not the name of the street?

The difference on what type of road/path it is is made through the highway key and I see no good reason to put that also in the name tag.

If you think route planners are not doing a good job providing directions, that should likely solved by the route planner. Maybe you should convince them to give the instruction go right onto the Piazza Risorgimento cycleway where that cycleway is based on the highway=cycleway you are supposed to take.

Hi, thank you for your comment. I update the first image to be more clear about the situation. You are right when you say:

But for example in the first image, Picture 3 the cycleway has a deviation from Via Bergamo and crosses other two streets. So calling it only Via Bergamo there is no risk of confusion? Because it seems like two very different paths with the same street name. On the other side, if we don’t write any names and take only the name of the relation can be ambiguous. For example in this case the name of the relation mentions only “Migliaro, Via Bergamo, Piazza Risorgimento”, while (as you can see in the first image, Picture 3) for a segment the cycleway follows other streets. Since both seem somehow wrong, I proposed Pista/Cycleway number + Street name

Attaching the picture here so others can more easily follow it:


I am not sure what should be name of the marked pad or that it even should have a name. For cycling instructions it is for sure not needed, when following Via Bergamo the instruction should be follow the cycle path, a name is not needed.

Mapping cyclepaths in the Netherlands I see often that cyclepaths around a crossing have no name, because there is no name sign and no clear logic on what should be the name. Also isolated cyclepaths often have no name and for cyclepaths along highways the name is mapped in less than 50% of the case I think.

I know enough about cycle routing and a bit about route instructions for brouter, just wondering which cycle route planner do you work with?

Yeah, you get the point. I don’t know well brouter because I tried it on the online version that (I think??) doesn’t display the turn-by-turn navigation but only the route and I don’t have an Android device. Probably a name is not strictly necessary as you say but can improve significantly the navigation (but needs sufficient data on the map). For example the part between Migliaro and the northest part of Via delle Forze Armate without a name on ways in OsmAnd and Cycle.Travel is something like this:


Should be (with name + direction + destination_sign relation and perfect ways separations/cuts), just as an example:

  • Turn right in Cycleway 5 - Via Bergamo following directions to the Center
    When there is an intersection where for example the cycleway makes a slightly left curve and on the right starts another cycle route or there is a tricky cross of other roads: - Continue on Cycleway 5 - Via Bergamo
  • Turn left in Cycleway 5 - Via delle Fiamme Gialle following directions… etc.

I know that this track is not particularly difficult to follow but I guess there are cases with multiple cycleways junctions that can be more tricky. I’m wrong?
To answer your question I don’t have a preference because for example Komoot is excellent but doesn’t provide a turn-by-turn highlight (needed in this case) (same thing for others that use Mapbox). Nowadays I think the more complete is Cycle.Travel but I discovered it only a few days ago searching for solutions for those “problems”. OsmAnd supports the tag direction.

I doubt that. Suppose you are in a environment unknown to you, the place where turn by turn instructions really could help as you do not know the area.

If you do not know the area you for sure do not know the names of the roads/paths and if it is a made up name you will also never find it :wink:

For the example you give I think the instructions given by OsmAnd (upper) are unusable, those by (lower) are perfect.