Wie funktioniert ein QR-Code?

aktualisiert am 21. August 2026

Ein QR-Code speichert Informationen in einem Muster aus schwarzen und weissen Flächen. Beim Scannen erkennt die Kamera dieses Muster, liest die darin codierten Daten aus und wandelt sie wieder in die ursprüngliche Information um.

Das kann beispielsweise eine Internetadresse, ein Text, eine Telefonnummer oder eine digitale Visitenkarte sein.

Doch wie wird aus einer Internetadresse überhaupt dieses typische Quadrat? Und wo befinden sich die Informationen innerhalb des QR-Codes?

Was wird in einem QR-Code gespeichert?

Ein QR-Code kann unterschiedliche Arten von Informationen enthalten. Häufig gespeichert werden beispielsweise:

  • Internetadressen
  • Texte
  • Telefonnummern
  • E-Mail-Adressen
  • Kontaktdaten
  • WLAN-Zugangsdaten

Bei einem klassischen statischen QR-Code befindet sich diese Information direkt im QR-Code.

Wenn beispielsweise die Adresse https://www.qr-swiss.ch hinterlegt wird, werden die Zeichen dieser Adresse technisch codiert und als Muster im QR-Code gespeichert.

Wie wird aus einer Internetadresse ein QR-Code?

Damit beispielsweise eine URL als QR-Code dargestellt werden kann, sind mehrere Schritte notwendig.

1. Die Information wird in Daten umgewandelt

Zunächst wird der Inhalt analysiert. Ein QR-Code kann Informationen auf unterschiedliche Arten codieren. Dafür gibt es verschiedene Modi, beispielsweise für Zahlen, alphanumerische Zeichen oder allgemeine Daten.

Welcher Modus verwendet wird, beeinflusst auch, wie die einzelnen Zeichen in Nullen und Einsen umgewandelt werden.

Ein einfaches Beispiel zeigt, wie das grundsätzlich funktioniert.

Beispiel: Wie wird der Buchstabe Q gespeichert?

Im sogenannten alphanumerischen Modus besitzt jedes erlaubte Zeichen einen festgelegten Zahlenwert.

Die Buchstaben beginnen dabei bei A mit dem Wert 10:

A = 10
B = 11
C = 12
...
Q = 26
R = 27

Wenn am Ende der zu speichernden Zeichenfolge nur noch ein einzelnes Q übrig ist, wird dessen Wert 26 als Binärzahl mit 6 Bit dargestellt:

Q → 26 → 011010

Damit ist aus dem Buchstaben eine Folge aus Nullen und Einsen geworden.

Wichtig ist jedoch: Ein QR-Code speichert im alphanumerischen Modus normalerweise nicht jeden Buchstaben einzeln mit 6 Bit.

Jeweils zwei Zeichen werden zusammengefasst und gemeinsam in 11 Bit gespeichert. Dafür wird der Zahlenwert des ersten Zeichens mit 45 multipliziert und der Wert des zweiten Zeichens addiert. Nur wenn bei einer ungeraden Anzahl von Zeichen am Ende ein einzelnes Zeichen übrig bleibt, wird dieses alleine mit 6 Bit codiert.

Bei den beiden Zeichen QR sieht das beispielsweise so aus:

Q = 26
R = 27

Daraus wird:

26 × 45 + 27 = 1197

Die Zahl 1197 wird anschliessend als 11-Bit-Binärzahl gespeichert:

QR → 1197 → 10010101101

Auf diese Weise können zwei Zeichen platzsparender gemeinsam codiert werden.

Das Beispiel zeigt allerdings nur den alphanumerischen Modus. Andere Inhalte können anders codiert werden. Eine Internetadresse wie https://www.qr-swiss.ch enthält beispielsweise auch Kleinbuchstaben und wird daher in der Praxis nicht einfach Zeichen für Zeichen nach diesem alphanumerischen Beispiel verarbeitet.

Entscheidend ist: Am Ende entstehen immer Daten in Form von Bits – also Nullen und Einsen.

2. Zusätzliche Daten werden ergänzt

Im QR-Code befindet sich aber nicht nur die eigentliche Information.

Vor und neben den eigentlichen Nutzdaten werden weitere Angaben benötigt. Sie teilen dem Scanner beispielsweise mit:

  • welcher Codierungsmodus verwendet wird,
  • wie viele Zeichen gespeichert wurden,
  • welche Fehlerkorrektur verwendet wird,
  • wie die Daten später ausgewertet werden müssen.

Zusätzlich werden Daten für die Fehlerkorrektur erzeugt.

Dadurch kann ein QR-Code unter bestimmten Umständen auch dann noch gelesen werden, wenn ein kleiner Teil beschädigt, verschmutzt oder verdeckt ist.

Fehlerkorrektur bei QR-Codes: Was L, M, Q und H bedeuten

3. Wie werden aus 0 und 1 schwarze und weisse Module?

Nachdem die Daten als Folge von Nullen und Einsen vorliegen und die zusätzlichen Informationen ergänzt wurden, müssen diese Bits im quadratischen Raster des QR-Codes untergebracht werden.

Die einzelnen kleinen schwarzen und weissen Flächen eines QR-Codes werden Module genannt. Ein QR-Code der Version 1 besteht beispielsweise aus 21 × 21 Modulen. Mit steigender Version wird das Raster grösser.

Vereinfacht kann man sich zunächst vorstellen:

0 → weisses Modul
1 → schwarzes Modul

Aus unserem einzelnen Beispiel:

011010

würde damit zunächst:

weiss – schwarz – schwarz – weiss – schwarz – weiss

Die Bits werden allerdings nicht einfach in einer geraden Reihe von links nach rechts in den QR-Code geschrieben.

Sie werden nach festgelegten Regeln im Raster verteilt. Dabei beginnt die Datenbelegung grundsätzlich im unteren rechten Bereich und verläuft in schmalen Spaltenpaaren abwechselnd nach oben und unten durch den QR-Code.

Bereiche, die bereits für andere Funktionen reserviert sind, werden dabei übersprungen. Dazu gehören beispielsweise die drei grossen Positionserkennungsmuster in den Ecken.

Deshalb können Sie in einem fertigen QR-Code nicht auf eine bestimmte Stelle zeigen und sagen: „Dieses schwarze Quadrat ist der Buchstabe Q.“

Ein Zeichen wurde zunächst in Bits umgewandelt, diese Bits wurden mit vielen weiteren Bits kombiniert und anschliessend über das Raster verteilt.

4. Warum entspricht eine 1 nicht immer einem schwarzen Feld?

Jetzt kommt noch ein weiterer Verarbeitungsschritt hinzu: die sogenannte Maskierung.

Nachdem die Daten im Raster platziert wurden, wird ein mathematisches Maskierungsmuster darübergelegt. Bei bestimmten Modulen wird dadurch der Zustand umgekehrt:

0 wird zu 1

oder:

1 wird zu 0

Das bedeutet: Ein Bit, das zunächst einem schwarzen Modul entsprechen würde, kann im fertigen QR-Code weiss dargestellt werden – und umgekehrt.

Die Maskierung hat einen praktischen Grund. Sie verhindert ungünstige Muster, beispielsweise sehr grosse zusammenhängende schwarze oder weisse Flächen, die das zuverlässige Erkennen des QR-Codes erschweren könnten.

Der Scanner kennt die verwendete Maskierung und kann sie beim Auslesen wieder rückgängig machen.

Der komplette Weg sieht deshalb vereinfacht so aus:

Zeichen
→ Zahlenwert
→ Binärdaten aus 0 und 1
→ zusätzliche technische Informationen
→ Fehlerkorrekturdaten
→ Verteilung der Bits im QR-Code
→ Maskierung
fertiges Muster aus schwarzen und weissen Modulen

Beim Scannen läuft dieser Vorgang im Wesentlichen wieder in die andere Richtung.

Warum hat ein QR-Code drei grosse Quadrate?

Besonders auffällig sind die drei grossen Quadrate oben links, oben rechts und unten links.

Diese werden Positionserkennungsmuster oder Finder Patterns genannt.

Sie helfen der Kamera dabei, den QR-Code überhaupt als solchen zu erkennen und seine Orientierung festzustellen.

Dadurch kann ein QR-Code beispielsweise auch erkannt werden, wenn er leicht gedreht aufgenommen wird.

Zusätzlich enthält ein QR-Code weitere Hilfsmuster. Sie unterstützen den Scanner unter anderem dabei, das Raster korrekt zu bestimmen und Verzerrungen auszugleichen.

Warum hat ein QR-Code drei grosse Quadrate in den Ecken?

Wie liest ein Smartphone einen QR-Code?

Beim Scannen passiert innerhalb weniger Augenblicke eine ganze Reihe von Schritten.

Die Kamera sucht zunächst nach den typischen Positionserkennungsmustern. Sobald sie einen QR-Code erkannt hat, bestimmt die Software seine Position, Grösse und Ausrichtung.

Anschliessend wird das Raster analysiert.

Vereinfacht läuft der Vorgang so ab:

  1. Die Kamera erkennt den QR-Code.
  2. Position und Perspektive werden bestimmt.
  3. Die schwarzen und weissen Module werden ausgewertet.
  4. Technische Informationen wie Fehlerkorrektur und Maskierung werden berücksichtigt.
  5. Beschädigte oder nicht eindeutig lesbare Daten werden soweit möglich rekonstruiert.
  6. Die codierten Daten werden wieder zusammengesetzt.
  7. Das Smartphone erkennt, um welche Art von Inhalt es sich handelt.

