From OpenStreetMap Wiki
Jump to navigation Jump to search
Public-images-osm logo.svg maxspeed
Specifies the maximum legal speed limit on a road, railway or waterway. Edit or translate this description.
Group: Restrictions
Used on these elements
may be used on nodesmay be used on waysmay be used on areasshould not be used on relations
Useful combination
See also
Status: de facto


The maxspeed=* tag is used on ways to define the maximum legal speed limit for general traffic on a particular road, railway or waterway. By default, values will be interpreted as kilometres per hour. If the speed limit should be specified in a different unit the unit can be added to the end of the value, separated by a space (see Examples). The tag is also used on nodes to specify maxspeed traffic signs.


The maximum speed limit for a highway=*, railway=rail, waterway=river etc can be specified as follows (these are tagging examples for linear features, you can additionally map the traffic signs themselves on a node at the sign position with traffic_sign=maxspeed and maxspeed=*):

Type Example Meaning
numeric maxspeed=60
maxspeed=50 mph
maxspeed=10 knots
The maximum fixed numeric speed limit, followed by the appropriate unit if not measured in km/h when no units should be included. For example maxspeed=60 for 60 km/h and maxspeed=50 mph for 50 mph (note the space between the value and the unit).
variable maxspeed:variable=* Indicates that there is a (variable) maximum speed limit displayed on electronic variable signs.

Please do not use this tag for railway lines and tag instead the maximum allowed speed there.

none maxspeed=none Indicates that there is no fixed maximum numeric speed limit for this section of road (on some German autobahns and a very few other places). Not to be used for situations where there is a limit but it is not known. Where the limit is not known do not include a maxspeed tag.
walk (proposal) maxspeed=walk In Austria and Germany the speed limit for living street (German: Wohnstraße bzw. Verkehrsberuhigter Bereich) is defined only as being a walking speed but there is no defined numeric value for this. The maxspeed walk proposal suggests that walk should be used, but it is not commonly used.

implicit maxspeed=<countrycode>:<zone type> Only in some places, notably Romania and Russia, it is common to find that maxspeed holds a value of the form '<countrycode>:<zone type>'. It is used in Russia for areas where the speed limit is indicated on the street by use of a symbol or icon rather than a number. The format includes a country code followed by a ':' and a zone identifier (For example 'RO:urban'). This non-numeric notation is used to avoid the correction of an entire country map due to legislation changes regarding maximum speed.

Excluding the above, it is more common and appropriate to provide a numeric value for maxspeed=* than to use the Context Specific Values (Default Limits) of source:maxspeed=* .

For more information on this, and for a table of common values see source:maxspeed=*

Implicit maxspeed values

As described above, the maxspeed=* may use context-specific values, such as where a road is unsigned and a "default" maxspeed value in-force by legislation/law applies.

These tags can be used in the tag source:maxspeed=* as well, in addition to an explicit maxspeed=* value - which is currently preferred by some local communities.

Country code Urban Rural Miscellaneous Comment
maxspeed=* or source:maxspeed=* Implied or explicit value maxspeed=* or source:maxspeed=* Implied or explicit value maxspeed=* orsource:maxspeed=* Implied or explicit value
AR AR:urban 40 AR:rural 110
AR:urban:primary 60
AR:urban:secondary 60
AT AT:urban 50 AT:rural 100 AT:bicycle_road 30
AT:trunk 100
AT:motorway 130
AU AU:urban 50 or 60 in NT

(Northern Territory)

AU:rural 100 or 110 in NT & WA

(Northern Territory & Western Australia)

  • Default (unsigned) speed limit in built-up areas is 50km/h in all states and mainland territories excluding the Northern Territory, where it is 60km/h.
  • Default (unsigned) speed limit outside of urban built-up areas (such as suburbs or towns) is 100km/h in all states and mainland territories excluding the Northern Territory and Western Australia, where it is 110km/h.
  • Signed speed limits exceeding the defaults may apply, and this applies only to the states and mainland territories.
BE BE-VLG:urban 50 BE-VLG:rural 70 BE:living_street 20
  • BE-VLG: Flanders
  • BE-WAL: Wallonia
  • BE-BRU: Brussels-Capital Region
