Contrast (Minimum)
Text has a contrast ratio of at least 4.5:1 against its background (3:1 for large text, 18pt+ or 14pt+ bold).
Why it matters
Low-vision users, older users, and anyone reading on a phone in sunlight lose text that blends into its background. This is one of the single most common violations on the web — light-grey-on-white body text is everywhere.
Automatically detected
Fully automatable: axe-core computes the actual rendered contrast ratio against the actual rendered background, including images and gradients where the DOM allows it to sample the color.
Related axe-core rules: color-contrast
Fails
<p style="color: #999999; background: #ffffff;">
Save 20% when billed annually.
</p>#999999 on white is roughly 2.85:1 — well under the 4.5:1 minimum for normal-sized text.
Passes
<p style="color: #595959; background: #ffffff;">
Save 20% when billed annually.
</p>#595959 on white is roughly 7:1, comfortably clearing AA for normal text.
Openwell finds violations like this one across your whole site, clusters them by the component that caused them, and generates a fix that's re-validated before you see it.
Scan your site free