WCAG contrast checker — offline
Text and background contrast, checked against AA and AAA — with an honest live preview.
13.98:1
Normal text: The quick brown fox jumps over the lazy dog (16px).
Large text: Readable headline at 24px bold.
Check WCAG colour contrast offline
Contrast is the accessibility requirement that affects the most people. Low-vision users, anyone over about forty, and every user reading a phone screen in sunlight all depend on adequate contrast — which makes it one of the highest-impact things you can check, and one of the easiest to get wrong by eye on a bright laptop display.
Enter a text and background colour, or use the pickers, and the WCAG luminance maths runs in your browser. Nothing is transmitted, so an unreleased brand palette stays private. HEX, rgb(), and hsl() are all accepted as input.
What ratio do you actually need?
- AA, normal text — 4.5:1. The practical baseline, and what most accessibility policies and procurement requirements reference.
- AA, large text — 3:1. Large means 18pt and above, or 14pt bold and above.
- AAA, normal text — 7:1. The enhanced level, appropriate where the audience is known to include low-vision users.
- AAA, large text — 4.5:1.
The badges show exactly which levels a pairing passes, so you adjust until the ones you are targeting go green rather than guessing at how close you are.
The cases people forget
Body text is usually fine because it gets the attention. The failures cluster in the places nobody checks: placeholder text in form fields, disabled-looking secondary buttons, grey helper text under inputs, footer links, and — most commonly of all — light grey text on white, which designers love and which routinely lands under 3:1.
A few things the ratio alone will not tell you. Contrast requirements also apply to non-text elements such as icons, form borders, and focus indicators, at 3:1. Text placed over a photograph has to meet the requirement against the lightest part of the image behind it. And colour must never be the only way information is conveyed — a red error message needs an icon or wording too, since a colour-blind user may not see the distinction at all.
Building the palette itself? The colour converter provides OKLCH, whose perceptual uniformity makes it much easier to adjust lightness predictably until a pairing passes — also entirely on your device.
How to check WCAG color contrast offline
- 1
Enter the text and background colors (or use the pickers).
- 2
Read the contrast ratio and the AA/AAA badges.
- 3
Adjust until every level you target passes.
WCAG Contrast Checker — frequently asked questions
What contrast ratio do I need for WCAG?
AA requires 4.5:1 for normal text and 3:1 for large text (18pt+/14pt bold). AAA raises that to 7:1 and 4.5:1. The badges below show exactly which levels your pair passes.
Is anything sent to a server?
No — the WCAG luminance math runs in your browser. Your unreleased brand palette stays private.
Which color formats can I enter?
HEX (#333, #2e8b57), rgb(), and hsl() — or use the color pickers.