BE:cyclestreet 30
BE-WAL:urban 50 BE-WAL:rural 90 BE:zone30 30
BE:zone* * (number)
BE-BRU:urban 30 BE-BRU:rural 70 BE:trunk 120
BE:motorway 120
BG BG:urban 50 BG:rural 90 BG:living_street 20
BG:trunk 120
BG:motorway 140
BY BY:urban 60 BY:rural 90 BY:living_street 20
BY:motorway 110
CA CA-AB:urban 50 (most roads), 80 (provincial highways) CA-AB:rural 80 (most roads) 100 (provincial highways)
  • CA-AB: Alberta
  • CA-BC: British Columbia
  • CA-MB: Manitoba
  • CA-ON: Ontario
  • CA-QC: Quebec
  • CA-SK: Saskatchewan

Speed limits above the statutory defaults may apply. Most provinces and territories have provisions in their traffic laws allowing speed limits higher than the defaults.

CA-BC:urban 50 CA-BC:rural 80
CA-MB:urban 50 CA-MB:rural 90
CA-ON:urban 50 CA-ON:rural 80
CA-QC:urban 50 CA-QC:rural 80 (paved roads), 70 (unpaved roads) CA-QC:motorway 100
CA-SK:nsl 80 [1]
CH CH:urban[2] 50 CH:rural 80 CH:trunk 100
CH:motorway 120
CZ CZ:urban 50 CZ:rural 90 CZ:pedestrian_zone 20
CZ:living_street 20
CZ:urban_motorway 80
CZ:urban_trunk 80
CZ:trunk 110
CZ:motorway 130
DE DE:urban 50 DE:rural 100 DE:living_street 7
  • There is no speed limit for DE:motorway [3].
DE:bicycle_road 30
DE:motorway none
DK DK:urban 50 DK:rural 80 DK:motorway 130
EE EE:urban 50 EE:rural 90
ES ES:urban 50 ES:rural 90 ES:living_street 20
  • Implicit speed in urban areas (ES:urban) can be 50, 30 or 20 depending on the physical properties of the road.
  • 30km/h on unpaved roads.
ES:zone30 30
30 ES:trunk 90
20 ES:motorway 120
FI FI:urban 50 FI:rural 80 FI:trunk 100
FI:motorway 120
FR FR:urban 50 FR:rural 80 FR:zone30 30
FR:motorway 130 / 110 (raining)
GB GB:nsl_restricted 30 mph
GB:nsl_single (60 mph)

50 mph (vehicles towing caravans or trailers, buses and minibuses up to 12m, HGV)

GB:nsl_dual (70 mph)

