Developer Tools

QR-Codes im Detail: Funktionsweise und Fehlerkorrektur-Level

Ein QR-Code (Quick Response Code) ist ein zweidimensionaler Barcode (Matrix-Code), der 1994 von der japanischen Firma Denso Wave entwickelt wurde. Im Gegensatz zum klassischen eindimensionalen Strichcode auf Produktverpackungen speichert ein QR-Code Daten sowohl in horizontaler als auch in vertikaler Richtung.

Dadurch können QR-Codes wesentlich grössere Datenmengen auf deutlich kleinerem Raum speichern und sind extrem schnell aus jedem beliebigen Winkel lesbar.


Der Aufbau und die Anatomie eines QR-Codes

Wenn Sie einen QR-Code betrachten, sehen Sie kein zufälliges Pixelmuster. Jeder QR-Code ist in feste, funktionale Bereiche unterteilt:

[ Finder ]   [ Timing ]   [ Finder ]
   ■■■          ■ ■          ■■■
   ■ ■                       ■ ■
   ■■■                       ■■■

             [ Alignment ]
                  ■
             
[ Finder ]                [ Data & Info ]
   ■■■
   ■ ■
   ■■■

Die funktionalen Elemente:

  1. Finder Patterns (Positionsmarken): Die drei grossen Quadrate in den Ecken (oben links, oben rechts, unten links). Sie helfen der Kamera, die Ausrichtung, Neigung und Grösse des QR-Codes sofort zu erfassen – auch wenn das Bild auf dem Kopf steht oder schräg fotografiert wird.
  2. Alignment Patterns (Ausrichtungsmarken): Kleinere Quadrate, die bei grösseren QR-Codes verstreut sind. Sie dienen dazu, perspektivische Verzerrungen (z. B. beim Fotografieren einer gebogenen Oberfläche wie einer Flasche) auszugleichen.
  3. Timing Patterns (Taktungslinien): Schwarz-weiss abwechselnde Linien, die die Finder Patterns miteinander verbinden. Sie definieren das zugrundeliegende Pixelraster (die Matrix-Koordinaten).
  4. Quiet Zone (Ruhebereich): Der weisse Rahmen, der den gesamten Code umgibt. Er ist essenziell, damit der Scanner den Code vom Hintergrund isolieren kann.
  5. Datenbereich: Der restliche Teil enthält die eigentlichen Daten (z. B. eine URL) sowie die Fehlerkorrektur-Daten.

Die Fehlerkorrektur (Reed-Solomon-Code)

Eine der herausragendsten Eigenschaften des QR-Codes ist seine Robustheit. Selbst wenn der Code zerkratzt, verschmutzt oder teilweise abgerissen ist, kann er meist noch problemlos gescannt werden. Dies wird durch den mathematischen Reed-Solomon-Fehlerkorrektur-Algorithmus realisiert.

Beim Erstellen des Codes werden redundante Fehlerkorrektur-Daten generiert und im Datenbereich eingebettet. Es gibt vier standardisierte Fehlerkorrektur-Level:

LevelRekonstruktions-KapazitätTypischer Einsatzzweck
Level L (Low)ca. 7 % der Daten können wiederhergestellt werden.Reine digitale Bildschirmanzeigen, maximale Datenmenge bei kleiner Grösse.
Level M (Medium)ca. 15 % der Daten können wiederhergestellt werden.Der Standard für gedruckte Etiketten oder Visitenkarten.
Level Q (Quarter)ca. 25 % der Daten können wiederhergestellt werden.Einsatzorte mit erhöhtem Verschmutzungsrisiko oder leichter Abnutzung.
Level H (High)ca. 30 % der Daten können wiederhergestellt werden.Marketing-Aktionen (Einbetten von Firmenlogos in der Mitte) oder raue Industrieumgebungen.

Best Practices für die Verwendung von QR-Codes

  • Halten Sie URLs kurz: Je mehr Text in einem QR-Code gespeichert wird, desto enger und komplexer wird das Pixelmuster (höhere Version). Komplexe Muster lassen sich von älteren Handykameras bei schlechtem Licht schwerer scannen. Verwenden Sie kurze URLs oder leiten Sie über Redirects.
  • Ausreichend Kontrast sichern: QR-Codes müssen nicht zwingend schwarz-weiss sein, aber der Kontrast zwischen den dunklen Pixeln (Vordergrund) und den hellen Pixeln (Hintergrund) muss hoch genug sein. Vermeiden Sie helle Farben für die Pixel oder dunkle Hintergründe.
  • Vorsicht bei inversen Farben: Viele Scanner können keine invertierten QR-Codes (weisse Pixel auf schwarzem Grund) lesen. Belassen Sie den Hintergrund hell.

Codierungsmodi: wie Daten gespeichert werden

Ein QR-Code wählt je nach Inhalt automatisch den effizientesten Codierungsmodus. Je spezialisierter der Modus, desto mehr Zeichen passen in dieselbe Fläche:

ModusErlaubte ZeichenBits pro ZeichenTypischer Einsatz
Numerisch0–9~3,3Seriennummern, Zahlencodes
Alphanumerisch0–9, A–Z, einige Symbole~5,5kurze Codes in Grossbuchstaben
Byte (UTF-8)beliebige Zeichen8URLs, Texte mit Umlauten
Kanjijapanische Zeichen~13asiatische Texte

