Proposed features/landcover

From OpenStreetMap Wiki
Jump to: navigation, search
Landcover key
Status: Proposed (under way)
Proposed by: dieterdreist
Tagging: landcover=*
Applies to: area
Definition: Key landcover to enhance description possibilities for areas
Drafted on: 2010-11-16
RFC start: 2010-11-16


This is a proposal to introduce the new key landcover=* which can be used to describe the physical cover of an area (grass, trees etc) as distinct from landuse=* which is used to describe the human use to which the area is put (residential, farm, forest etc) and also distinct from geographical features as described with natural=*. These concepts are orthogonal, in that both a sports pitch and a car park can be covered with grass or asphalt; equally one can have a landcover of grass can be used within a park, a garden, a road verge, an aerodrome or a meadow for gazing cows which are all different landuses.

This distinction reflects the two traditional branches of geography [1]: Physical geography and Human geography. Clearer tagging of the form proposed will facilitate more rigorous scientific uses of OSM in the fields of biology, geography and geology. It will enable scientists to contribute their data to OSM, as well as the use of OSM as a scientific tool.

The current situation

Landuse information is already provided, mainly by landuse=*, but landuses are also covered by amenity=* (car parks, schools, universities, hospitals etc) and by leisure=* (park, recreation ground etc).

Landcover information is already available in OSM, but is spread across many keys - such as landuse, natural and surface. Some values of landuse are actually landcover, for example landuse=grass.

The current tagging makes it difficult to tag some features. For example, a military area which is covered with grass can't be tagged both with landuse=military and with landuse=grass (a natural=meadow is not right, the tag leisure=park is definitely wrong). An area with trees may be primarily being grown for timber and should correctly be tagged with landuse=forest, but often a group of trees will be a 'landcover' (for example within a park or a nature reserve).

This proposal aims to provide a consistent mechanism to resolve some of the most serious semantic inconsistencies in the current tagging scheme and will ensure that it is always possible to provide both a landuse and a landcover for every location.

As of January 2016, landcover=* has 17,912 uses according to taginfo. In September 2018 this has increased to 67,000.

The proposal

The existing landuse=* tag would be retained for human uses of land, including: Economic activities, transportation, construction, tourism, history and culture, industry. Most of the landuse=* definitions currently in use are indeed already a part of this domain, but some tags will need to be transitioned to reflect the more systematic tagging scheme. A 'landuse=highway' should be added to cover land forming part of a road (including carriageway, footways and verges). The 'landuse=grass' tag should be deprecated with landcover=grass taking its place.

The proposed key landcover=* allows a systematic definition of physical geography characteristics including: Geology, soil, ecology, flora, vegetation, climate, landforms and water.

Natural key

The natural key will also be reviewed. Most of the values there actually describe geographic features, as distinct from landcover or landuse. but there is also some exceptions that might be better suited in landcover, for example natural=sand.

New tags and deprecated tags

The landcover key with the following values:

tag definition taginfo counts
landcover=trees for any area covered with trees, regardless of it being natural or not, in a forest or in a park/garden, etc.
landcover=grass for any grass covered area
landcover=water not needed, there's natural=water, see below
landcover=sand deprecates natural=sand Green up.png
landcover=bedrock uncovered bedrock, sparsely vegetated bedrock
landcover=gravel gravel
landcover=loam mixture of sand, silt and clay (deprecates natural=mud), without or with sparse vegetation
landcover=compacted_hardcore not sure about this, maybe a compacted=yes or {1/2/3/4/5} would be better
landcover=ice for areas covered the whole year with ice (see also natural=glacier for ice masses that move on their own)

It would deprecate the following tags:

  • natural=mud (replaced by landcover=loam; 3,431 uses)
  • natural=sand (replaced by landcover=sand; 14,414 uses)
  • landuse=grass (replaced by landcover=grass; >1.1 million uses)
  • surface=* (replaced by appropriate landcover values for areas). Surface will be retained for use with line features to assist with routing. The values will however normally have clear relationship with the same value in landcover.

The following tags would need further discussion:

  • natural=scrub (>310,000 uses)
  • natural=water (it would actually be logical to have landcover=water and natural=lake/sea/ocean... but I am not sure about the benefit of a change to a tag so extensively used. Comments?)

Applies to

Areas, can and should be combined with geographical features (natural) and landuse.


It is up to the renderers what they display, at which zoomlevel, and if they focus on landuse=*, landcover=*, or both or something else.


Please use the discussion page.

Also see some comments here: