Color Contrast Checker

Free, no signup. Compare foreground and background colors against WCAG 2.2 AA and AAA, get the closest practical hex alternatives that pass, or check a live URL's real rendered contrast.

The quick brown fox jumps over the lazy dog.Large text and UI components use the lower 3:1 AA threshold.

Runs entirely in your browser — nothing you paste is uploaded or stored. Anonymous run-level outcome counters may be used for aggregate research; URLs, domains, IPs, and identifiers are never included, and no statistic is released below 100 runs.

Feedback
Report a bug

Found something broken in Color Contrast Checker? Let us know what happened — this goes straight to a private triage queue, not a public list.

What will be sent
 No tool inputs, uploads, pasted source, complete results, query parameters, or URL fragments are attached automatically. You can edit or remove the selected passage above. Browser and anti-abuse metadata is processed for spam prevention. 

Palette audit

Paste CSS variables, token declarations, or a hex list. The matrix checks every color as text against every other color as a background.

Example

Example data — engine-verified result

#777777 foreground on #FFFFFF: 4.48:1

  • Pass: AA large text and UI (3:1).
  • Below: AA normal text and AAA large text (4.5:1), plus AAA normal text (7:1).
  • Nearest AA normal-text alternative: #767676, one step darker, at 4.54:1.

How it works

Paste mode calculates contrast from the WCAG relative-luminance formula, not by simply comparing RGB values. The suggestions preserve the foreground hue and saturation while walking its lightness toward the nearest passing color, then verify the rounded hex result. The URL mode above instead loads the page in a metered headless browser and reads each element's actual computed color and background after the CSS cascade resolves — the only way to catch contrast failures caused by inherited color, semi-transparent backgrounds, CSS variables, or the browser's default stylesheet, none of which a pasted color list can see.

Use the right rule

Normal-size text needs 4.5:1 for AA. Large text (at least 24px regular or 18.66px bold) and non-text UI indicators need 3:1. Color should never be the only way to communicate a state.

Frequently asked questions

What contrast ratio do I need?

WCAG AA requires 4.5:1 for normal text and 3:1 for large text and non-text UI components. AAA requires 7:1 for normal text and 4.5:1 for large text.

Does this prove my page is accessible?

No. It checks color pairs, not typography, focus states, images of text, or (in paste mode) real rendered backgrounds. Treat it as a design-time check and test the finished interface too.

Where does my palette go?

In paste mode it stays in the browser — paste CSS custom properties, Tailwind-style name/value tokens, or a loose list of hex colors. Only the URL mode sends anything to our server, and that is the public page address you enter, not a palette.

How is the URL mode different from pasting colors?

Pasted colors give you exact math on the pair you type. The URL mode loads the real page in a metered headless browser and reads each element's actual computed color and background after the CSS cascade, inheritance, opacity, and browser defaults are resolved — the only way to get a genuine contrast verdict for a live page, since a static-HTML color guess can be wrong.

Feature requests for Color Contrast Checker

Upvote what you want most. New ideas can be submitted from the floating Feedback menu; requests appear here once approved, and the most-wanted rise to the top.

Loading…

➕ Request a feature

New requests are reviewed before they appear here.

Über das Tool

Prüfe Vorder- und Hintergrundfarben gegen WCAG 2.2 AA und AAA, finde die nächsten praktischen Hex-Alternativen, die bestehen, und auditiere CSS-Farb- oder Design-Token-Paletten lokal im Browser. Der URL-Modus kann zusätzlich den tatsächlich gerenderten Kontrast einer öffentlichen Seite untersuchen.

Ein Kontrastwert ist ein gezielter Hinweis für visuelle Lesbarkeit, kein vollständiger Barrierefreiheitsnachweis.

Funktionen

  • Kontrastprüfung für beliebige Vorder-/Hintergrundpaare mit AA- und AAA-Status
  • Nächste passende Vordergrundfarben und klarer Wechsel zwischen Text- und UI-Schwellen
  • Lokale CSS- und Design-Token-Analyse mit Befunden und praktischen Alternativen
  • Optionaler öffentlicher URL-Abruf für gerenderte Kontraste mit begrenzter Browser-Prüfung

Funktionsweise

Füge CSS/Farbwerte ein oder gib ein Vorder-/Hintergrundpaar ein. Die Engine berechnet relative Luminanz und Kontrast, vergleicht AA/AAA-Schwellen und sucht nahe Alternativen. Für URL mode wird eine öffentliche Seite begrenzt gerendert; Befunde bleiben von der lokalen Palette getrennt.

Einschränkungen

  • Kontrast ist nur ein Teil von WCAG; Fokus, Tastaturbedienung, Semantik, Bewegung und Screenreader-Verhalten werden nicht vollständig geprüft.
  • Der URL-Modus sieht nur zugängliche, begrenzt gerenderte Inhalte und kann dynamische oder geschützte Komponenten verpassen.
  • Nächstgelegene Farben sind mathematische Vorschläge und müssen gegen Markenpalette, Zustände und echte Komponenten geprüft werden.

Häufig gestellte Fragen

Was bedeutet AA oder AAA?

WCAG legt unterschiedliche Kontrastschwellen für normalen Text, großen Text und UI-Komponenten fest. AA ist die übliche Mindeststufe; AAA ist strenger. Der Prüfer zeigt die angewendete Schwelle transparent.

Beweist ein bestandener Kontrast, dass meine Seite barrierefrei ist?

Nein. Kontrast ist nur ein Teil von WCAG. Tastaturbedienung, Struktur, Fokus, Alternativtexte und Screenreader-Verhalten benötigen eigene Prüfungen.

Was macht der URL-Modus?

Er prüft den tatsächlich gerenderten Kontrast einer zugänglichen öffentlichen URL mit begrenztem Abruf. Dynamische, geschützte oder nicht gerenderte Zustände können fehlen.

Werden meine Farben an einen Server gesendet?

Eingefügte CSS- und Farbwerte werden lokal im Browser analysiert. Nur der optionale URL-Modus ruft eine öffentliche Seite über den begrenzten Prüfdienst ab.