Wer eine URL mit Umlauten oder Kleinbuchstaben codiert, landet automatisch im Byte-Modus, der am meisten Platz braucht. Eine in Grossbuchstaben gehaltene, kurze URL passt in den kompakteren alphanumerischen Modus – das hält das Muster lesbarer.


Häufige QR-Code-Inhalte und ihr Format

QR-Codes können weit mehr als nur Webadressen transportieren. Der Inhalt folgt jeweils einem festen Textschema, das Scanner-Apps erkennen:

ZweckBeispielinhalt
Website öffnenhttps://allerate.com/
WLAN-ZugangWIFI:T:WPA;S:MeinNetz;P:geheim123;;
Kontakt (vCard)BEGIN:VCARD ... END:VCARD
E-Mail verfassenmailto:kontakt@allerate.com
Telefonnummertel:+41441234567

Besonders praktisch ist der WLAN-QR-Code: Statt ein langes Passwort einzutippen, scannen Gäste den Code und verbinden sich automatisch. Bei URLs lohnt sich eine kurze, kanonische Adresse – idealerweise abgesichert über eine 301-Weiterleitung, damit das Ziel später änderbar bleibt.


Typische Scan-Probleme und ihre Ursachen

ProblemUrsacheLösung
Code wird nicht erkanntfehlende Quiet Zoneweissen Rand um den Code lassen
Schlechte Lesbarkeitzu geringer Kontrastdunkle Module, heller Hintergrund
Sehr dichtes Musterzu viel TextURL kürzen, Redirect nutzen
Unscharf gedrucktzu kleine Druckgrössemindestens 2×2 cm drucken
Logo macht Code unlesbarLevel zu niedrigFehlerkorrektur auf Q oder H

Der mit Abstand häufigste Fehler ist die fehlende Quiet Zone: Wird der QR-Code randlos in ein Layout gequetscht, kann der Scanner ihn nicht vom Hintergrund trennen.


Praxisbeispiel: QR-Code für ein Plakat

Eine Marketing-Abteilung druckt einen QR-Code auf ein Strassenplakat:

  • Falsch: Die volle Kampagnen-URL mit Tracking-Parametern (https://allerate.com/aktion?utm_source=plakat&utm_medium=print&utm_campaign=frühling2026) wird statisch codiert. Das Muster wird sehr dicht, und aus mehreren Metern Entfernung scheitert der Scan.
  • Richtig: Es wird eine kurze, statische Adresse (https://allerate.com/p/) codiert, die per Weiterleitung auf die lange Tracking-URL zeigt. Das Muster bleibt grob und gut scanbar, und das Ziel lässt sich später ändern, ohne das Plakat neu zu drucken.

Die Lehre: Weniger Daten ergeben ein gröberes, robusteres Muster. Kombinieren Sie kurze URLs mit Redirects und wählen Sie für Druckanwendungen mindestens Level M.

[!TIP] Möchten Sie eine URL, Kontaktdaten oder WLAN-Zugänge schnell und sicher in einen lesbaren QR-Code umwandeln? Nutzen Sie den QR-Code Generator auf balou.tools, um QR-Codes in verschiedenen Fehlerkorrektur-Levels (L, M, Q, H) zu erzeugen und herunterzuladen. Eine Übersicht über weitere praktische Werkzeuge finden Sie in den Developer Tools.

Häufig gestellte Fragen (FAQ)

Wie viel Text kann in einem einzelnen QR-Code gespeichert werden?

Die maximale Speicherkapazität hängt von der QR-Code-Version (Grösse) und der Fehlerkorrektur ab. Bei maximaler Grösse (Version 40) und niedrigster Fehlerkorrektur können bis zu 7089 numerische Zeichen, 4296 alphanumerische Zeichen oder 2953 Binär-Bytes in einem QR-Code codiert werden.

Warum kann man Logos in QR-Codes einbetten, ohne dass sie unlesbar werden?

Das liegt an der eingebauten Reed-Solomon-Fehlerkorrektur. Wird ein Logo in der Mitte platziert, stuft der Decoder diesen Bereich als "beschädigt" ein. Ist der Fehlerkorrektur-Level hoch genug eingestellt (z.B. Level H bis zu 30%), kann der QR-Code trotz des Logos fehlerfrei ausgelesen werden.

Was ist der Unterschied zwischen statischen und dynamischen QR-Codes?

Ein statischer QR-Code enthält die Zieldaten (z. B. die URL) direkt und unveränderlich. Ein dynamischer QR-Code enthält nur eine kurze Weiterleitungs-URL, hinter der das eigentliche Ziel über einen Redirect getauscht werden kann – das gedruckte Muster bleibt gleich, das Ziel ist änderbar. Dynamische Codes ermöglichen so auch Scan-Statistiken.

Welcher Fehlerkorrektur-Level eignet sich für den Druck?

Für normale gedruckte Etiketten und Visitenkarten ist Level M (15 Prozent) der bewährte Standard. Soll ein Logo eingebettet werden oder ist mit Verschmutzung und Abnutzung zu rechnen, wählen Sie Level Q oder H. Beachten Sie, dass ein höherer Level mehr Module benötigt und das Muster dichter macht.