Free downloads / Symbology

NLCD land cover colours, ready for any GIS.

The standard legend colours of the National Land Cover Database (NLCD) as styles for QGIS, ArcGIS Pro, GeoServer and Google Earth Engine, with a colour table you can copy from and a sample raster to test.

Colour table

Twenty classes in eight groups.

Click a hex or RGB value to copy it. The first digit of each code is its group: 4x is forest, 8x is farmland, and so on. Four classes occur only in Alaska.

NLCD land cover legend
CodeClassGroupHexRGB
Water
11Open WaterWater
12Perennial Ice/SnowWater
Developed
21Developed, Open SpaceDeveloped
22Developed, Low IntensityDeveloped
23Developed, Medium IntensityDeveloped
24Developed, High IntensityDeveloped
Barren
31Barren Land (Rock/Sand/Clay)Barren
Forest
41Deciduous ForestForest
42Evergreen ForestForest
43Mixed ForestForest
Shrubland
51Dwarf Scrub Alaska onlyShrubland
52Shrub/ScrubShrubland
Herbaceous
71Grassland/HerbaceousHerbaceous
72Sedge/Herbaceous Alaska onlyHerbaceous
73Lichens Alaska onlyHerbaceous
74Moss Alaska onlyHerbaceous
Planted/Cultivated
81Pasture/HayPlanted/Cultivated
82Cultivated CropsPlanted/Cultivated
Wetlands
90Woody WetlandsWetlands
95Emergent Herbaceous WetlandsWetlands

These are the standard NLCD legend colours from USGS and the Multi-Resolution Land Characteristics (MRLC) Consortium, checked against a second published copy of the legend.

How to use it

Styles for every tool.

QGIS

Open Layer Properties → Symbology → Style → Load Style and pick nlcd-land-cover.qml. Or set the renderer to Paletted/Unique values and load nlcd-land-cover-qgis-colormap.txt.

ArcGIS Pro

Run the Add Colormap tool (Data Management) with nlcd-land-cover.clr to attach the colours to your raster.

GeoServer and the web

Upload nlcd-land-cover.sld. It uses an exact-value colour map, so each code gets its colour and nothing is blended.

Google Earth Engine

NLCD codes aren't consecutive, so remap them to 0–19 first, then use the palette. The snippet below does both.

GDAL

Use the .clr file with gdaldem color-relief -exact_color_entry to make a coloured GeoTIFF.

Test first

Open nlcd-sample.tif. Its colours are built in, so it should look like the preview straight away. Then apply a style to check it matches.

// NLCD land cover palette for Google Earth Engine (values 11-95)
var nlcdValues = [11, 12, 21, 22, 23, 24, 31, 41, 42, 43, 51, 52, 71, 72, 73, 74, 81, 82, 90, 95];
var nlcdPalette = ['466b9f', 'd1def8', 'dec5c5', 'd99282', 'eb0000', 'ab0000', 'b3ac9f', '68ab5f', '1c5f2c', 'b5c58f', 'af963c', 'ccb879', 'dfdfc2', 'd1d182', 'a3cc51', '82ba9e', 'dcd939', 'ab6c28', 'b8d9eb', '6c9fb8'];
// Remap to 0..19 and display:
// var lc = image.remap(nlcdValues, ee.List.sequence(0, 19));
// Map.addLayer(lc, {min: 0, max: 19, palette: nlcdPalette}, 'NLCD');
Earth Engine palette.

Good to know

About NLCD.

What is NLCD?

The National Land Cover Database is a 30 m land cover map of the United States from the USGS and its MRLC partners, made from Landsat imagery. Each pixel holds a class code such as 41 (deciduous forest) or 82 (cultivated crops).

Why are there gaps in the codes?

The codes are two digits: the first is the group (1 water, 2 developed, 4 forest and so on) and the second the class within it. Unused numbers are simply skipped.

Which classes are Alaska only?

51 Dwarf Scrub, 72 Sedge/Herbaceous, 73 Lichens and 74 Moss. Maps of the lower 48 states use the other 16.

Why does my NLCD look wrong after reprojecting?

Reproject class rasters with nearest-neighbour resampling. Bilinear or cubic resampling averages codes and creates classes that don't exist.

Are these colours colour-blind safe?

Not fully. Several greens and browns are hard to tell apart. For public maps, add a clear legend and consider merging classes into fewer groups.

Mapping land cover?

We'll show you what changed, and where.

Land cover maps, change between years, and area by class for your area.