Culverts with level=-1

With this simple Overpass query I discovered that there are many culverts with a level=-1 tag instead of the appropriate layer=-1 tag. Would it make sense to mass edit these tags globally?

I restricted the query to ways with 2 nodes and 3 tags to filter out any possible corner cases, but a broader search could be equally relevant.

Relevant Wiki documentation: tunnel=culvert, layer=*, waterway=*.


You may search for culverts without layer instead of your restrictions to members and nodes.


Excellent idea for a mass edit. Simple mistakes like this should be fine to correct on a global scale, provided you have some experience as a mapper (which I know you do). You have my full support.

1 Like

Perhaps exclude waterway=pressurised and waterway=pipeline if doing a purely mechanical edit? These would likely be mistakenly tagged as well, but could actually be part of more complex hydraulic structures where the tagging is deliberate (power plant/industry with actual levels?)


Total: 5106

Do it.

So, that query currently finds 2893 ways; it requires that they have exactly 3 tags: tunnel=culvert, level=-1 and some value for waterway.

I examined the results, and the only values for waterway that are found are:

  • drain
  • stream
  • ditch
  • canal
  • river

All of which seem reasonable to update.


I don’t want to derail this into an infinite rabbit hole but it may be worth scrutinizing bridge= and a few other tags that are commonly paired with layer=. overpass turbo

1 Like

rivers squeezing thru 82 culverts is worth checking, possible way near spring but still

Edit: And only the 82 caught here because of mistagging with level=-1. There’s likely many more ‘culvert’ in rivers around the globe of OSM.

  1. there are some river-sized culverts

  2. stream that later will enlarge to be river is tagged as waterway=stream

See say Źródła Odry

It is a named stream, considered as source of Odra, later looking like this: Oder - Wikipedia

Have you tried reviewing and retagging sample of them manually?

How many were requiring a different edit?

Haven’t had the chance yet, but this is how I always work. Sometimes I discover many edge cases and I end up not doing any mass edit, and sometimes it’s all the same and I use broader queries to mass edit even more cases.

I’ll let you know when I get to it. Some help here would be appreciated, because a group of mappers can review more culverts than a single mapper can.

It could be a MapRoulette-Challange.

No, because then the bad data will persist forever, because this type of fix is too boring and of a too large scale for MR. Been there, done that.

The edge cases could be a MR challenge after we’ve removed the obvious tagging mistakes.


The first batch of culverts has been retagged: Changeset: 140960804 | OpenStreetMap

I used the query that I posted originally to keep things simple. I checked a couple of clusters of culverts on different continents and couldn’t find any edge cases with this set, so I went ahead and uploaded the changeset.

Future edits can be done with broader searches. More complex cases bring a larger chance of edge cases, so this will have to be monitored before, during and after the mass edits.

Edit: Second batch, this time for simple culverts that also have a name tag: Changeset: 140962068 | OpenStreetMap


Please follow code of conduct for automated edits as per: Automated Edits code of conduct - OpenStreetMap Wiki
And especially: Automated Edits code of conduct - OpenStreetMap Wiki

A “comment” tag to the changeset that describes the changes made in this changeset in a human-readable way. You must also add the tag mechanical=yes (or bot=yes). You must link to the wiki page or user page documenting your changes from changeset, for example using description= changeset tag (e.g. description= Edits/John Doe#Tag Fixup January 2013).*”

This will limit the comments on your change sets and give other users more clarity about what you’re doing.