Short answer
Usually five to seven. A choropleth has to let readers match a region to a legend class by colour alone across a whole map, and the lightness gap between neighbouring classes shrinks as classes are added. With a typical light-to-dark range, five classes leave clear steps; past about seven, adjacent classes become hard to match, especially for small regions, in print, or for colour-vision deficiency. The classification method and the no-data colour matter as much as the palette.
In a bar chart a value is read from length, and colour is a label. In a choropleth the colour is the value: a reader looks at a region, remembers its colour, finds that colour in the legend and reads off the class. That lookup has to work for regions that are small, oddly shaped, far from the legend and surrounded by other colours that shift their appearance through simultaneous contrast. ColorBrewer was built for exactly this problem, and its schemes run from three to at most twelve classes, with most sequential schemes stopping at nine. Harrower and Brewer frame the choice of scheme type — sequential, diverging or qualitative — as following from the data, with the number of classes then limited by how many steps readers can tell apart.
A sequential map has a fixed lightness budget: from a pale class that must still be visibly different from the background to a dark class that must still show region boundaries and labels — roughly L* 95 to 25. The table divides that budget evenly and shows the lightness step between neighbouring classes and the WCAG contrast ratio that step guarantees at worst. Five classes give steps of about 17 L*; nine give under 9, where the worst adjacent pair has a contrast only just above 1.2:1. Multi-hue schemes add hue difference on top, which is why nine-class maps are workable on screen, but hue is the part colour-vision deficiency and printing remove, so the lightness step is the dependable part.
The same data and the same palette can produce very different maps depending on where class breaks fall. Equal-interval breaks make classes span equal ranges, which is honest for evenly distributed data but can leave most regions in one class when the data are skewed. Quantile breaks put equal numbers of regions in each class, which uses every colour but can place very different values in one class and near-identical values in adjacent classes. Natural-breaks methods look for gaps in the data. None is neutral; state the method in the legend. A continuous (unclassed) colour scale avoids break choices but makes legend lookup harder, since readers cannot match a region to an exact shade reliably.
Choropleths give each region visual weight in proportion to its area, not its population, so a sparsely populated large region dominates the map. Two colour-related consequences follow. First, map rates or densities, not raw counts, because a large region with a big count will look extreme simply for being large. Second, consider how the darkest class interacts with size: a few small, dark, high-value regions (cities) can be almost invisible next to large pale ones. Outlining regions, insetting dense areas, or using a cartogram or a proportional-symbol map may serve the data better than adjusting colours. And choose a no-data fill that cannot be mistaken for any class, which is covered with uncertainty on a separate page.
| Classes | L* step between neighbours | Worst adjacent WCAG contrast |
|---|---|---|
| 3 | 35.0 | 2.79:1 |
| 4 | 23.3 | 1.92:1 |
| 5 | 17.5 | 1.61:1 |
| 6 | 14.0 | 1.45:1 |
| 7 | 11.7 | 1.36:1 |
| 8 | 10.0 | 1.30:1 |
| 9 | 8.8 | 1.26:1 |
| 12 | 6.4 | 1.18:1 |
Why: Too many classes for the lightness range.
Fix: Reduce to five to seven classes, or add value labels for key regions.
Why: Raw counts are mapped and area drives visual weight.
Fix: Map a rate or density, or use a cartogram or symbol map.
Why: Different classification methods were used.
Fix: Use the same breaks across comparable maps and state the method.
Each statement is labelled by kind — established fact, a standard’s requirement, observed market data, a convention, or Colourwise’s own interpretation or analysis — with the strength of the evidence behind it.
ConventionStrong evidence
ColorBrewer offers schemes of 3 to 12 data classes and classifies them as sequential, diverging or qualitative according to the nature of the data.
Source: ColorBrewer 2.0 — colour advice for cartography; ColorBrewer.org: An Online Tool for Selecting Colour Schemes for Maps
Colourwise analysisStrong evidence
Spreading classes evenly across CIELAB L* 95 to 25, the worst-case WCAG contrast between adjacent classes falls from about 1.6:1 at five classes to just over 1.2:1 at nine.
Based on: Computed by Colourwise from the CIELAB L* definition (which fixes relative luminance) and the WCAG contrast formula; see the table.
Caveat: Contrast ratio is a proxy for how easily classes are matched, not a tested threshold for map reading.
Source: CIE (International Commission on Illumination) publications; Web Content Accessibility Guidelines (WCAG) 2.2
Colourwise interpretationLimited evidence
Five to seven classes is a practical default for sequential choropleth maps, with more classes justified only on screen, with multi-hue schemes and large regions.
Based on: Colourwise's reading of the lightness-step calculation on this page together with ColorBrewer's scheme lengths; not a figure from a single study.
Caveat: Map purpose matters: exploratory maps may justify more classes than maps for a general audience.
Reviewed 29 September 2026. Colourwise summarises its sources in its own words and does not reproduce standards text or proprietary colour data. Spotted an error? Tell us.