WCAG AA Contrast Requirements

Everything WCAG 2.1 Level AA mandates for color contrast — text thresholds, large-text exceptions, UI components, and how to meet them.

At a glance

Normal text
4.5:1 (SC 1.4.3)
Large text (18pt+ or 14pt+ bold)
3:1 (SC 1.4.3)
UI components & graphical objects
3:1 (SC 1.4.11)
Exceptions
Logos, incidental text, decorative imagery
Conformance bodies
ADA Title III, Section 508, EN 301 549, AODA

WCAG 2.1 Level AA is the conformance level that most legal frameworks, design systems, and procurement contracts target. Three success criteria govern color contrast at this tier — and getting any one of them wrong is the leading cause of failed accessibility audits.

Success Criterion 1.4.3 — Contrast (Minimum)

The visual presentation of text and images of text has a contrast ratio of at least 4.5:1 — except for large text (3:1), incidental text inside an image, decorative text, and text that is part of an inactive UI component or pure logotype.

Large text is defined as 18 point (24 px in CSS) and larger, or 14 point (18.66 px) and larger when bold. The threshold is anchored to the rendered size after CSS applies — Tailwind’s text-lg (18 px) is not large text under WCAG.

Success Criterion 1.4.11 — Non-text Contrast

Added in WCAG 2.1, this criterion requires 3:1 contrast between adjacent colors for any UI component (button borders, focus indicators, form-field outlines, toggle states) and graphical objects required to understand content (chart bars, icons that convey meaning).

A common failure: a form input with a 1-pixel border whose color does not differ enough from the surrounding background. If the border is the only thing communicating "this is an input," it must hit 3:1.

How to meet AA without compromising design

Start with the design system: tokenize semantic colors (color-text-primary, color-text-secondary, color-border-default) and check each token combination against its intended surface. The contrast checker above accepts any two colors and instantly reports AA conformance.

For brand colors that fail AA on white, pair them with a darkened background variant rather than darkening the brand. Most accessible design systems expose two brand surfaces — a brand-on-white surface (failing) and a brand-on-dark surface (passing).

Frequently asked questions

Is WCAG AA the legal standard?
In practice, yes — for most jurisdictions. The ADA (US), EN 301 549 (EU), AODA (Ontario), and Section 508 (US federal) all reference WCAG AA. The European Accessibility Act, which came into force in mid-2025, makes AA effectively binding for any consumer-facing digital service in the EU.
What counts as "large text"?
WCAG defines large as 18 point (24 px CSS) regular weight, or 14 point (18.66 px CSS) bold weight, *as rendered*. Browser zoom and root font-size scaling change this — a heading set in rem units may be large at 100% zoom but normal-size at 80%.
Do logos and brand wordmarks need to meet AA?
No — WCAG explicitly exempts logos and "logotype" text from contrast requirements. The intent is to avoid forcing brand redesigns. But everything *around* the logo (taglines, navigation, captions) still must meet AA.
What about disabled buttons?
Inactive UI components are exempt from 1.4.11. The text on a disabled button does not have to meet 4.5:1 — but the button must still be clearly identifiable as "disabled" through cues other than color alone (typically opacity plus a state attribute).

Related guides

Related Tools