|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
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 carriagway see: Lanes#Different_maxspeed_per_lane_.28with.2Fwithout_default_values.29
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=*.
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
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=*.
Legal form and source information, country-specific trends
The meaning of the tag source:maxspeed=* to store information about the legal form of the speed limit (see 'legal form' below for an explanation of this) and the way the data was collected (see 'source' below) is recently disputed by some mappers from the UK (see Situation in the UK below). The international, longest standing and mostly used meaning of source:maxspeed=* is to hold information about the legal form of the speed limit.
- 'legal form' information
Sometimes a speed limit is given by a nearby sign with a numeric limit, in others the speed limit is given as a legal category where the actual numeric value is prescribed by legislation. By way of example, the speed on motorways in the UK is not shown as a number, but by a diagonal line which for the time being relates to a particular numeric speed of 70 mph for motorways and dual-carriageways and 60 mph for single carriageways.
Some people suggest that source:maxspeed=* should be used for this, others suggest use of maxspeed:type=*. Whichever tag is used, there is agreement that the form of this data should be of the form <country-code>:<category> where the first two letters (in capitals) form a country code and rest defines the type of the limit. By way of example: use 'DE:urban' for the German limit as used in towns, and 'GB:national' for the 'unrestricted' sign found on motorways and other fast roads in the UK.
- 'source' information
If maxspeed:type=* is being used to hold information about the legal form of the speed limit then source:maxspeed=* can be used to hold information about how the information was gathered. For example source:maxspeed=survey) where the information was collected by a manual ground survey or source:maxspeed=massgis where the date came from an official Massachusetts source in the USA (use suitable text to describe your source). Some people add a date to this, for example source:maxspeed=survey 12 May 2012
Situation in the UK
Some mappers in the UK have subsequently decided to use a different tag maxspeed:type=* for the legal form and use source:maxspeed at object level to hold meta information about how the data was collected. An alternative is also source:maxspeed=*, but generally there is an agreement that source tags should go to the changeset and not to the objects.
Situation in Romania
In a small number of places, notably Romania, the maxspeed tag is used to hold a value of the form '<country-code>:<category>' instead of (source:maxspeed or maxspeed:type).
Country code/category conversion table
Please note, you should tag both, the implied maxspeed explicitly and the source:maxspeed for the reason (sign or country specific area). Commonly used values:
|CZ:trunk||130 (outside city), 80 (in city)|
|CZ:motorway||130 (outside city), 80 (in city)|
|SK:trunk||130 (outside city), 90 (in city)|
|SK:motorway||130 (outside city), 90 (in city)|
|United Kingdom||GB:nsl_single||60 mph|
|GB:national||'unrestricted' (60 or 70 mph depending on road class)|
|UK:national||'unrestricted' (60 or 70 mph depending on road class)|
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.
- Proposed features/trafficzone (for implicit laws and restrictions)
- OSM tags for routing/Maxspeed
- Default A proposal for a default values system. This proposal can set default maxspeeds for areas (countries, states...)
- traffic_calming=* (for constructions that encourage drivers to drive slower)
- highway=speed_camera, Relation:enforcement (for devices that monitor speed on the road)