Bulgaria - Add Surface to Highway

Hello Bulgaria community!

I hope you are all doing well. I would like to share another type of challenges that might be an interest to you which is Bulgaria - Add Surface to Highway; the team queried OSM for ways with certain highway=* values where the surface tag was missing. This approach can help you detect and include any missing surface tags on a road network.

This challenge needs the use of appropriate aerial imagery source/s, street level imagery service, and local knowledge to investigate the situation and assign the most appropriate value to the surface key. For small gaps, the value of the surface key on the surrounding ways could serve as a hint.

For further information regarding the challenge, please refer to the Bulgaria GitHub page and MapRoulette challenge description.

You may also be interested in this tool, called RoadRunner, that generates centerlines that can be used to create or realign road geometry, you can check Sofia and even dowanload the whole country and/or us it as a custom background in ID Editor using the following URL: https://roadrunner.innovation.tomtom-global.com/styles/basic/{z}/{x}/{y}.png

Thank you,

1 Like

There was/is already a similar MapRoulette challenge “Add Surface to Highway (Thailand)” by TomTom. The OSM community already expressed that the road surface can’t be determined from aerial imagery in a reliable way. Local knowledge is necessary.

You already state that local knowledge is needed, yet, MapRoulette remains the wrong tool for this task in my opinion. StreetComplete is a way better tool for adding missing road surface information. Yet, you encourage others to add surface information from aerial imagery by promoting a MapRoulette challenge. This feels wrong.

Your other MapRoulette challenge “Add surface to Highway Lesotho and Eswatini” is likewise problematic.


Hi @scai
thank you for the feedback. I will leave this to the Bulgarian community to decide as it is a product of an earlier discussion

Hello @scai

The road surface can be determined from aerial imagery for intercity roads. The only exception is unpaved roads, but this is why we have surface=unpaved. For paved surfaces, we don’t have any public roads that are paved with concrete. Everything that has been built in the last 60 or more years is asphalt. Sett roads are left for historical purposes and they are mainly in cities. In the current Republicn Road Network are ~34 km of sett roads, ~123 km of various gravel roads and ~319 km without any surface. Everything else is asphalt. (https://www.nsi.bg/bg/content/1711/републиканска-пътна-мрежа-според-вида-на-настилката)

Another thing that needs to be noted is that this challenge covers only the main road network (motorway, trunk, primary and their link roads). For most main roads we already have surface data. This challenge has mostly links which can be inferred from the main roads, satellite imagery and Mapilary data.


I agree with @scai that this is potentially risky: I don’t think aerial imagery can distinguish between a gravel road and an asphalt road with the same colour gravel top layer. However @Dimitar155 also has a point: only 1.6% of the republican road network is not asphalt so a high-level link road linking 2 asphalt roads is highly likely to be asphalt paved too. But I’d be very careful when it links to a minor road, or a road with unknown surface…
@Dimitar155 would be interesting to compare the NSI statistics with an OSM statistical query, to see if there are any discrepancies…


You are also right. This is why I’m updating mostly roads where you can be sure that the surface is asphalt (like in places where you have “slip” lanes and roadways that are part of junctions).

It is possible. The only thing that needs to be noted is that the OSM stats below include parts of the municipal road network. nsi_value and osm_value are both in kilometers.

groupByObject osm_value nsi_value diffrence osm_percentage nsi_percentage
remainder (no surface tag) 10967 10967 45% 0%
surface=asphalt 12869 19449 -6580 53% 99%
surface=unpaved 32 32 0% 0%
surface=paved 54 54 0% 0%
surface=ground 50 50 0% 0%
surface=concrete 0 0 0% 0%
surface=paving_stones 0 0 0% 0%
surface=gravel 88 88 0% 0%
surface=dirt 16 123 -107 0% 1%
surface=grass 2 2 0% 0%
surface=compacted 26 26 0% 0%
surface=sand 2 2 0% 0%
surface=sett 7 34 -27 0% 0%
surface=fine_gravel 10 10 0% 0%
surface=metal 0 0 0% 0%
surface=mud 0 0 0% 0%
surface=yes 6 6 0% 0%
Total 24130 19606 4524 100% 100%
1 Like

@Dimitar155 @rhhs :
Do you want me to keep the challenge open?

1 Like

I’m for keeping it.


It can be kept, but not for long: we have to accept that in many cases, it’s not 100% sure what the surface is. Some less experienced mappers might feel pressure to “complete” the challenge or score points while not being sure enough the data they enter is correct. For me it’s low priority (what’s the use of adding surface of link roads when the road it links to doesn’t even have surface tagged…).

Much more interesting would be to contact API (where NSI gets their data from) and see if they would be willing to share their surface data with us. They might be interested in comparing their data with ours so they can improve their data quality, and we could find out from their data where those 6500+ km of untagged asphalt roads are. Maybe they even have smoothness data!

1 Like

thank you @rhhs for the reply, will follow your leads on this one.

Hi @rhhs @Dimitar155

you can message me anytime once you want me to close the challenge

@rhhs @Dimitar155: I will close this soon, do you want to give the tasks a status on MapRoulette?

Maybe they even have smoothness data!

Ако си спомняте проекта Лима на певицата Лилана и едноименното приложение на АПИ. Между всички чудесии и източени ЕС фондове имаше и интересно предложение - да се ползва акселометъра на смартфона и да се записва smoothness на road surface. Това приложение отдавна изчезна, стои неговия клонинг (или оригинал), но май не работи.

This has very low priority for me, so I probably won’t be able to spend time on it.

How can I learn more about this? Do you have a link or something?

This has been mentioned in discussions about smoothness as an objective way to determine differences in smoothness between roads. But it’s hard to assign absolute values to categories (“if acceleration is between x and y, then smoothness=z”) because the measured acceleration depends on many other factors than the smoothness of the road (weight, suspension system, tyre pressure of the car).

АПИ Passport е за служебно ползване от служителите на АПИ. Има си други приложение за останалите хора - https://play.google.com/store/apps/details?id=bg.api.lima. Имат и уебсайт - https://lima.api.bg/. За съжаление няма публични данни за състоянието на пътищата.

Ето и няколко статии с историята на тази сага: