Classification of Cycle Paths

  • bicycle=yes => a cyclist is allowed to use this way
    e.g. a shared use way
  • bicycle=designated => the way is marked with a traffic sign.
    a cyclist is legally obligated to use this way
    others are not allowed to use this way
    (if not signd explicitly otherwise)

I think this difference exists in many countries, if they have cycleways at all.
The tagging is international, but legal implication might slightly vary by country.

bicycle=no, expresses never to use this road with a bicyle.
To tagg bicycle=no on every road with an adjactend cycleway would be wrong. There are occasions where you must / are allowed use the road instead the cycleway:

  • the cycleway is impassable (snow, debris, obstacles, construction, …)
  • the cycleway does not lead to your destination
    (e.g. a crossing is not reachable from the cycleway)
  • a group of cyclist is allowed to use the road instead of the cycleway
    (this might depend on loacl legislation)

If you tagg a road with bicycle=no you are (under any circumstances) not allowed to use this road with a bicycle. But this is perfectly wrong if the road ist not marked with a traffic sign stating “never use a bicycle”.
Please don’t try to urge german Mapper to use your wrong NL tagging practice.

PS: There sould be no problems with router, for they should allways prefere cycleways. No need to look for a nearby road.

Edbert (EvanE)

@EvanE: +1

One disadvantage of the bicycle=no Tagging is that it can produce subtile errors like this one:,53.24343&end=8.17287,53.24061&pref=Bicycle&lang=en&noMotorways=false&noTollways=false

Here the bicycle=no on the main road prevents the ability for cyclists to cross the road at this point.


Well …thanks for clearing this. I thought that in Germany (like in NL) there was a law that forbids cyclist to ride their bicyle on this road when there is a cycleway (blue shield with bicycle) next to the road (in all situations) . If I understand you correctly it is still allowed to cycle these roads (in some suituations) . In that case ofcourse a bicycle=no would be wrong although one might argue about what is the best tagging. Tagging the mayority of the situatioins versus all possible exeptions . All I am saying is that IF it is not allowed to cycle a road just add a bicyle=no so no router/renderer will make a mistake. And … I am not urging you to use NL tagging practice (which is not so wrong for our situation :wink: ) . I am just trying to understand German mapping practice (and why it is confusing when it comes to cycleways)

Sorry but I do not agree. If I ask a router to serve me the shortest possible route I still l hope it will direct me over roads that are allowed cycling on. Not just cycleways.

I’m not familiair wit this situations but… the routing would have been the same even if the Raifaissenstrasse has a “bicycle forbidden” sign. The problem here seems to be a mapping error which seems to fail to connect the “Moorweg” and “An der Brucke” in such a way that routing goes OK. If the Bing image is correct i would have used 2 seperate ways connecting these 2 roads. A bicycle=no on the Raifaissenstrasse would in that case not interfere routing.

You did understand correctly. I think the biggest problem with cycleway-tagging in germany is that most people don’t know those differences. So even if there would be an clear definition on how to tag them, mappers would also have to learn to tell these. Also any definition about this would either make more than 50% of the cycleways in germany tagged wrongly or required an additional tag (but maybe both of them would be better than the current situation).

Besides that, there are people out there who want to avoid suchs streets, where they would have to use a Segregated cycle facility (Radverkehtsanlage) (but Cycleways without an nearby street would be acceptable to some of them).

In this example one might have mapped it in a simpler way, wich connects “Moorweg” and “An der Brucke” directly.
But the problem of two crossing with a small offset remains and is not uncommon in reality and our data, since we have good aerial imagery.

Edbert (EvanE)

BTW: This is another argument for separate the access tag from cycleway: a mapper can add a cycleway and if (s)he know the sign/law, (s)he can also add bicycle=*. If not, the next mapper can add this tag.

If I ride a special bike, in NL all bicycle=no tagging on road is wrong. It is better to introduce a new tag! (…instead use the same tag for different sign/law.)

Tagging the nearby road additional to the cycleway would be nice for routers: If I don’t like to cycle on a cycleway, i can ignore those roads with new bicycle tagging.

I guess you are right and I also think that an extra tag could solve this issue. I understand there are 2 type of roads thatt are forbidden for cyclist
1 road with a bicyle-forbidden sign (in all situations)
2 roads that ar forbidden for most situations except some … (eg a road next to a cycleway that is compulsary.)

Current situation in Germany :
Number 1 gets a bicycle=no
Number 2 does not

The current problem with bicycle routing is that most routers will not always avoid number 2 for ordinary bicycles. Whenever I cycle in Germany I use a Garmin device with an OSM based map. Very often the route goes over a road (number 2) on which I am not allowed to cycle. Here is an example (I hope it is a good example because I am not familiar over there)

