From OpenStreetMap Wiki
Jump to navigation Jump to search
Public-images-osm logo.svg maxstay
Max stay cropped.png
Maximum time you are allowed to stay somewhere. Show/edit corresponding data item.
Group: restrictions
Used on these elements
may be used on nodesmay be used on waysmay be used on areas (and multipolygon relations)should not be used on relations (except multipolygon relations)
Useful combination
Status: approvedPage for proposal

This key allows the specification of the maximum time that it is allowed to:

  • Park your car (ex. Disc parking)
  • Moor your boat
  • Stay at a campsite


Time conditional restrictions (also known as disc parkings) can be tagged by using 'Time and date' condition:

  • maxstay:conditional=1 hour @ (08:00-18:00) (or maxstay=1 hour + maxstay:conditional=no @ (18:00-08:00), depending on whatever it is better for simple data consumers to show sometimes wrong "no maxstay" or sometimes wrong "1 hour maxstay")
  • amenity=parking + maxstay=1.5 hours + access:conditional=no @ (Su,PH). Maxstay is overruled by access conditions. In this case, parking is generally allowed for 90 minutes, but no parking on Sunday and public holidays.


The general syntax of maxstay=* is as follows.

maxstay=<number> <time unit>

In some cases also additional tag using conditional restrictions is necessary to fully express value.

maxstay:conditional=<restriction value> @ <condition>



This is the primary value. Only numeric values above zero and decimal points are valid, e.g., 45 minutes, 2.5 days, 1000 minutes.

Time unit

This value specifies the unit of <number>. Valid units include: second, minute, hour, day, night, week, month, year, and their plural form when the number is above one, e.g., 1 day, 2 days, 5 hours.

Specifying the unit is required. The unit should not be abbreviated, and there should be a space between the number and the unit.

Restriction value

This is the value of the restriction, e.g., 30 minutes, 1 day, 3 nights. Same rules apply from <number> <time unit>.


Main article: Conditional restrictions § Value

The value comprises of the @ character followed by the time and date condition.


Some mappers indicate a maxstay of 0. This might mean either of the following things:

  • There is no sign indicating a maxstay. This can be indicated unambiguously with unsigned=maxstay.
  • It is forbidden to stay, only stop. This can be indicated with maxstay=load-unload.
  • It is permitted to stay for an unlimited period. This can be indicated with maxstay=none or maxstay=unlimited.
  • Access is not allowed at all - use access=no, possibly also with access:conditional=* for that.

Maxstay without unit

Values with no units are unclear or difficult to interpret. The value of maxstay=* should always include a unit, as no default value (such as days, hours, or minutes) can be assumed.

See also