Color Contrast Checker

WCAG 2.1 Konformität für Barrierefreiheit prüfen

{{ __t('small_text') }}: The quick brown fox jumps over the lazy dog.

{{ __t('large_text') }}: The quick brown fox.

{{ ratio }}:1

{{ __t('contrast_ratio') }}

{{ passAAsmall ? '✓' : '✗' }}
AA Small (4.5:1)
{{ passAAlarge ? '✓' : '✗' }}
AA Large (3:1)
{{ passAAAsmall ? '✓' : '✗' }}
AAA Small (7:1)
{{ passAAAlarge ? '✓' : '✗' }}
AAA Large (4.5:1)

Wofür braucht man Kontrast-Prüfungen?

Etwa 8 % der Männer und 0,5 % der Frauen haben eine Form von Farbsehschwäche. Niedriger Kontrast macht Text schwer lesbar — besonders bei kleinen Schriften, schlechten Bildschirmen und für Nutzer mit Sehbehinderung. Die WCAG-Standards (Web Content Accessibility Guidelines) definieren Mindestwerte, die in vielen Ländern gesetzlich vorgeschrieben sind (EU EN 301 549, US ADA, BITV).

WCAG 2.1 Schwellwerte

Level AA verlangt 4,5:1 für normalen Text (unter 24 px bzw. 18,66 px Bold) und 3:1 für großen Text. Level AAA verlangt 7:1 für normalen Text und 4,5:1 für großen Text. UI-Komponenten und Grafiken brauchen mindestens 3:1. Diese Werte basieren auf der relativen Luminanz nach der WCAG-Formel — Hue (Farbton) spielt keine Rolle.

Die WCAG-Kontrastformel im Detail

Das Kontrastverhältnis nach WCAG 2.2 berechnet sich als (L1 + 0.05) / (L2 + 0.05), wobei L1 die relative Luminanz der helleren und L2 die der dunkleren Farbe ist. Die relative Luminanz selbst wird im sRGB-Farbraum gewonnen: Jeder Kanal R, G, B wird zuerst von Gamma-encodierten Werten in lineares Licht zurückgerechnet (Schwellwert 0.03928), danach gewichtet mit 0.2126*R + 0.7152*G + 0.0722*B. Diese Gewichte spiegeln die Empfindlichkeit des menschlichen Auges wider — Grün trägt am stärksten zur wahrgenommenen Helligkeit bei, Blau am wenigsten.

RGB beschreibt Farbe additiv über drei Kanäle, ist aber für Designentscheidungen ungeeignet: Zwei RGB-Werte mit gleicher Helligkeit für das Auge können völlig verschiedene Hex-Codes haben. HSL (Hue, Saturation, Lightness) ist intuitiver für Farbschemata, aber die Lightness-Komponente entspricht nicht der wahrgenommenen Helligkeit. LAB hingegen ist perzeptuell uniform — gleiche numerische Distanzen entsprechen gleichen wahrgenommenen Unterschieden. WCAG arbeitet bewusst nicht mit LAB, sondern mit relativer Luminanz, weil die Formel auf Display-Output (sRGB) zugeschnitten ist.

Das CSS Color Module Level 4 erweitert dieses Bild um neue Farbräume wie color(display-p3 ...), oklch() und lab(). Displays mit P3-Gamut zeigen bis zu 25 % mehr Farben als sRGB — vor allem in Rot und Grün. Wer für P3-Geräte designt, sollte Fallbacks für sRGB-Browser hinterlegen. Wichtig: WCAG-Kontrastberechnungen sind weiterhin sRGB-basiert; APCA (Advanced Perceptual Contrast Algorithm) ist ein moderner Nachfolger, aber noch nicht normativ in WCAG.

So nutzt du den Contrast Checker richtig

Die Bedienung ist simpel, aber ein paar Schritte sorgen dafür, dass du verlässliche Ergebnisse bekommst — besonders, wenn du eine echte Marken- oder Designsystem-Palette prüfst.

  1. Trage Vordergrund- (Text) und Hintergrundfarbe als Hex-Werte ein. Halbtransparente Farben (rgba) müssen vorher mit dem effektiven Hintergrund verrechnet werden — Transparenz allein verfälscht das Ergebnis.
  2. Beachte die Größe deines Texts: Body-Copy unter 18,66 px Bold bzw. 24 px Regular gilt als kleiner Text und benötigt AA 4,5:1. Headings und große Captions fallen unter die 3:1-Regel.
  3. Prüfe nicht nur den Idealfall, sondern auch Hover-, Focus- und Disabled-States. Ein Button, der disabled wirkt aber 2,8:1 Kontrast hat, fällt durch — selbst wenn der aktive Zustand AAA erreicht.
  4. Nutze den Swap-Button, um Foreground und Background zu tauschen. Das Verhältnis bleibt identisch, aber du erkennst psychologische Effekte (dunkler Text auf hellem Grund wirkt seriöser, hell-auf-dunkel moderner).
  5. Teile die URL — alle Parameter sind in der URL kodiert, sodass Designer und Entwickler exakt dieselbe Konstellation öffnen können, ohne erneut Farben einzugeben.

