Speed limits

From OpenStreetMap Wiki
Jump to navigation Jump to search

Logo. Feature : Speed limits
One example for Feature : Speed limits
Defining speed limits on roads, railways and waterways.

Speed limits on roads, railway and waterways can be tagged together with the position of speed limits signs and infrastructure for enforcing speed limits.

Maximum and minimum speed limits

Maximum and minimum speed limits for a section of road/railway/waterway should be defined using maxspeed=* and minspeed=* on the way as appropriate.

These tags normally holds a numeric value, which should have a suffix giving the units (' mph' or ' knots') unless the speed is in km/h in which case no suffix should be used. Note that it is conventional to include a space between the number and the units, so it would be 'maxspeed=30 mph', and preferably not 'maxspeed=30mph'. For a speed of 30 km/h it would simply be 'maxspeed=30'.

For more information about how to tag speed limits that vary by lane within the same carriageway see: Lanes#Different_maxspeed_per_lane_.28with.2Fwithout_default_values.29

For speed limits depending on the way direction, see maxspeed:forward=*.

Advisory speed limits

In some places there are signposted or implicit advisory speed limits. These speed limits are not legally binding (you do not have to obey to the speed they suggest) but they will typically serve for orientation at which speed you can safely drive and which speed you should expect other drivers to drive there. These can be tagged with maxspeed:advisory=*. In case of additional qualifiers it is suggested that you keep the maxspeed:advisory part intact, e.g. maxspeed:advisory:forward=* or maxspeed:advisory:conditional=*.

In the MUTCD system for the United States and some other nations, these are indicated by yellow, rather than white, speed limit signs.


The position of the actual speed limit signs can be added as nodes beside the road/railway/waterway as additional information. This should be tagged with traffic_sign=maxspeed (or traffic_sign=minspeed as appropriate) and information about the speed limit itself, for example maxspeed=50 for a speed limit sign displaying 50 km/h.

Signs that cancel current speed limits (hence setting the default limit) should be mapped as

Speed limits for specific vehicle type


Fixed speed cameras can be marked using highway=speed_camera as a node at the location of the camera. For average speed limits use maxspeed:enforcement=* (or alternatively enforcement:maxspeed=*) on the way or the Relation:enforcement. For physical measures on the road see traffic_calming=*.



The internal JOSM mappaint style displays maxspeed values tagged on nodes as maxspeed signs. You can also add the map paint style Maxspeed (Preferences -> Map Settings -> Map Paint Styles) and this will show the ways with a maxspeed.

See also