AmufoYour free workshop for everyday things.

Contrast Checker

Check whether a text color passes contrast on its background.

Runs in your browser

Large text, 24 px and up

Normal body text at the size most people read it, which is where contrast usually fails.

Small print, captions and footnotes.

—
contrast ratio
—AA · normal text
—AA · large text
—AAA · normal text
—AA · UI and borders

A contrast checker computes the contrast ratio between two colors - WCAG's measure, from 1:1 to 21:1 - and tells you whether a pair passes AA or AAA for body text, large text and interface elements. This tool shows the exact ratio, the verdicts, and what the combination actually looks like, all in your browser.

More printables to make

Open the Design page

Reading the numbers

Contrast is expressed as a ratio between the lighter and darker color, from 1:1 (identical) to 21:1 (black on white).

RatioWhat it clears
3:1AA for large text, and for interface borders, icons and focus rings
4.5:1AA for normal body text, and AAA for large text
7:1AAA for normal body text

Large text means 24 px or more, or 18.66 px or more if it is bold. WCAG defines the bold cutoff in points, 14 pt, which is 18.66 px at the CSS default of 96 dpi.

The mistake almost everyone makes

Mid-tone brand colors are the usual failure. A color that looks strong in a logo often sits right in the middle of the range, where it has too little contrast against white and too little against black. There is no background that rescues it for body text.

The fix is not to change the brand color, it is to stop using it for body text. Keep it for headings at large sizes, for borders, for icons, and for buttons where it is the background behind white text. Use a near-black neutral for the paragraphs.

Where contrast is easy to forget

Placeholder text in form fields, disabled buttons that still need to be readable, captions and footnotes, text on top of a photo, and light grey “secondary” text that looked fine on a bright monitor in a dark room.

The last one is worth naming: a laptop at full brightness indoors is the most forgiving condition your design will ever meet. Phone in daylight is the real test.

What contrast does not cover

Passing the ratio is necessary and not sufficient. Color must never be the only signal, so an error state needs a word or an icon rather than just turning red. Focus must stay visible for keyboard users. And a ratio says nothing about font size, line length or weight, which decide legibility just as much.

Questions

What ratio do I need?

4.5:1 for normal text and 3:1 for large text to pass AA. AAA asks for 7:1 and 4.5:1. Interface components and focus indicators need 3:1.

What counts as large text?

24 px and above, or 18.66 px and above when bold (WCAG says 14 pt; the pixel value assumes the CSS 96 dpi default). Below that the normal-text threshold applies.

Does contrast alone make a design accessible?

No. It is one requirement among many, and the easiest to check. Color must also never be the only way information is conveyed.

Why does my brand color fail?

Mid-tone colors fail most often: they have too little contrast against both white and black. Keep the brand color for large headings, borders and buttons with white text, and use a darker neutral for body text.

Do the numbers match an audit tool?

Yes. The relative luminance formula is the one WCAG 2 defines, which is what axe, Lighthouse and manual audits use.