Reefs and beaches in the OpenStreetMap standard style


The latest version of the OpenStreetMap standard map style contains a change from me adding and improving rendering of some coastal features.

First it adds support for rendering areas tagged natural=reef using a blue dot pattern:

Reefs in OpenStreetMap are underwater features close to the surface that are either obstacles/hazards to navigation or areas of ecological or recreational value.

A frequent error in reef mapping in OpenStreetMap currently is that fringing reefs around islands are mapped across the islands and not around them. This is well visible in rendering now and can be easily fixed.

Since reefs are below water they are not always covered in the usual image sources. In principle however many reefs, especially coral reefs in tropical waters, are well visible on satellite imagery.

The other improvement concerns beaches (natural=beach ) – they are now rendered with a pattern depending on the surface tag, a fine dot pattern is used for beaches tagged with surface=sand, a coarser pattern is shown for beaches with other surface values.

Beach with surface=sand

Beach with surface=pebbles

A few notes on mapping of beaches in OpenStreetMap in general – since this is often not done correctly. The defining property of beaches is that they are formed by water waves. This means they always consist of loose material with grain sizes between fine sand and larger stones. Rocky coasts or shores stabilized by vegetation are not beaches. Beaches can exists at lakes but they usually are fairly narrow there. Beaches created artificially by filling up sand from elsewhere are not beaches in the strict sense but are generally tagged as such in OpenStreetMap.

The extent of a beach is generally limited at the lower end to where waves start to break and at the upper end to where the water reaches during storms. This means the beach usually extents across the coastline. Visual distinction of parts of the beach above the high water line and those below it does not currently work in the OSM standard style though. Coastal dunes are not part of a beach, they should be tagged natural=sand when mostly without vegetation.

Since beaches are always formed by waves they generally have a significant slope. Typically they are at most a few hundred meters wide. Larger flat areas that are sometimes above, sometimes below water depending on tides should be tagged natural=wetland + wetland=tidalflat.

Finally areas tagged natural=shoal are now rendered like beaches. Shoals are essentially what lies between reefs and islands, they are high enough to reach above the water at low tide but so low they at least occasionally are washed over by water. Often the term shoal is also applied to some relatively flat islands – the tag in OSM is however not meant to be used for that.

For reference here some short definitions of all these tags and a few others that apply to similar areas:

  • natural=reef – shallow areas permanently under water.
  • natural=shoal – protrusion, usually in form of a bank or bar, that extents above water at low tide but that is occasionally washed over by water.
  • natural=wetland + wetland=tidalflat – flat, unvegetated area in the tidal zone with sand or mud as surface material.
  • natural=beach – unvegetated stretch at the coast with loose surface material that is shaped by waves.
  • natural=sand – bare, unvegetated area of sand of any origin that is not a beach or shoal.
  • natural=shingle – bare, unvegetated area of gravel/pebbles that have been rounded and sorted by water transport, usually in river beds.
  • natural=scree – bare, unvegetated area of rocks in size between gravel and boulders resulting from rockfall.

Leave a Reply

Required fields are marked *.