Color contrast is one of the most straightforward accessibility requirements to understand and one of the most frequently violated. Insufficient contrast makes text difficult or impossible to read for people with low vision, color vision deficiencies, or anyone using a screen in bright sunlight. WCAG defines specific contrast ratios that all digital products should meet, and modern design tools make checking contrast easier than ever. There is no reason to ship inaccessible contrast in 2026.
WCAG Contrast Ratios Explained
WCAG measures contrast using a ratio between the luminance of the foreground color and the luminance of the background color, ranging from 1:1 (no contrast — same color) to 21:1 (maximum contrast — black on white). The specific requirements are:
- Normal text (under 18pt, or under 14pt bold): Minimum contrast ratio of 4.5:1 for Level AA (Success Criterion 1.4.3 Contrast Minimum). Level AAA requires 7:1 (Success Criterion 1.4.6 Contrast Enhanced).
- Large text (18pt and above, or 14pt bold and above): Minimum contrast ratio of 3:1 for Level AA. Level AAA requires 4.5:1. In CSS terms, 18pt is approximately 24px and 14pt bold is approximately 18.66px.
- Non-text contrast (Success Criterion 1.4.11): User interface components and graphical objects that are needed to understand the content must have a contrast ratio of at least 3:1 against adjacent colors. This applies to form field borders, icon buttons, chart segments, focus indicators, and any visual element that conveys meaning.
Note that these ratios apply to the visual presentation of text and UI components. Incidental text (such as text in decorative images, inactive UI components, or purely decorative elements) is exempt. Logos and brand names also have no minimum contrast requirement.
Tools to Check Contrast
There is no shortage of tools for checking color contrast. Use them early and often — ideally during the design phase, before any code is written.
- WebAIM Contrast Checker: A simple web-based tool where you enter foreground and background hex values and immediately see whether the combination passes AA and AAA for normal and large text.
- Figma plugins (Stark, A11y - Color Contrast Checker): Check contrast directly within your design tool. Designers should run these checks as part of their design review process.
- Browser DevTools: Chrome, Firefox, and Edge all display contrast ratios in their element inspector. When you inspect a text element, the color picker shows the contrast ratio and whether it passes WCAG AA and AAA.
- axe DevTools and Lighthouse: Automated testing tools that scan your rendered page for contrast violations. These catch issues in the built product that might have been missed in design.
Designing for Color Blindness
Color contrast ratios address the luminance difference between colors, but they do not fully address color blindness. Approximately 8 percent of men and 0.5 percent of women have some form of color vision deficiency. The most common type is red-green color blindness (deuteranopia and protanopia), which makes it difficult to distinguish between reds, greens, and browns.
WCAG Success Criterion 1.4.1 Use of Color (Level A) states that color must not be the only visual means of conveying information. This means:
- Error states should not rely solely on turning a field border red. Add an error icon, error text, or both.
- Links within body text should not be distinguished from surrounding text by color alone. Underline them, or provide another visual indicator beyond color.
- Charts and data visualizations should use patterns, labels, or textures in addition to color to differentiate data series.
- Status indicators (green for success, red for error, yellow for warning) should include text labels or icons alongside the color.
Dark Mode Considerations
Dark mode has become a standard offering in modern applications, but it introduces additional contrast challenges. A color palette that passes contrast checks in light mode may fail in dark mode, and vice versa. Common pitfalls include:
- Using the same accent color in both modes without adjusting for the different background luminance. A medium blue that passes 4.5:1 against white may fail against a dark gray background.
- Reducing text contrast in dark mode to avoid a "harsh" look. While pure white text on a pure black background can feel stark, reducing the text color to a medium gray often drops below the required 4.5:1 ratio. Use off-white (#E0E0E0 or lighter) against a near-black background instead.
- Forgetting to check non-text contrast in dark mode. Form field borders, icons, and focus indicators all need to meet 3:1 against the dark background.
Test contrast in every theme your application supports. If you offer light mode, dark mode, and high contrast mode, every color combination must pass in each one.
Practical Tips
- Build contrast into your design system: Define a color palette with pre-checked contrast pairings. For each background color in your system, document which text and icon colors pass AA and AAA contrast ratios.
- Avoid low-contrast placeholder text: Placeholder text in form fields is notoriously low contrast. If you use placeholders, ensure they meet 4.5:1 — or better, use persistent labels above the field instead of relying on placeholders.
- Test with real users: Automated tools catch contrast ratio violations, but they cannot tell you whether your color choices are easily distinguishable for people with color vision deficiencies. Use browser extensions that simulate different types of color blindness to preview your designs.
- Do not rely on opacity: Semi-transparent text or overlays make contrast calculations unpredictable because the effective contrast depends on what is behind the transparent layer. Use solid colors for text and critical UI elements.
- Consider your lowest-contrast state: Disabled buttons, muted labels, and secondary text are where contrast most often fails. Even secondary text should meet 4.5:1. Disabled elements are exempt from contrast requirements under WCAG, but consider whether a slightly higher contrast disabled state would still communicate "disabled" while being more readable.
Color contrast is accessibility at its most tangible. It requires no architectural changes, no complex ARIA patterns, and no specialized testing equipment. It is simply a matter of choosing colors that enough people can see — and checking your work.