60 mph (vehicles towing caravans or trailers, buses and minibuses up to 12m, HGV

GB:motorway (70 mph)

60 mph (vehicles towing caravans or trailers, HGV)

  • This applies to the United Kingdom inclusive of Great Britain as ISO 3166 country codes are preferred.
  • In the UK maxspeed:type=* is preferred over source:maxspeed=*
  • Measured in miles per hour

GB:motorway 70 mph
GB:nsl_dual 70 mph
GB:nsl_single 60 mph
GR GR:urban 50 GR:rural 90 GR:trunk 110
GR:motorway 130
HU HU:urban 50 HU:rural 90 HU:living_street 20
HU:trunk 110
HU:motorway 130
IT IT:urban 50 IT:rural 90 IT:trunk 110
IT:motorway 130
JP JP:nsl 60
JP:express 100
LT LT:urban 50 LT:rural 90
NO NO:urban 50 NO:rural 80
PH PH:urban 30 PH:rural 80 PH:express 100
  • Buses and trucks subject to lower speed limits (80 km/h in motorways[4], 50 km/h in rural areas)
  • Cars and motorcycles in urban areas subject to higher speed limits only in designated through streets or boulevards without blind corners (40 km/h).
  • Places classified as "crowded streets" by local government units, areas close to intersections at blind corners and school zones have a speed limit of 20 km/h regardless of motor vehicle type.
  • Local government units may assign lower speed limits. The Toll Regulatory Board sets the speed limits on expressways [5]; the general speed limit for expressway is set at 100 (80 for heavy trucks, buses and any vehicle hauling a trailer) unless otherwise posted.
PT PT:urban 50 PT:rural 90 PT:trunk 100
PT:motorway 120
RO RO:urban 50 RO:rural 90 RO:trunk 100
RO:motorway 130
RS RS:urban 50 RS:rural 80 RS:living_street 10
RS:trunk 100
RS:motorway 130
RU RU:urban 60 RU:rural 90 RU:living_street 20
RU:motorway 110
SE SE:urban 50 SE:rural 70
SI SI:urban 50 SI:rural 90 SI:trunk 110
SI:motorway 130
SK SK:urban 50 SK:rural 90 SK:living_street 20
SK:trunk 90
SK:motorway 130
SK:motorway_urban 90
UA UA:urban 50 UA:rural 90 UA:living_street 20
UA:trunk 110
UA:motorway 130
UK UK:motorway 70 mph
  • Use of "GB:" terminology is preferred as ISO 3166 country codes are used.
  • Measured in miles per hour.
UK:nsl_dual 70 mph
UK:nsl_single 60 mph
UZ UZ:urban 70 UZ:rural 100 UZ:living_street 30
UZ:motorway 110

See also Default speed limits for a more complete and machine readable list of implicit speed limits that also includes speed limits for motor vehicles other than cars and is sourced directly from each country's legislation (with links).

Extended tagging


Where different speed limits are posted for different classes of vehicles these should be specified using maxspeed:<vehicle>=*. The possible values for <vehicle> correspond to the values for transport modes of the key access=* (see also Examples).

Note: Where a lower blanket speed limit is applied for certain classes of vehicle across all roads within the jurisdiction then this should not be tagged at the individual road level.

For example:

Driving direction

Main article: Forward & backward, left & right

Where different speed limits are specified for each driving direction those can be specified using maxspeed:forward=* resp. maxspeed:backward=*, whereas forward applies to the speed limit for the same direction as the OSM way and backward to the speed limit for the opposite direction.


Where different speed limits are specified for each lane of a road those can be specified using maxspeed:lanes=*. Each lane’s maximum speed has to be separated with the “|” character. The first maximum speed is the maximum speed of the leftmost lane (viewed from the direction of the OSM way), the second maximum speed is the speed of the lane right from the leftmost lane and so on until the rightmost lane. Further if they should be specified for each driving direction separately the key maxspeed:lanes:forward=* resp. maxspeed:lanes:backward=* can be used, whereas lanes:forward applies to the speed limit of the lanes for the same direction as the OSM way and lanes:backward to the speed limit of the lanes of the opposite direction. See therefore also the Examples as well as the article about mapping individual lanes.

Time or other conditions

Main article: Conditional restrictions

Example: The maximum speed is 30 km/h between 7am and 2pm on workdays (in Germany: Monday-Saturday, but not on public holidays) but otherwise is 50 km/h as implicit speed limit in the city:
maxspeed:conditional=30 @ (Mo-Sa 07:00-14:00; PH off)

Other considerations

The maxspeed=* tag should ideally be added to only the segment of roadway for which the speed limit applies. Depending on the jurisdiction, a speed limit may take effect at a speed limit sign [1][2], at a solid line painted across the roadway near the sign [3], at a fixed distance away from the sign, or at the nearest intersection.


Identification Tagging Remark
maxspeed=60 + maxspeed:type=sign Alternatively maxspeed=60 km/h can be used.
MUTCD R2-1.svg
maxspeed=50 mph + maxspeed:type=sign The speed limit is specified in the unit which is legally defined and will not be converted to km/h.
Zeichen 393.svg


On all roads in Germany, where no explicit speed limit is defined, the corresponding implicit values can (and should) be specified.
10 knots maxspeed=10 knots The speed limit is specified in the unit which is legally defined and will not be converted to km/h.
Cholupice, proměnná značka rychlosti před Cholupickým tunelem, rozostřený pohled.jpg
maxspeed:variable=* The (variable) speed limit is announced on speed limit signs.
UK National Speed Limit Sign.jpg
maxspeed=GB:nsl_single An implicit speed limit of 60 miles per hour on a road in the UK based on a "national speed limit" sign.
CH-Hinweissignal-Anzeige von Fahrstreifen mit Beschränkungen.svg
maxspeed:lanes=100|100|80 A speed limit of 80 kilometres per hour on the rightmost lane on a road with an assumed general speed limit of 100 kilometres per hour.
Maxspeed 60 km h for hgvs.jpg


A speed limit of 60 kilometres per hour valid only for heavy good vehicles - 80 kilometres per hour otherwise.
40kph between 08:00 and 09:30 and 14:30 to 16:00 road sign
Australian school zone sign from the state of Victoria
maxspeed:conditional=40 @ (Mo-Fr 08:00-09:30, 14:30-16:00;PH off;SH off) Conditional speed limits during school times. See Conditional restrictions for seasonal or time of day changes.
80 unless raining, 60 when raining road sign
maxspeed=80 + maxspeed:conditional=60 @ wet Wet weather conditional speed limit


  • JOSM
    • The default internal mappaint style displays the value of maxspeed on a node if tagged together with traffic_sign=* as traffic sign.
    • The mappaint style maxspeed displays the value of maxspeed on ways as coloured underlay.
  • StreetComplete has a quest (disabled by default) that asks about max speed info
  • Other services:
    • Worldwide maxspeed overlay
    • Overpass turbo queries
      • Maxspeed coloured similar colour style to previous ITO map (Yellow for maxspeed of 'none'. dark blue for 130/120/110. light blue for 100, purple for 90/80, red for 70/60 orange for 50 and green for 5/10/15/20/30/40)
      • Maxspeed major roads coloured similar colour style to previous ITO map (Yellow is used for ways with maxspeed set to 'none', dark blue for 130/120/110, light blue for 100, purple for 90/80, red for 70/60, orange for 50 and green for 30



Regular expression for numeric values only:

^([0-9][\.0-9]+?)(?:[ ]?(?:km/h|kmh|kph|mph|knots))?$

Regular expression which catches numeric values and implicit values, e.g. like none or signals:

^([^ ]+?)(?:[ ]?(?:km/h|kmh|kph|mph|knots))?$

One mile per hour corresponds to 1.609 km/h and one  knot to 1.852 kilometres per hour.


Router developers should be aware that the highway=* tag is not necessarily a good proxy for speed limits in some jurisdictions. For example, in the U.S. state of Ohio, many factors affect a roadway's speed limit, to the extent that rural, unpaved highway=unclassified ways have a higher speed limit by default (55 mph) than some urban highway=motorway ways (50 mph).

See also

Related keys

Related topics

Maps showing max speed data

Notes and references

  1. Applies to both urban and rural areas, where no signs exist. That said, most roads and highways in Saskatchewan have posted limits, commonly 50 in urban areas, 80 in most rural roads, 100 in undivided provincial highways, and 110 in divided provincial highways.
  2. This value seems unnecessary, since the speed limit of 50 km/h in urban areas is always signed at the entrance of the settlement by road sign 2.30.1.
  3. 130 km/h is the recommended maximum speed on motorways, as indicated by a square blue sign (round blue sign = minimum speed). Many sections of the German motorway network are now covered by speed limits, usually ranging from 80 to 130 km/h (140 km/h as speed limit is being tested in Lower Saxony -some politicians are against it, because 140 km/h is over the recommended maximum speed, depending on local conditions (i.e., frequent traffic, terrain, etc.). It is usual for drivers involved in crashes who were exceeding the 'recommended' speed limit to be held to be at least partly at fault, regardless of the circumstances of the crash, and insurance companies have the right to withhold payment. Already more than 50% Autobahns now have a (partially variable) speed limit. Vehicles also must be able to go faster than 60 km/h. Roughly 30% of German Autobahn have permanent limits. An additional 17% have at least partial limits depending on time, weather or traffic. Study on the speed limit on German Autobahn. Archived 25 May 2013 at the Wayback Machine.
  4. Refer to the Toll Regulatory Board website
  5. Refer to Section II (D) (1) of Joint Memorandum Circular No. 2018-001, accessible via the Department of Transportation website

Possible tagging mistakes

If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!