Guide
Chart colours: choosing a palette that stays readable
Colour is part of the chart's information, not decoration. The palette has to do a job — and that job is different for categories, magnitudes and deviations.
Updated November 8, 2026
A chart uses colour for one of three jobs. Choosing a palette starts with knowing which job yours is doing.
| Job | What the colour means | Palette type |
|---|---|---|
| Identity | “This series is North, that one is South.” | Categorical — distinct hues, no order |
| Magnitude | “Darker means bigger.” | Sequential — one hue, light to dark |
| Deviation | “Below the target, near it, above it.” | Diverging — two hues with a neutral middle |
Using the wrong type is the most common colour mistake. A rainbow used for a heatmap implies an order that is not there; a single hue used for five categories makes them look like levels of one thing.
Rules that keep a chart readable
1. Use hue for identity, lightness for magnitude
In a categorical chart, the hues must be distinguishable and there must be no implied order. In a sequential chart, the hue stays the same and only lightness changes — that is what makes “darker = bigger” readable at a glance.
2. Keep categorical palettes to about six to eight colours
Beyond that, no palette is distinguishable, even for people with normal colour vision. If you have more series, group the small ones, highlight the important ones, or split the chart.
3. Do not rely on red versus green
Red-green colour blindness affects roughly one in twelve men. A pair that looks obviously different to you can be nearly identical to them. Blue versus orange is a safer default pair, and adding a second cue — a marker shape, a line style, a direct label — makes the distinction survive even a greyscale print.
4. Check contrast for text on colour
Numbers inside coloured cells need about 4.5:1 contrast against the cell. A pale yellow cell with white text is unreadable; a dark blue cell with black text is worse. The text colour has to be chosen per cell, not once for the whole chart.
5. Mute the background when one series matters
Ten coloured lines compete for attention; one coloured line and nine grey ones tell the reader exactly where to look. Use colour as a spotlight, not as a category for everything.
6. Run the greyscale test
Convert the chart to greyscale, or squint until the colours blur. If two series become the same shade, the chart depends on colour alone. Add labels, markers or different line styles before publishing.
7. Do not encode two variables in one colour scale
Colour can carry one meaning at a time. If hue encodes region and lightness encodes value, the reader has to decode two dimensions from one channel — and usually decodes neither. Let position carry the value and colour carry the category.
Sequential and diverging palettes
A sequential scale works when zero has no special meaning and only the order matters — traffic by hour, revenue per region. A diverging scale works when there is a meaningful midpoint: a target, a budget, a zero-difference point. Choose the middle colour deliberately; a diverging scale with an arbitrary centre is just two sequential scales glued together.
The heatmap on ChartPaste uses a blue-to-red scale where blue means low and red means high. When the columns in a table have very different magnitudes, each column is coloured on its own scale so the patterns inside every column stay visible — and the colour bar is labelled as a relative position, with the real number kept in the cell.
A short checklist
- What job is colour doing — identity, magnitude or deviation?
- Can the series be told apart in greyscale?
- Would a red-green colour-blind reader lose the distinction?
- Is there text on a coloured background, and does it have enough contrast?
- Is one series meant to stand out? Then the rest should be muted.
- Does the palette have an implied order it should not have?
If you want to try the palettes described here, every chart maker on this site includes a palette switch, and the result can be downloaded as a PNG or an editable Excel file.
Want to try this with your own data?
ChartPaste turns a pasted table into 20 chart types — free, no sign-up, and your data never leaves your browser.