Skip to main content

We use cookies to run this site, to understand how it's being used, and to measure our advertising. You can accept everything, reject everything that isn't strictly necessary, or decide for yourself. You can change your mind any time from the link in our footer.

We use cookies to understand how this site is used and to measure our advertising. You can change what you allow any time.

Free Tool · WCAG 2.1 AA Contrast Checker

Is Your Text Readable Enough to Pass?

Light grey text on white looks refined and reads badly. WCAG 2.1 puts a number on it: body text needs at least 4.5 to 1 contrast against its background, and bigger text gets a little more room. In Ontario, the AODA requires public websites of most organizations to meet WCAG 2.0 AA, and 2.1 AA is the current bar. Put your actual colours and text size in and get a straight answer.

Your colours and text

16 px regular

Body text on most sites is 16 px. Headings run 24 px and up.

How it reads

Call us today to book your free consultation.

Contrast ratio

2.54:1

At 16 px regular this counts as normal text. WCAG AA needs 4.5:1. Fail.

Darken the text or lighten the background further.

  • AAA at this size needs 7:1: fail.
  • As an icon, border or button outline it needs 3:1: fail.

WCAG 2.1 success criteria 1.4.3 (AA), 1.4.6 (AAA) and 1.4.11 (non-text). Large text is 24 px regular or 18.66 px bold and up.

That is one pair at one size. A real page has dozens: body text, captions, placeholders, links, buttons in every state, disabled controls. The free audit scores your whole page's accessibility in about 30 seconds. The deep audit lists every failing pair with the element it lives on.

Check Your Whole Page

Calculated exactly as WCAG 2.1 defines it: relative luminance of each colour, then (lighter + 0.05) divided by (darker + 0.05). Thresholds are success criteria 1.4.3 Contrast (Minimum), 1.4.6 Contrast (Enhanced) and 1.4.11 Non-text Contrast. Large text is 18 point (24 px) regular or 14 point (18.66 px) bold and up. This tool checks the pair you give it; it does not read your site.