Highway Tag Africa

From OpenStreetMap Wiki
Jump to navigation Jump to search

Typology of Road Network in African countries

From my experience coordinating the Activations in Democratic Republic of Congo and Mali, I wrote in early 2013 the Mali Highway Tag wiki page to correct contributors missinterpretation of roads classification with lighter infastructures, often unpaved roads damaged in rainy seasons. From discussions with Humanitarian OpenStreetMap Volunteers on the HOT list, the page was enhanced and we decided to renamed it to Highway Tag Africa as it represented well the context of African countries. Pictures were also revised to better represent the african context. This page is now largely used outside of Africa where it better correspond to the reality of the road network.

Before you make modifications to this page, you are invited to come and discuss on the Hot (en) or Hot-Francophone (fr) Discussion lists.

Pierre Béland


The road conditions in African countries do not always correspond to their economic and social role. A road typology should be based on the road importance and not on the surface or the visual appearance of a road. In some areas, major roads are unpaved and heavily damaged during the rainy season. It is important for remote mappers from other countries to adapt to this reality. In some areas, such as the Sahel, it is also important to consider the density of the road network.

This highway typology is used for African countries and other regions in Asia or Latin-America with similar characteristics. It is based on mapping experience in various countries, observations and discussions with NGO's and OSM communities in various countries. In some areas, there is a very dense network of roads with many tracks going in all directions. In such a context, it is important to have a hierarchy of roads that highlights the more important ones for economic activities. highway=tertiary is used to highlight roads interconnecting with regional service towns. Also, highway=unclassified corresponds to minor roads. It is important to distinguish these rural roads interconnecting villages from tracks going to the outskirts of villages or service roads (ie. private roads) going for a short distance to houses. Please note that a highway=track is not a more primitive construction class of a residential road, if you're in doubt of what tag to use, use highway=road, keeping in mind that many highways are formed by repeated foot and animal traffic.

The individual mappers should classify a particular road when adding it to the OSM database. Once the network of road is completed, we have an overview of the road network, and experienced mappers can then revise this network and ensure that the hierarchy of major roads is clearly established.

This is open to suggestions, please share your experience/practices from other countries. To communicate, use the Hot (en) or Hot-Francophone (fr) Discussion lists.

Note: South Africa has an active OSM mapping community and uses additional tags

Values based on economic and social dimension of the road

The Highway tag reflects the economic and social dimension of the road. See below for details of commonly used values.

JOSM iD editor Description Rendering Photo
highway=motorway Motorway A restricted access major divided highway, normally with 2 or more running lanes plus emergency hard shoulder. Equivalent to the Freeway, Autobahn, etc. Rendering-highway motorway carto.png
20190825 Autostrada A4 w Krakowie 0957 5675 DxO.jpg
highway=trunk Trunk Road The most important roads in a country's system that aren't motorways. (Need not necessarily be a divided highway.)

Note that such roads can be unpaved ([1][2][3] or were unpaved until recently [4])

Note that communities in some countries such as Morocco decided to define it by relying on physical characteristics and trunk roads there are not forming complete network.

Rendering-highway trunk carto.png
EA highway trunk.jpg
highway=primary Primary Road Major transportation routes between and into major cities within a country.

Passable by vehicles with 4 or more wheels, engineered alignment. Motorcycles, bicycles, or foot traffic may be restricted.

Indicative info only - can vary. Width: 5 to 20 meter; often paved.

Rendering-highway primary carto.png
Ea highway primary.JPG
highway=secondary Secondary Road Major transportation routes connecting cities and large towns.  Arterial function in urban areas.

Passable by vehicles with 4 or more wheels, motorcycles, bicycles, or foot and animal traffic.

Indicative info only - can vary. Width: 3 to 7 meters; may be paved.

Rendering-highway secondary carto.png Ea highway secondary.JPG
highway=tertiary Tertiary Road Major transportation routes connecting towns and larger villages.  Collector function in urban areas.

Passable by vehicles with 4 or more wheels, motorcycles, bicycles, or foot and animal traffic.

Indicative info only - can vary. Width: 3 to 7 meters; may be paved.

Rendering-highway tertiary carto.png South of Kalangba en route to Outamba-Kilimi Park.JPG
highway=unclassified Minor/Unclassified Road Minor collector roads that allow travel and commerce from paths and residential roads to and between settlements. While generally not residential, there can be houses along the road.

May be passable by vehicles with 4 or more wheels, motorcycles, bicycles, or foot traffic.

Indicative info only - can vary. Width: 3 to 7 meters; may be paved.

Rendering-highway unclassified.png Ea highway unclassified.JPG
highway=residential Residential Road In urban areas or rural villages, roads which serve as an access to housing, without function of connecting settlements. Often lined with housing.

May be passable by vehicles with 4 or more wheels, motorcycles, bicycles, or foot traffic.

Note: this has been edited from the original which said "This tag is used only in urban areas and only on roads which serve no other purpose than residential. " as the East African tagging guide continues to say.

Indicative info only - can vary. Width: 3 to 7 meters; may be paved.

Rendering-highway residential.png Ea highway residential.JPG
highway=service Service Road Mainly Private Driveways or access roads to homes or businesses for a few hundred meters maximum, does not have a through connecting function.

Passable by vehicles with 4 or more wheels, motorcycles, bicycles, or foot traffic.

Indicative info only - can vary. Width: 3 to 7 meters; may be paved.

Rendering-highway service.png
highway=track Unmaintained Track Road Access route from dwellings to agricultural and forestry areas. Roads within National Parks and Game Reserves may be tagged as tracks. No connection function between settlements.

