LazyTools

🔒 Every tool runs in your browser, the files and values you enter are never uploaded to any server. How it works

🔲 Contrast Grid Generator

Paste a palette and get an N×N grid of WCAG 2 contrast ratios, every color against every other, with AA and AAA pass badges.

7 colors · rows = text, columns = background · AA 4.5:1 · AA18 (large) 3:1 · AAA 7:1

Ink
Slate
Primary
Success
Warning
Danger
Surface
Ink
Aa1.0✗
Aa2.9✗
Aa4.3AA18
Aa5.9AA
Aa6.6AA
Aa4.1AA18
Aa15.5AAA
Slate
Aa2.9✗
Aa1.0✗
Aa1.5✗
Aa2.1✗
Aa2.3✗
Aa1.5✗
Aa5.4AA
Primary
Aa4.3AA18
Aa1.5✗
Aa1.0✗
Aa1.4✗
Aa1.5✗
Aa1.0✗
Aa3.6AA18
Success
Aa5.9AA
Aa2.1✗
Aa1.4✗
Aa1.0✗
Aa1.1✗
Aa1.4✗
Aa2.6✗
Warning
Aa6.6AA
Aa2.3✗
Aa1.5✗
Aa1.1✗
Aa1.0✗
Aa1.6✗
Aa2.3✗
Danger
Aa4.1AA18
Aa1.5✗
Aa1.0✗
Aa1.4✗
Aa1.6✗
Aa1.0✗
Aa3.8AA18
Surface
Aa15.5AAA
Aa5.4AA
Aa3.6AA18
Aa2.6✗
Aa2.3✗
Aa3.8AA18
Aa1.0✗

Exact WCAG 2 contrast ratios (sRGB relative luminance) for every text/background pair. 🔒 Computed in your browser.

Rate this tool:
Anonymous, no account, no identifier

How the contrast grid generator works

Enter one color per line (HEX, RGB or HSL, with an optional label). The tool computes the exact WCAG 2 contrast ratio for every ordered pair using sRGB relative luminance and renders a matrix: each cell shows the ratio and badges for AA (4.5:1), AA-large (3:1) and AAA (7:1), with the actual colors painted so you can see the combination.

A single-pair checker answers "do these two work?"; a contrast grid answers "which combinations in my whole palette are usable?", the design-system question. It reuses the exact WCAG math from our contrast checker across the full matrix.

Frequently asked questions

What is a contrast grid?

A matrix that pairs every color in a palette against every other and shows the contrast ratio and WCAG pass/fail for each combination, so you can see at a glance which foreground/background pairs are accessible.

How many colors can I check?

As many as you paste, one per line. The grid grows to N×N, so large palettes produce big grids; a design-system core palette of 6-12 colors is the typical use.

What do the badges mean?

Each cell shows whether the pair meets WCAG 2 AA (4.5:1 normal text), AA-large (3:1 for large text) and AAA (7:1). A pair can pass for large text but fail for body text, the badges make that explicit.

Can I label my colors?

Yes, add a label after the color on each line (e.g. "#1d87f1 Primary") and the grid uses it in the row and column headers.

Does this use APCA?

This grid uses WCAG 2 ratios, the current legal standard. The APCA (WCAG 3) checker is a separate tool for the emerging perceptual method.

Related color tools