Skip to content

Contrast Span — The Number WCAG Doesn't Give You ​

WCAG AA requires 4.5:1 contrast between text and background. That's a ratio between two specific colors. You test a pair, get a number, pass or fail.

But a design system palette isn't a pair. It's a sequence — 10, 12, 18 shades. And the question isn't "do these two pass?" The question is: across this whole sequence, how far apart do any two shades need to be to guarantee 4.5:1?

That distance is the contrast span, written as K.

WCAG AA Contrast Grid

A Concrete Example ​

Take Tailwind CSS blue — 11 shades from blue-50 to blue-950.

Pick any two shades 4 steps apart:

PairContrast
blue-50 / blue-4002.8:1 — fail
blue-100 / blue-5003.1:1 — fail
blue-600 / blue-9503.4:1 — fail

Pick any two shades 6 steps apart:

PairContrast
blue-50 / blue-6006.2:1 — pass
blue-100 / blue-7007.1:1 — pass
blue-400 / blue-9505.8:1 — pass

For Tailwind blue, every pair that is 6 or more steps apart passes 4.5:1. No pair 5 steps apart guarantees it.

K = 6.

What K Means ​

K is not about one pair. It's a guarantee for the whole palette:

Any two shades separated by at least K steps will pass WCAG AA for body text — no matter which shades they are.

You don't need to check pairs individually anymore. You check once, get K, and the entire palette is characterized.

Why K Matters ​

Once you know K, you know what's possible in your design system.

In a 12-step palette with K=6: the minimum distance for readable text uses up half the palette. Text color must be at least 6 steps away from the background. That leaves the remaining steps for borders, hover states, selected states — all competing for the narrower contrast ranges.

In a 12-step palette with K=4: you have more room. More shades can serve multiple roles without crowding.

K is not just a number — it's the constraint every component in your system works within.

K Is a Property of the Palette, Not a Pair ​

This is the shift from checking individual pairs to understanding the palette as a whole.

WCAG tells you: "these two specific colors work together."

K tells you: "here is the minimum structural distance that always works, anywhere in this palette."

The next question is: given K and the palette size N, how efficiently is the contrast space being used? That's contrast efficiency.

→ Contrast Efficiency