May be passable by vehicles with 4 wheels, motorcycles, bicycles, or foot traffic.

Indicative info only - can vary. Width: 3 to 7 meters; may be paved.

Rendering-highway track.png EA highway track.jpg
highway=path Path Travel route between dwellings, settlements, or water sources, and for livestock movement. May be the primary access route for isolated settlements. Connection way by foot within an urban area.

Not passable for vehicles with 4 wheels. Steep grades, narrow width, irregular alignment, obstacles, boulders, stream crossings, and seasonal use.

Note: A metal roof arrives by vehicle therefore roads to settlements with metal roofs are typically unclassified or residential (not path)

Indicative info only - can vary. Width: 1 to 3 meters; not paved.

Rendering-highway path.png Ea highway path.JPG

Road surface status

One can indicate the physical surface of the road with the surface tag:
Generically, a hard surface (asphalt, cobblestone, concrete...) is indicated with surface=paved and a soft one (ground, sand...) with surface=unpaved.

Description can be more precise:


By default, primary/secondary/tertiary/unclassified/residential and service highway=* are supposed to be paved. If it is not the case, one must mention it, especially if the surface is soft. When potholes represent more than 50% of the surface, the way may be considered as unpaved.

In opposite, highway=track are supposed to be unpaved by default.

In addition to surface material, on can indicate "viability" or "roughness" of the road with smoothness=*. This should help determining which kind of vehicle may use the road or the track.

Value Description
excellent billiards
good Usable with racing bike
intermediate Usable with city bike, sports cars, scooter...
bad Usable with trekking bike, "normal" cars. One can not exclude potholes.
very_bad Usable with car with high clearance. Typically with 404 bachée. "Normal" cars can't go through.
horrible 4Wheel drive only.
very_horrible 4Wheel drive cars can't go through or it is very difficult, with help of winch. Usable with tractor, ATV, motorcycle, zebu carts.
impassable No wheeled vehicle. Road damaged for instance.

A suggestion would be to smoothness only when it is equal or lower than bad.

Seasonal roads

Seasonal roads are indicated by seasonal=yes. In opposite, one can indicate that a road is usable year around with seasonal=no.

An approximative closing period can be provided with a conditional restriction [5]:
access:conditional=no @ Dec-Apr: this track is usually closed from December to April (or open from May to November).

For the more complicated case where a track may be usable by 4Wheel drive car during dry season but only with zebu carts in rainy season, the following scheme is suitable:

River crossing

When a road is crossing a river, whatever it is with a bridge, an organized ford ("radier", "baden") or natural ford, it should be tagged on the portion of the road affected. If the crossing section is too small (or difficult to separate the two ends), we put the information only on one point.


Bridges are tagged by default with bridge=yes and they should always also have a layer=1 tag. Practically the only case where another bridge=* value is used is when the bridge is very low (ie. has a low profile) and is regularly submerged under water during floods or rains. In such cases it should be tagged with bridge=low_water_crossing.

The bridge surface, especially if different from the main road, can be indicated with surface=*. For instance, surface=metal, surface=concrete, surface=asphalt or surface=wood.

In addition to the surfaces described above some bridges have (wood) beams oriented in the drive direction so that there is only two narrow ways for the wheels. It is a problem for bicycles and motorcycles that can not cross such bridges:
surface=wood:lanes if beams are made of wood

Finally, for some bridges, you should carry your own beams, one may use surface=no.

If the bridge is prone to flooding, i.e. water may run over it during floods or heavy rains, a flood_prone=yes tag should be added.

As noted above some lower profile bridges are built intentionally so that they are submerged during floods or rains and are tagged with bridge=low_water_crossing. This tag alone implies that the bridge may be submerged at times but the flood_prone=yes tag is good to add also on these for clarity.

In some cases there is an alternative way for the crossing near the bridge. Such crossings (whether they be for trucks, bicycles or motorcycles -- or even regular cars) should be mapped. They involve a ford (ford=yes) in almost all cases. A number of these crossings are built intentionally -- even if the ford itself would be a natural one -- not only for trucks (when the bridge is too light-structured for them) or two-wheelers but also simply as an backup passage for all vehicles in case the bridge might be washed away in more severe floods. This is why such alternative crossings are important to map!

Other crossings

Fords: River or water crossings without a bridge are fords and should be tagged with ford=yes. This applies to both natural and constructed ("organized") crossings. depth=* allows to indicate the usual (dry season, out of flood or hurricane) depth of the water. depth=0 will be used for crossing usually dry but that may be used upon water. In opposite, a crossing usually dry that become dangerous to use once water is flooding should be tagged as flood_prone=yes. surface=* can be used as usual. A constructed/"organized" ford is often made of concrete and should be tagged surface=concrete, accordingly.

Note that if any structure exists that allows normal level water of any waterway (river, stream or drain) to pass under the road it is not a ford! It might well be a bridge=low_water_crossing as explained above -- or possibly a culvert if there is a single tube under the road under 3 meters in diameter. Culverts are tagged on the waterway which is split as bridges for only the part that crosses the road and tagged with tunnel=culvert and a layer=-1 tag.

For river crossing with boats, use: route=ferry

Multiple Paths

In some areas, there are no formal paths, but several unpaved paths example very close to each other (within 100m) that all lead to the same destination or town. As of now, practice has been to add a way to the centermost or average of these paths. previous discussion]

Some examples

Example of secondary highway tagging in Sierra Leone, West Africa.

See also