WCAG contrast checker.

Check color contrast ratios between text and background to ensure your design is accessible and compliant with WCAG standards.

Contrast ratio

Good contrast is essential for accessibility. This tool helps you check if your text is readable for all users.

Button example
Contrast score
21 : 1
Excellent

WCAG contrast requirements at a glance

ContentLevel AALevel AAA
Normal text4.5:17:1
Large text3:14.5:1
UI components & graphics3:13:1

Large text means 18pt (24px) regular or 14pt (18.7px) bold and above. The UI row comes from WCAG 2.1 SC 1.4.11 (non-text contrast) and covers things like input borders, icons, and focus rings.

How the ratio is calculated

The ratio compares the relative luminance of the lighter and darker color: (L1 + 0.05) / (L2 + 0.05). Pure black on white scores 21:1, identical colors score 1:1.

Luminance is not a simple average of the channels: green is weighted most heavily (about 71%), then red (21%), then blue (7%), because that is how sensitive our eyes are to each. That is why a mid-green can pass against white while a mid-blue of the same "brightness" fails.

Contrast questions

Do logos need to pass?

No. Logos and purely decorative text are exempt from WCAG contrast requirements.

What about placeholder and disabled text?

Disabled controls are exempt, but placeholder text is not: users have to read it, so treat it as normal text and aim for 4.5:1.

My brand color fails AA. Now what?

Darken the text shade or lighten the background; you usually only need a one or two step shade shift to pass. Keep the original brand color for non-text accents like icons and borders, where the 3:1 rule applies instead.

Why contrast matters

Low contrast text is difficult to read for many people, especially those with low vision, color blindness, or varying screen qualities (like glare on a phone). Ensuring good contrast is one of the easiest ways to improve your site's usability.

Updated June 2026

Colors

Text color
Background color

WCAG grades

AA normalSmall text (under 18pt regular)
Pass
AA largeLarge text (18pt+ or 14pt bold)
Pass
AAA normalEnhanced contrast standard
Pass
AAA largeEnhanced, for large text
Pass