Wird beispielsweise eine Internetadresse erkannt, kann das Smartphone anbieten, diese im Browser zu öffnen.

Bei einer Telefonnummer kann stattdessen die Telefon-App angeboten werden.

Braucht ein QR-Code eine Internetverbindung?

Für das eigentliche Lesen eines QR-Codes ist grundsätzlich keine Internetverbindung notwendig.

Enthält der QR-Code beispielsweise nur einen Text, kann dieser direkt auf dem Smartphone angezeigt werden.

Anders sieht es bei einer Internetadresse aus. Der QR-Code kann zwar ohne Internetverbindung gelesen werden, die darin hinterlegte Website lässt sich jedoch erst mit einer Internetverbindung aufrufen.

Dasselbe gilt für dynamische QR-Codes: Der Code kann erkannt werden, für die Weiterleitung zum hinterlegten Ziel ist jedoch eine Verbindung zum Server notwendig.

Was ist bei einem dynamischen QR-Code anders?

Bei einem statischen QR-Code wird das eigentliche Ziel direkt im QR-Code gespeichert.

Bei einem dynamischen QR-Code befindet sich dagegen normalerweise eine kurze Weiterleitungsadresse im QR-Code.

Ein vereinfachtes Beispiel:

Ein QR-Code enthält eine Adresse von QR Swiss. Wird diese gescannt, ruft das Smartphone zunächst diese Adresse auf. Der Server prüft anschliessend, welches aktuelle Ziel für diesen QR-Code hinterlegt wurde, und leitet den Besucher dorthin weiter.

Dadurch kann sich das eigentliche Ziel ändern, obwohl das aufgedruckte QR-Muster identisch bleibt.

Wenn ein Restaurant beispielsweise einen QR-Code auf 5’000 Speisekarten druckt, kann die hinterlegte Zielseite später geändert werden, ohne dass neue QR-Codes gedruckt werden müssen.

Bei QR Swiss lassen sich solche dynamischen QR-Codes verwalten und ihre hinterlegten Ziele nachträglich ändern.

Dynamische vs. statische QR-Codes: Was ist der Unterschied?

Ist ein QR-Code verschlüsselt?

Ein QR-Code ist normalerweise keine Verschlüsselung.

Die darin enthaltenen Informationen sind lediglich codiert. Wer den QR-Code scannt, kann den hinterlegten Inhalt grundsätzlich ebenfalls auslesen.

Sie sollten deshalb keine vertraulichen Passwörter, internen Zugangsdaten oder andere sensible Informationen öffentlich in einem gewöhnlichen QR-Code hinterlegen.

Ein kompliziert aussehendes QR-Muster bedeutet nicht, dass die darin enthaltenen Daten geschützt sind.

Warum funktionieren QR-Codes trotz kleiner Beschädigungen?

QR-Codes verfügen über eine eingebaute Fehlerkorrektur.

Dabei werden zusätzliche Informationen erzeugt, mit denen fehlende oder falsch gelesene Bereiche teilweise rekonstruiert werden können.

Es gibt dafür die vier Fehlerkorrekturstufen:

L, M, Q und H.

Je höher die gewählte Fehlerkorrektur ist, desto mehr zusätzliche Daten müssen im QR-Code untergebracht werden.

Das ist beispielsweise wichtig, wenn ein Logo in einen QR-Code integriert werden soll. Das Logo verdeckt einen Teil des Musters. Eine passende Fehlerkorrektur kann dabei helfen, dass der Code trotzdem zuverlässig lesbar bleibt.

QR-Code mit Logo erstellen – individuell und trotzdem gut scannbar

Warum werden manche QR-Codes dichter als andere?

Nicht jeder QR-Code sieht gleich aus.

Je mehr Informationen direkt gespeichert werden, desto mehr Module werden benötigt. Der QR-Code wird dadurch komplexer und das Muster dichter.

Eine sehr lange Internetadresse benötigt beispielsweise mehr Platz als eine kurze Internetadresse.

Auch die gewählte Fehlerkorrektur beeinflusst die Datenmenge.

Das ist einer der Gründe, weshalb kurze Weiterleitungsadressen bei dynamischen QR-Codes praktisch sein können. Der QR-Code muss nicht unbedingt die lange endgültige Zieladresse enthalten.

Besonders bei kleinen Druckgrössen kann ein weniger komplexes Muster die zuverlässige Erkennung erleichtern.

Kevin Kühn

Mein Name ist Kevin Kühn – Webdesigner und Entwickler. Mit QR Swiss entwickle ich eine Plattform, die QR-Code-Management einfach, professionell und zuverlässig macht – gebaut für Schweizer Ansprüche.