If a bicycle=no would have been added, routing would be OK … but…I now understand this is “not done” in Germany. I still wonder how I should tag roads/cycleways in Germany in such a way that I will not be sent on roads that do not allow (ordinary) bicycles.

I like rayquaza’s idea to give number2 a bicycle=no and in addition add a new tag so that we can tell the diffence between the 2 type of roads. How about something like “special-bicycle=yes” . If you have any other suggestion to improve bicycle routing please tell.

You can eventually use bicycle=avoid or bicycle=limited for the type-2 road.
Both tags are used ca. 100 times in the OSM DB.

You are right. In NL we have more or less the same situation as in DE. I aggree that although it is quite normal to add a bicycle=no on a number2 road in NL it is not 100% right because of the special bikes. But still… I think it is better then the absence of the bicycle=no because in that case routing will not be perfect for normal bikes and special bikes. That’s why I also think OSM is better of with a new tag to separate the 2 types.

I have a special bike (Velomobile) which allows me to ride the number2 typ roads (at least in NL). Nevertheless I do not really mind that number2 type roads are tagged with a bicycle=no because it is not always safe to ride these with a special bike. Many car drivers do no know this and think I am breaking the rule. Besides… my special bike has 3 wheels so it is … definitly not a bicycle :wink:

I not meant to use bicycle=no with an other tag, but maybe something like bicycle=if_you_cant_get_to_the_intersection_via_a_forced_cycleway_or_if_the_cycleway_is_unusable (well, maybe with a shorter value) for the road and forced_to_use_this_cycleway=yes (again: maybe with a shorter key) for the cycleway. I’m currently using “de:rwbp”=yes for the latter (RWBP stands for “Radwegbenutzungspflicht”, translated something like “legal obligation to use a cycleway”).

Routers could first try to find a route with using all of those ways and if they found a route over the street check if nearly the same route (maybe turning on the same crossing with an maximum detour of 10% and without using another road more than 20m?) is possible via a cycleway (also checking the cycleway for i.e. width=* to check if it’s usable for this specific vehicle).

It’s not always the type of bicycle, often there is a intersection which you can’t reach without to use the road. (this also said EvanE and rayquaza)


bicycle=no is tagging for router. Better to use i.e. bicycle=avoid, and if this tagging is common, router will use it too.

this tag is bicycle=designated :slight_smile:

Thanks. I also think 1 tag is better then adding a new one. I understand you use the rwpb when there is no common tagging but I prefer a more international tagging because routers/renderers already have enough problems with different taggins scheme’s between countries. Let’s see if we can find a better one.

+1 . All we need to do is make sure we use the right tagging then routers will come up with the best route :wink:

This tag is contrary to your own wiki page.

In Germany there are ways with sign 240/241 more or less parallel to a road and the same rights of way as the road. These ways you have to use.

Then there are ways across country with these signs, which only say that there are allowed bikes and foot only. In narrower sense this signs are incorrect by-law.
Fact is that these sign are there and therefore you must distinguish the tagging of the ways.
For ways which you have to use I tag: cycleway=track/lane + bicycle/foot=official + …, the other: highway=path + bicycle/foot=designated.
There are other possible taggings, but you should use only one IMHO. Necessary is an agreement which to use, but this is the problem.

Ok thanks. I just wonder… how can you tell which part of this road is OK to use in that case? Are there any signs telling it is OK to use it? Can someone give an example (google streetviewe maybe?)

If there is a smal part of the road that can be used for a bicycle wouldn’t it be better to give only this part a “bicycle=yes”?

+1 but I do not know which is better. I can only find this documentation on Avoid but that does not seem to be what we are looking for. It looks very subjective to me. More opinions on what tag to use?

That depends on the definition one uses for a bicycle ;).

+1 although I am not convinced Avoid is the right tag.

No, there are no signs telling you this (maybe that’s why most people don’t know about this).

An example: The highway=track wich goes from this intersection to the northeast. It has an combined cycle- and footway sign at this intersection, but as you can see on the map it is not “strassenbegleitend” (“along the street”?). However, if you approach this intersection in reality you can’t see this (except you’re just comming from the north :wink: ).

Another example where one has to use the cycleway, even though it is complete nonsense: At this roundabout (driving from the south to the north) one has to take the cycleway on the left(!), continue on it to the first exit and enter the roundabout there (from Dietmar-Hopp-Strasse). Again you can’t see that the cycleway isn’t going to your exit, but that doesn’t matter here, since you can still leave the cycleway in time.

