Road completed

I wonder, why most of my completed streets in my default city do not show up in the list of completed streets and seem to not count towards completing the city. Examples:
Don’t the green nodes indicate that I completed the street? There are no red ones left…
All new runs seems to be counted though. I get new streets (finished and progress) with every run. But streets that I have finished months or even years ago seem not to be registered. My runs are synched from strava without problem. Anyone an idea what I can do?


I was curious, about your issue. But i can’t get a view on that, cos you have all runs as private?

Oh, yeah… I have changed it now. Should be visible now.

I thnik that is something for @JamesChevalier to dive into. i don’t see any cause why this street should not be mapped as completed.

1 Like

Thanks for having a look. :+1: I have dozens of streets like that. Can’t make sense of it…

@JamesChevalier, could you maybe have a look at that? I would much appreciate this! :grinning:

Ah, there we go - I think I just sorted that out for you. Let me know if there’s still missing/wrong data, though. :+1:

1 Like

Hi! Thanks for sorting that out! I just jumped from 3 to over 30% completion! :dancing_women:

I have additional questions, because I don’t know exactly what is an OSM-thing and what is citystrides or how everything is calculated in detail.

  • I have one street for example (Messeweg) that has 65 nodes, and I missed one of them. So I have 98% there. It shows up as complted road though. So is a road marked as completed at less than 100%?
  • Some streets in my city are missing completely in the lists. They do not show up in completed or uncompleted. It seems in OSM they have the attribute foot=no and/or bycicle=no. They are big streets that do have seperate bike and foor lanes though. Is this the default behavior of city strides? Can I do something to correct/change the data, when I come upon something like that?

Sorry for the rookie questions… please refer me to some other posts, that would help me understand all of that! :slight_smile:

Yeah you have to complete at least 90% of the nodes for it to be marked as complete. If you search the forum for “hard mode”, you’ll find a conversation around the idea of requiring 100%.

This post: Overpass Street Query has a link to the sheet that describes my OSM query. It’s basically a search for all “highway” records, with a list of records to ignore (private roads etc). That might help you figure out why some streets aren’t in CityStrides.

1 Like

Thank you very much! I have got something to research now! :slight_smile: :slight_smile: :slight_smile:

My experience with available roads in CS is:

  • street should have a name
  • access should NOT be ‘private’. (nobody wants to go tresspassing)
  • access-foot should NOT be ‘no’. (this should only be streets you actually are NOT allowed to go, and don’t want to run anyway because of law and danger, like real highways)

So if i am running around and find a street in OSM that is private or really dangerous/inaccessible in real life, i change OSM to the real life situation. This will sooner or later be updated in CS. (good luk there James, i hope you have this on top of your prio’s :slight_smile: )

@JamesChevalier: as i messaged you earlier, this issue Inqu has, is also occurring in a run of mine from last week. Street with all nodes on green , but not visible as completed.


I found out why mine are not on completed!
the city i was running in is merged with another city a few years ago. So the ‘new’ city has those streets with all green nodes in 2 places! I need to run both those streets to get completion of course.

would it be possible to script during import from OSM to make 2 streets as separate, when not all nodes are connected? Like in my example. It would mean you have 2 times the same streetname within a cityborder, which of course is also the case in real life.

Can you share links to these street pages?



The cities this is happening belong to Geleen and Sittard. Both are merged to one city in 2001. But still the city didn’t change duplicate street names.

Oh, I see. Thanks for sharing those links - it helped me understand.

There are a number of posts in the forum on the topic, but I couldn’t find anything that clearly describes the issue … I know there’s a description somewhere… :man_shrugging:

Basically, there’s no such thing as a “Street” in OpenStreetMap. Everything is just a collection of “Way” records. It may turn out that a street only has one way record; making that way record the full street. Most of the time, though, there are several different way records that all add up to the full street.
Because of this, and the fact that there’s no relation between the multiple way records, I have to figure out what the full street is – I decided to go with the name field.
I join up all the different way records that have the same name and store that as a single street in CityStrides.

At the moment, I don’t have a way around this issue.

As fas as i understand, a street i a set of nodes that have a relation between those nodes. That is what makes it a street. So if a node only has one connection to anoher node, you have an endpoint of a street.
Is that not a possibility to determine a street with start- and endpoint? because a node by itself is nothing for citystrides, it’s the relation between the nodes that’s what we run.

(could be I don’t know deep enough how that osm → CS combi works)

In OSM, there are no “streets”. There are only “ways”, and a way may or may not be the complete street.

For example, here are three sections of Cherry Street in my hometown:

For CityStrides, I compile all of these (and some more; I couldn’t find all of the ways for this street) into a single Street record: Cherry Street.

Additionally, there is no relation between each of the way records in OSM. So if you’re looking at way/664535375 and way/8766764, there’s nothing that tells me that the two are related outside of the name tag.

So my choice when building CityStrides was either:

  • Stay in line with how OSM handles the data, and have many different “Cherry Street” records in CityStrides
  • Group the way records by the name tag, so that I have one “Cherry Street” record in CityStrides

I have here another part of Cherry street:

Ypou see in the ‘Nodes’ relations that the outermost node [63011658] of this way starts with a connection to another way(-part) with the name Cherry street [Cherry Street (36834373)] and on the other and it has a connection via node [62998577] to the next part of cherry street [Cherry Street (8768620)].
As long as the outer nodes stay connected to another way with the same name you have one street, consisting of all way’s belonging to the streetname.

As my examples give, those to way far from each other, those would then result in 2 streets with the same name.
I can guess this logarythm is too complex to incorporate in the extraction

1 Like