Level indicates the floor level, can be used for ways and amenities that are tied to a floor level of a multilevel building. See Simple Indoor Tagging for further information.

Highways (and other ways) can be tagged with level when they are essentially bound to a level of a building complex (such as multilevel parking buildings, railway stations or airports).

For typical street and freeway crossings with bridges layer=* should be used instead.

Roads or other ways passing through buildings should be marked with tunnel=building_passage; they should be only marked with level if there is a strong relation to the corresponding level of the building.

Contents

Values

Numeric values

level=1 floor over ground floor (British English: first floor, American English: second floor)

level=-1 first basement floor

level=-2 second basement floor

There is an ongoing discussion on usage of fractional values, e.g. level=0.5 or level=1.5 for mezzanine floors and staircases. See the proposals for more examples.

String values

In some cases there are also strings used to describe levels. In the general case, this only works if relations which hold the order and description of these values are used in addition to the level tags.

Some other approaches do not allow string values at all, and require numbers with a total ordering instead.

Multiple values

level range: level=-1;0room=yes is a room which goes over two levels. Often there are doors to each one.

Similarly a staircase could be tagged with level=-1;0 meaning that it connects the two levels.