And an third example: The Track on the west of this intersection. It isn’t signed as an cycleway but we consider it so for this example (such intersections with an cycleway instead of the track exist, but I don’t know exactly where). If you want to turn into the residential to the east you would be allowed to use the road. But again, you can’t see this from where you can enter the cycleway (oh, and besides, that would mean the whole road would be bicycle=yes, but one would still have to take the cycleway if he want’s to use it completly).

The problem is that it’s nearly impossible to notice all of them…

If there is no cycleway (benutzungspflichtig) then you can use the road. There is no biycyle=yes necessary.

No, there are no signs. An Example are here:,51.1085121&end=7.3813174,51.1066232&pref=Bicycle&lang=de&noMotorways=false&noTollways=false
The cycleway has no connection to the intersection from the secondary street. So you have to leave the cycleway before and turn left like cars do.

An other example is this:!Radwegführung_Knotenpunkt.svg/500px-Radwegführung_Knotenpunkt.svg.png
If a cyclists want turn left, he always can choose the direct way over the road, or use the cycleway straight over the crossing and then use the other cycleway (or push the bike over the footway) if the traffic light tell green.

bicycle=yes don’t work, because a cyclist can turn left to a highway=service + service=driveway (the red footway is a not segregated cycle- & footway):,51.1388425&end=7.2972607,51.1375819&pref=Bicycle&lang=de&noMotorways=false&noTollways=false
So if you want to tag some parts with bicycle=yes, you have to tag most parts of roads!

Furthermore, the bicycle=yes is redundant, because a normal road allows to cycle.

Thanks Masimaster and Rayquaza for the examples. Althought Rayquaza’s examples all seem te be tracks I still get the picture. I’ve aslo seen that Wolmatinger has added some FIXME’s on these tracks so maybe a local mapper could fix this.

I did not know this. This will make my cycling trips in Germany a bit faster :wink:

I think you are right. I also think this is what Wolmatiger means. I guess I was thinking of roads next to compulsary cycleway. If those roads would get a bicycle=avoid (tag to be discussed) for those parts were a policeman could give you a fine you could add a bicycle=yes just for the parts of the road were it is OK to use a bike. You could still say it is redundant but maybe you can compare it to the next situation. In NL many cycleways are oneway and are also tagged as oneway=yes. For this reason some mappers use a oneway=no for cycleways that can be used in 2 directions. Just to make sure no one accidentely maps these as oneway. This oneway=no is also redundant but prevents athoher mappers from accedentaly mapping these as oneway. Sometimes it is just a little part of the cycleway that is 2-way but if it was mapped as oneway it would be wrong and also affect bicycle routing.

So what do you think of the next conclusion?

  1. All roads with a “cycling forbidden” sign get a bicyle=no
  2. All (parts) of a road next to a compulsary cycleway (blue sign) were you could get a fine by a policeman when riding a normal bicycle get a bicyle=avoid (tag to be discussed)

This would improve bicycle routing I think. What do you think? Could this work in Germany or am I fighting windmills :wink: ?

This would be a “non-local” part of a routers cost function and all the tagging you need for that is already there, but this is nearly impossible to implement and not a single router is doing stuff like that.

This is why I share the opinion that an extension of the tagging scheme is neccesary to allow correct routing via local cost functions.

No extension needed here. Remind that a road with cycling not allowed does not neccesarily need bicyle=no. motorroad=yes implies bicyle=no, and check against bicyle=dismount.

+1 for that

The windmills you are fighting is the “All (parts)” remark. It should be made clear that this is not a strict access rule and that it is NOT necceary to fiddle with the “edge-issues” around crossings. If a router has no other choice than routing through a 5 Meter section of bicycle=avoid than he should just do it.

Thanks. It’s difficult to be clear and 100% correct. I guess this scheme could be the guide for when to add bicycle=no.

I’m glad you like this. I guess it would greatly improve your “routing engine” for cycling (normal bike) and give the oppertunity for routing for special bikes/ groups of race cyclists

+1 although I think some of this issues can be solved with a little “better” mapping.

It looks like response for this proposal is not overwelming. Reasons I can think of are:

  1. It could be that many agree/disagree but don’t say so
  2. The english language of this thread keeps some away from responding/reading
  3. Some don’t like me as a foreigner interfering in German tagging

I thinks it’s best if I try this proposal in the Dutch forum with many active cyclists. In NL it is not allowed (yet?) to cycle these roads with a group of race cyclists but… discussions about this are alive. So maybe if the law changes the proposal will get more support :wink:

If someone wants to start a thread about this proposal (in german this time)… be my guest.