Sample heading
Body text looks like this in this vision mode.
Meets the highest AAA standard — excellent readability for everyone, including low vision.
Perceptual contrast Next-gen (W3C draft)
Sample heading
Body text looks like this in this vision mode.
Sample heading
Body text looks like this in this vision mode.
Sample heading
Body text looks like this in this vision mode.
Sample heading
Body text looks like this in this vision mode.
This contrast checker tests color pairs and full palettes against WCAG 2.1 accessibility standards and the APCA algorithm from the WCAG 3.0 draft. Enter two colors and get an instant verdict — plain language first, technical numbers second — along with a live text preview, dark mode toggle, color blindness simulation, and a palette audit matrix for up to 12 colors. All processing runs in your browser; no color data leaves your device.
Most contrast checkers stop at WCAG 2.1 ratios. This tool also computes the APCA (Accessible Perceptual Contrast Algorithm) Lightness Contrast value, which models how human vision perceives lightness differences between text and its background. APCA gives more accurate guidance for light text on dark backgrounds and for large display text, where WCAG 2.1 can be overly strict or lenient. Both scores are shown together so you can make informed decisions for your specific use case.
WCAG 2.1 defines contrast as the ratio of relative luminances between two colors. Relative luminance measures how bright a color appears after converting its sRGB values to a linear light scale and weighting the red, green, and blue channels according to human perception (green contributes most; blue least). The formula produces a ratio from 1:1 (no contrast) to 21:1 (black on white). A ratio of 4.5:1 or higher means normal body text meets the WCAG AA minimum.
APCA takes a different approach. Instead of a symmetric luminance ratio, it models how the human visual system perceives lightness differences between a text color and its background. The result is an Lc value ranging roughly from 0 to +/- 108. Positive values indicate dark text on a light background; negative values indicate light text on dark. This polarity matters: the same two colors produce different APCA scores depending on which is foreground and which is background. For dark mode interfaces, where WCAG 2.1 often over-penalizes bright text, APCA provides more accurate guidance.
All calculations run entirely in your browser. No color values, palette data, or exported reports are sent to any server. You can confirm this by checking your browser's network tab while using the tool.
WCAG 2.1 uses a luminance ratio that treats foreground and background symmetrically — swapping the two colors produces the same score. APCA models human perception more accurately by accounting for which color is text and which is the surface behind it. This polarity means a bright color on dark and dark on bright can yield different APCA scores. APCA is especially useful for dark mode interfaces, where WCAG 2.1 can produce misleading results.
Normal text (under 18pt or 14pt bold) requires at least 4.5:1. Large text (18pt or larger, or 14pt bold) requires at least 3:1. WCAG AAA raises these to 7:1 and 4.5:1 respectively.
Expand the Palette Audit section and add your colors manually, or use the import button to paste CSS custom properties, a Tailwind config snippet, or a plain list of hex values. The tool builds an N×N matrix showing the WCAG result for every foreground/background combination. Click any cell to open that pair in the Quick Check panel.
Yes. The import dialog accepts CSS custom property blocks (--color-primary: #1a73e8;), Tailwind config color objects, and plain newline-separated hex values. Parsed colors are added to the palette immediately.
The simulation uses established Brettel/Vienot color vision deficiency matrices to approximate how colors appear under protanopia, deuteranopia, and tritanopia. Delta E 2000 scores measure whether two colors remain perceptually distinguishable under each condition. No simulation perfectly replicates individual variation, but these models are widely used in accessibility research and professional design tools.