Key:maxspeed
|
Maximum speed allowed on the current road, railway or waterway.
Restrictions
source:maxspeed=*
Used combinations in
|
The maxspeed=* tag is used to define the maximum legal Speed limits for general traffic on a particular road, railway or waterway.
Note that It may often be advisable to travel at a significantly lower speed that the legal maximum. See Proposed features/Practical maxspeed for a (rejected) proposal to tag the practical driving speed. Also that some classes of vehicle are subject to additional speed restrictions (for example commercial vehicles, mopeds etc are subject to lower maximum speed limits and are often also speed limited below the maximum legal speed limit in many countries). These lower blanket speed restrictions should not be tagged using maxspeed.
Values
- See also: Speed limits
The units should reflect the units in which the speed limit is legally defined and specified, ie km/h in most places other than the UK and USA where mph should be used. Numeric units can be used even where the speed limit is defined in some indirect ('implicit') way, for example where the 'national limit' sign is used in the UK to represent a speed limit which varies with road class (70 mph for motorways and dual carriageways and 60 mph on other roads outside built up areas).
Common values include the following.
- <numeric value> - for situations where the legal maximum speed limit is specified directly or indirectly in kilometers per hour.
- <numeric value> mph - for situations where the legal maximum speed limit is specified directly or indirectly in miles per hour.
- <countrycode>:<zone type> - an alternative method to the above where the specific the speed limit for a particular country and zone. Use uppercased codes from the ISO 3166-1 alpha-2 standard. For example
- IT:urban - the urban limit in Italy.
- RO:rural - rural road in Romania.
- signals - where the legal maximum speed varies according to traffic/time or weather and is displayed an on electronic speed limit signs above the road.
- none - for situations where there is no fixed limit, such as on Autobahns in Germany and in the Isle of Man.
Advocates of this 'country code/zone' method for situations where a speed limits are not specified by a numeric sign argue that the maxspeed values in OpenStreetMap will not have to be modified if the rules within a country change. Advocates for always using a numeric value argue the downstream systems are more likely to use the correct numeric value if it is defined in the maxspeed value than in some additional table.
For roads without maxspeed taggin the OSM tags for routing/Maxspeed article has details of maximum speeds for different classes of road.
Additional tagging
The source:maxspeed=* tag can be used to indicate what speed zone is in force where a numeric value is being used.
Minimum speeds can be specified using minspeed=*. See Traffic enforcement for a discussion on how to tag system limit enforcement infrastructure.
The traffic sign itself can be mapped as a node with traffic_sign=maxspeed:100).
There is a proposal that where the speed limits in each direction is different then this can be tagged as maxspeed:forward=100 or maxspeed:backward=80 mph. See talk page of this article for further discussion.
There is a discussion of how to tag seasonal speed limits (in Finland for example) on the talk page of this article.
There is a proposal that where different speed limits are specified for different classes of vehicle then this can be tagged using the vehicle class within the tag. For example maxspeed:hgv=40. See talk page of this article for further discussion.
There is a proposal (See Proposed_features/Practical_maxspeed) that where the actual practical speed limit is lower than the signed speed limit then maxspeed:practical=* can be used in addition to the maxspeed tag.
It has been suggested that maxspeed=walk should be avoided because "walk speed" does not have the same meaning in different countries. See maxspeed=walk proposal which suggests using less implicit values like maxspeed=GB:walk or maxspeed=DE:living_street.
Examples
- maxspeed=100 + source:maxspeed=sign - speed limit is 100 kilometres per hour as defined by a sign showing a numeric value.
- maxspeed=60 mph + source:maxspeed=UK:nsl - speed limit of 60 miles per hour based on a "national speed limit" sign in Great Britain
- maxspeed=signals + source:maxspeed=sign - the maximum speed limit varies according to signs over the road.
- maxspeed=none + source:maxspeed=DE:motorway - there is no fixed speed limit as per sign
Services
- ITO Map offers global speed limits updated daily
- Speed limits (speed limits for all roads)
- Speed limits: major roads (speed limits for primary-motorway roads only)
- road speed limits debug layer (showing if in km/h, mph or other units)
- Other services
- Maxspeed-Map static overlay (Europe only?)
- Maxspeed overlay (Holland)
- Oceania + SE Asia Maxspeed Overlay (Oceania + SE Asia only)
- UK maxspeed map (UK only)
Parser
Regular expression for numeric values only:
^([0-9][\.0-9]+?)(?:[ ]?(?:kmh|km/h|mph|kph))?$
Regular expression which catches numeric values and implicit values like none or IT:rural:
^([^ ]+?)(?:[ ]?(?:kmh|km/h|mph|kph))?$