Color Contrast Checker (Colour)

A free colour contrast checker. Test any two colours against WCAG 2.2 AA and AAA.

Check
Contrast ratio 2.84 to 1. Passes 0 of 4 text thresholds.

Colours

The background is assumed fully opaque: that's what your foreground colour is actually read against.

Live preview

Normal text, 16px. The quick brown fox jumps over the lazy dog. This is roughly what a body paragraph looks like at this contrast.

Large bold text, 24px

Contrast ratio

2.84:1

Passes 0 of 4 text thresholds (AA and AAA, normal and large text).

  • Fail · AA, normal text (needs 4.5:1)
  • Fail · AA, large text (needs 3.0:1)
  • Fail · AAA, normal text (needs 7.0:1)
  • Fail · AAA, large text (needs 4.5:1)
  • Fail · UI components & graphical objects (needs 3.0:1)

How it looks with colour blindness

  • ProtanopiaNo red cones3.70:1Fail AA, passes large text
  • DeuteranopiaNo green cones2.45:1Fail AA
  • TritanopiaNo blue cones3.32:1Fail AA, passes large text
  • AchromatopsiaNo colour, only light and dark2.85:1Fail AA

Simulated with the Machado (2009) model at full severity. Your own screen and eyes will differ, so treat it as a guide. Pass uses the 4.5:1 AA threshold for normal text.

Suggested fix

This fails AA. Try a passing alternative:

#DB3A00(4.55:1 against this background)
Want AAA (7:1) instead? Try(7.04:1)
How to read it

What the ratio and badges actually mean.

The ratio

1:1 (invisible) to 21:1 (black on white).

AA vs AAA

AA is the legal minimum; AAA is a stricter, optional bar.

What counts as "large"

18.66px bold, or 24px at any weight. Everything else uses the stricter rule.

UI components

Icons, borders and focus states need 3:1 contrast too, not the text ratio.

Questions

Frequently asked questions

What's a good contrast ratio for text?

For WCAG 2.2 Level AA, the minimum is 4.5:1 for normal text and 3:1 for large text. Level AAA raises that to 7:1 for normal text and 4.5:1 for large text. Most teams design to AA. It's the level referenced by most accessibility laws and procurement standards, including the UK's public sector accessibility regulations.

What counts as "large text" under WCAG?

Large text is defined as 18.66px (14pt) and bold, or 24px (18pt) and above at any weight. Everything smaller than that's judged against the stricter "normal text" thresholds, even if it looks reasonably big on screen.

Why does this tool give a different number to another contrast checker?

It shouldn't, if both tools implement the WCAG 2.2 relative luminance formula correctly. The maths is a published standard, not a matter of opinion. If you see a different result, check whether the other tool is reading the same two hex values, and whether either colour has transparency (opacity changes the effective colour actually rendered, which changes the ratio).

Is passing WCAG contrast enough to make a design accessible?

No. Contrast is necessary but not sufficient. It says nothing about whether the underlying information is conveyed by colour alone, whether interactive elements have a visible focus state, whether the page works with a screen reader, or whether text remains readable when a user overrides font size or applies their own colour scheme. Treat a passing ratio as one check cleared, not a finished accessibility review.

How does the "suggest a passing alternative" feature work?

When a pair fails, the tool keeps your foreground colour's hue and saturation and searches for the smallest change in lightness (darker or lighter, whichever is closer to your original colour) that reaches the target ratio. It's a starting point for a design decision, not a replacement for choosing a colour that still fits your brand and layout.

Can I check every colour on my site at once instead of one pair at a time?

Yes, switch to "Check a whole page" above. Paste your CSS or HTML, or enter a live URL, and the tool extracts every color and background-color declaration it can find (including CSS custom properties) and scores each pair against WCAG. It reads what your CSS declares, not what a browser actually renders after JavaScript or the cascade runs, so it also shows an "every text colour against every background colour" matrix as a second check) useful when the automatic pairing doesn't match your real layout.

What's WCAG, and what do AA and AAA mean?

WCAG (Web Content Accessibility Guidelines) is the standard rulebook for making digital content usable by people with low vision, colour blindness or other visual differences. AA (4.5:1 normal text, 3:1 large text) is the minimum most laws and clients expect: pass it and text is readable for almost everyone. AAA (7:1 / 4.5:1) is a stricter, optional bar, good for body copy on content-heavy sites but often impractical for a full brand palette.

Do UI components like icons, borders and focus states need to pass contrast too?

Yes, but the threshold is different. Non-text elements that carry meaning (icons, form field borders, focus indicators, button outlines) have their own WCAG 2.2 threshold of 3:1 against their surroundings, separate from the 4.5:1 / 3:1 text rules above.

Embed this calculator

Free to use on your own site. Paste this where you want it. Keep the credit line, it's how people find the full tool.

<iframe src="https://myuxacademy.com/embed/contrast-checker/" title="colour contrast checker" width="100%" height="640" style="border:0;max-width:800px" loading="lazy"></iframe>
<script async src="https://myuxacademy.com/embed.js"></script>
<p>Free <a href="https://myuxacademy.com/tools/contrast-checker/">colour contrast checker</a> by <a href="https://myuxacademy.com/">UX Academy</a></p>

Preview

Optional: add ?theme=dark or ?accent=0b6cff to the iframe address.