How to Choose Chart Colors

GUIDE

Color should clarify your data, not decorate it. Here is how to pick a palette that is clear and accessible.

Color is one of the most powerful tools in a chart and one of the easiest to misuse. Done well, it guides the eye to what matters and keeps separate things separate. Done carelessly, it confuses readers, hides the message, and shuts out the roughly one in twelve men and one in two hundred women who have some form of color vision deficiency. The choices that make a palette work are not about taste — they follow a few clear principles you can apply to any chart.

Step 1: Match the palette type to your data

The single most important decision is whether your data is categorical or ordered, because each calls for a different kind of palette.

Using a rainbow of unrelated hues for ordered data — or shades of one color for unrelated categories — fights the reader's intuition and is a frequent source of confusion.

Categorical (distinct hues) for separate categories Sequential (one hue) low to high values Contrast check: light text on a light fill is hard to read low contrast good contrast
Distinct hues separate unordered categories; one hue from light to dark encodes order. Always check that labels stay legible on each fill.

Step 2: Limit the number of colors

The more colors a chart uses, the harder each one is to tell from its neighbours, and the more work the legend forces on the reader. For categorical data, aim for about six distinct colors or fewer. If you have more categories than that, you usually have better options than adding colors: group the smallest categories into an "Other" bucket, color only the one or two categories you want to highlight and leave the rest gray, or label series directly so color carries less of the load.

Step 3: Ensure strong contrast

Colors need to stand out in two directions: from the background, and from each other. On a dark background, very dark fills disappear; on a light background, pale fills wash out. If you place text or numbers on a colored bar or slice, check that the text stays readable — light text needs a dark enough fill behind it, and dark text needs a light enough one. Adjacent categories should also differ enough that no one has to squint to see where one ends and the next begins. When two colors look too similar, change one's hue rather than just nudging its brightness.

Step 4: Make it colorblind-safe

The most common color vision deficiency affects the perception of red and green, so a chart that distinguishes categories only by red versus green can be unreadable for a meaningful share of your audience. Safer choices pair colors that also differ in lightness or use combinations such as blue and orange, which remain distinguishable for most types of color blindness. A reliable test is to view the chart in grayscale: if the categories blur together without color, they will blur for some viewers in full color too.

The red-green trap

Red-for-bad, green-for-good is intuitive for many people but invisible to others. If you use it, always add a second cue — a label, an icon, or a difference in lightness — so the meaning survives without color.

Step 5: Never rely on color alone

Color should reinforce meaning, not be the only thing carrying it. Anytime color encodes something important, give the reader a second way to tell the difference: direct labels on lines or bars, patterns or textures on fills, different marker shapes on a scatter plot, or simply position. This makes a chart robust — it still works in grayscale, when printed, when projected on a washed-out screen, and for readers who cannot distinguish the hues you chose. It is also the single habit that does the most to make your charts accessible.

A simple workflow

Pick palette type by data type, cap categorical colors at about six, check contrast against the background and any text, verify it in grayscale, then add labels so color is never doing the job by itself.

Color is worth getting right because it is the first thing a reader notices and the easiest thing to get subtly wrong. Match the palette to your data, keep it small, make it contrast, keep it colorblind-safe, and back it up with a second cue — and your charts will be both clearer and more inclusive. When you are ready to apply this, pick a maker and try your palette on real data.