Skip to content

Design Cluster

Color Blindness and Accessibility: Design Guide

Published April 11, 2026 · 10 min read

Roughly 1 in 12 men and 1 in 200 women have some form of color vision deficiency. In a product with 10,000 daily active users, several hundred of them cannot reliably distinguish red from green, or blue from purple, or some other combination. If your interface relies on color alone to communicate state — red for error, green for success, a colored dot for status — those users are guessing at information the rest of your users read instantly.

This guide covers what the different types of color blindness actually look like, how to test your designs against them, the WCAG contrast math that catches the most common failures, and the design pattern that fixes the problem more reliably than any palette choice: never rely on color alone.

Types of color blindness

Color blindness is usually not total blindness to color. It is a reduced or shifted ability to distinguish specific color pairs. The main forms:

  • Deuteranomaly and deuteranopia. Reduced or missing green sensitivity. The most common form, and the main cause of red-green confusion.
  • Protanomaly and protanopia. Reduced or missing red sensitivity. Also causes red-green confusion, with red appearing darker than normal.
  • Tritanomaly and tritanopia. Reduced or missing blue sensitivity. Rare. Causes blue-yellow and blue-green confusion.
  • Achromatopsia. Total color blindness, seeing only grayscale. Very rare (roughly 1 in 30,000).

The combined "red-green color blindness" population is the one most design decisions need to account for. If your palette distinguishes categories only by red and green, those users cannot tell the categories apart. If it distinguishes urgency only by "red warning," they cannot see the warning at a glance.

For technical background, the National Eye Institute (NEI) reference on color blindness is a clear medical explanation of the different types.

Simulating what a user actually sees

The fastest way to understand the problem is to simulate it. Tools that transform an image or a live webpage to approximate what someone with a specific deficiency would see let you check designs in seconds.

Color Blindness Simulator takes an image and shows it as a protanope, deuteranope, or tritanope would see it. A chart that has distinct red, orange, and green categories often collapses into three slightly different browns under deuteranopia simulation — and suddenly the chart is unreadable for one in twelve of your users.

Browser extensions also exist (Chrome, Firefox) that apply the simulation to the current tab. Designers building chart libraries or status indicators should use them while designing, not as a post-launch audit.

The classic independent reference is Coblis, an interactive simulator maintained by the color-blindness community. Upload a screenshot there as a cross-check when you are building something color-critical.

WCAG contrast, the minimum bar

The WCAG 2.2 guidelines set minimum contrast ratios for text: 4.5:1 for normal body text, 3:1 for large text. Non-text elements (icons, UI components, essential graphics) must meet 3:1 against their background. AAA level requires 7:1 for text.

Contrast ratios are not subjective. They are computed from luminance — how much light a color reflects — not from perceived color difference. A deep red on a dark background can look "different enough" to someone with normal vision and still fail the ratio, because both colors have similar luminance and the distinction a normal eye draws is from hue, not brightness.

Use Color Contrast Checker to test every text-background pair in your system. Pair the check with the simulator: a combination that passes contrast and holds up under deuteranopia simulation is safe for text. A combination that fails either is not.

The independent WebAIM resources include a widely-used contrast checker and detailed articles explaining the math, the rationale, and the common exceptions. When in doubt about whether a specific combination is accessible, WebAIM has usually written about it.

The one rule that fixes most issues

WCAG 2.2 Success Criterion 1.4.1 is titled "Use of Color" and says, in plain language: do not use color as the only way to convey information. If red means "error" and green means "success," there must also be an icon, a label, a shape, a position, or an underline that distinguishes the two.

This is the single rule that prevents most color-related accessibility failures. A few concrete applications:

  • Error states. Red border + error icon + text explaining the error. Not just a red outline.
  • Status indicators. Green circle labeled "Online" plus a tooltip. Not just a colored dot.
  • Charts. Distinct line styles (solid, dashed, dotted) in addition to color. Labels directly on the lines, not just in a legend.
  • Links in text. Underlined by default. The convention that links are "the blue words" fails for anyone who cannot see blue.
  • Form validation. Error message near the field plus an icon, not just a red border.
  • Maps. Patterns, labels, or shapes distinguish areas in addition to fill color.

Once you start looking for color-only information, it is everywhere. Every design system you build should flag "color as sole signal" as a review criterion.

Palettes that work for everyone

Some palettes are more robust than others under color vision deficiency. Guidelines for picking them:

  • Vary luminance as well as hue. If two colors differ only in hue, deuteranopia may collapse them. If they differ in luminance, the difference survives.
  • Avoid pure red-green pairs. The worst-case combination for the most common forms of color blindness.
  • Use blue plus orange, or blue plus yellow, for binary distinctions. These pairs survive most simulations better than red plus green.
  • For multi-category palettes, use sequentially ordered luminance. Dark to light in fixed steps produces a palette where order and distinction both survive.

Two well-known, accessibility-tested categorical palettes: the ColorBrewer palettes (originally for cartography) and the Viridis family (used in scientific visualization). Both are designed so that every pair of colors in the palette is distinguishable under common color vision deficiencies.

Generate a custom palette that stays accessible with Color Palette Generator, then run each pair through the contrast checker and the simulator before committing it to your design system.

Adjacent tools worth bookmarking

Tools worth bookmarking for accessibility work: Color Picker for exact hex values when you are tuning a palette, Color Gradient Generator for generating luminance-ordered gradient sequences, CSS Minifier for shipping the tuned stylesheet, and CSS Button Generator when you need to check that button states meet contrast against their background.

Related pillar guide

This cluster is part of the design and accessibility track. For the broader reference on browser tools for designers, see The Complete Guide to Free Online Tools in 2026.

FAQ

Do I really need to care if 92% of my users see color normally?

The 8% who do not are still users, and the same design improvements that help them (never rely on color alone, test contrast) also help low-vision users, users in sunlight, and users on cheap monitors with bad color calibration. Accessibility improvements compound across audiences.

Does dark mode fix color accessibility problems?

Not automatically. Dark mode changes the background, which changes which text colors hit the contrast threshold. Test every palette in both modes.

Is green always safe for "success" indicators?

Green alone, no. Green plus a checkmark icon and the word "Saved," yes. The pattern, not the color, is what makes it accessible.

Can I rely on high contrast mode in the OS to fix my design?

High contrast mode exists for a reason, but you should not ship a design that only works in it. Your default palette should pass WCAG AA on its own.

How do I test charts and data visualizations for color blindness?

Screenshot the chart, run it through a simulator for deuteranopia and protanopia, and check that every category is still distinguishable. If two lines collapse, add shape or pattern variation.

Closing thought

Color accessibility is not about restricting your palette to grays. It is about making sure color is the icing, not the message. When you stop using color as the sole signal for anything important, the palette becomes free to do the brand work it is there for, and every user — regardless of how their eyes see color — reads the interface the same way.