Konkrete Kontrast-Beispiele

Diese Beispiele zeigen typische Designentscheidungen und ob sie die WCAG-Schwellen einhalten.

  • Standard-Body: color: #212121; background: #ffffff; erreicht 16,1:1 — AAA klar bestanden, ideal für lange Lesetexte.
  • CalcSI Teal Primary: color: #0d9488; background: #ffffff; liefert 3,87:1 — AA Large bestanden, AA Small (4,5:1) nicht. Buttons mit dieser Farbe brauchen mindestens 18,66 px Bold oder einen dunkleren Ton wie #0f766e (5,2:1).
  • Klassischer Disabled-Look: color: #9e9e9e; background: #ffffff; liegt bei 2,85:1 — fällt durch AA. WCAG erlaubt aber, dass disabled-States explizit ausgenommen sind (Success Criterion 1.4.3 Note).
  • Dark Mode: color: #e0e0e0; background: #121212; erreicht 15,3:1 — sehr augenfreundlich. Achte darauf, dass Akzentfarben gegen #121212 ebenfalls AA halten; Material Design empfiehlt deshalb 16 % weiße Überlagerung für Surface-Elemente.
  • WCAG AA Daumenregel: Verhältnis >= 4,5:1 für Body, >= 3:1 für Headings ab 24 px / 18,66 px Bold und für UI-Komponenten (Icons, Borders, Form-Outlines).

Grenzen der Kontrastprüfung

Die WCAG-Formel berücksichtigt keine Farbton-Unterschiede, sondern nur Luminanz — zwei stark gesättigte Komplementärfarben (z. B. reines Rot auf reinem Grün) können das Verhältnis 1,06:1 haben und trotzdem für Menschen ohne Farbsehschwäche lesbar wirken. Für Menschen mit Deuteranopie oder Protanopie ist solch ein Design jedoch katastrophal. Berücksichtige außerdem, dass Bildschirme stark variieren: Ein nicht kalibriertes Office-Display, ein OLED-Smartphone und ein E-Ink-Reader stellen dieselben Hex-Codes völlig anders dar. Wide-Gamut-Displays (P3) zeigen Farben gesättigter — Kontraste können dort optisch stärker wirken als die sRGB-Berechnung suggeriert. Schließlich: Reflexionen, Sonnenlicht und niedrige Helligkeitsstufen drücken den effektiven Kontrast deutlich nach unten. Sicherheitspuffer von 10–20 % über dem WCAG-Minimum sind in der Praxis sinnvoll.

Häufige Fragen zum Kontrast

Warum genügt AA, statt überall AAA anzustreben?
AAA verlangt 7:1 für Body-Text — das engt die Farbpalette so stark ein, dass Markenidentität leidet. WCAG selbst sagt, AAA sei nicht für komplette Sites Pflicht. Aim for AA als Mindeststandard, AAA für kritische Inhalte (Behörden, Medizin, Finanz).
Gilt das Kontrast-Kriterium auch für Logos?
Nein — WCAG 1.4.3 nimmt Logos und Markenbestandteile explizit aus. Trotzdem sollten Logos gut sichtbar bleiben; ein unlesbares Logo schadet der Marke mehr als jede WCAG-Vorgabe.
Was zählt eigentlich als großer Text?
Mindestens 24 px Regular oder 18,66 px Bold (entspricht 18 pt bzw. 14 pt Bold). Unter diesen Schwellen greift die strengere 4,5:1-Regel.
Reicht der Browser-Inspector nicht aus?
Chrome DevTools und Firefox Accessibility Inspector zeigen Kontraste an, scheitern aber an halbtransparenten Layern, Background-Images und CSS-Filtern. Ein dedizierter Checker mit Hex-Eingabe gibt verlässliche Werte für die Designdiskussion.
Soll ich APCA statt WCAG verwenden?
APCA ist perzeptuell genauer, aber noch nicht normativ. Für rechtliche Konformität (EAA ab 2025, ADA, BITV) gilt WCAG 2.1/2.2. Du kannst APCA zusätzlich für interne Reviews nutzen, sollst aber den WCAG-Wert dokumentieren.
Wie teste ich Farbenblindheit-Simulation?
Chrome DevTools bietet unter Rendering -> Emulate vision deficiencies Protanopie, Deuteranopie, Tritanopie und Achromatopsie. Prüfe damit, ob deine Status-Farben (Erfolg/Fehler) auch ohne Farbton-Unterscheidung funktionieren — Icons oder Text-Labels sind Pflicht.

Verwandte Tools