Article

What Actually Happens Between Pointing a Camera at a QR Code and Seeing the Result

Published 2026-09-14

A camera doesn't know what a QR code is

A camera feed is just a continuous stream of image frames. A QR scanner's job is to repeatedly examine those frames — often dozens of times per second — looking for the specific geometric pattern that marks a QR code, then extract and decode the data once it's found.

Finding the code: the three squares

Every QR code has three distinctive nested-square "finder patterns" in three of its four corners, deliberately designed to have a unique, easily detected ratio of black-to-white regions that's unlikely to occur by accident in ordinary photos. A scanning algorithm searches each frame specifically for this pattern, which is how it locates a QR code's position, size and rotation without needing to understand anything else about the image yet.

Reading the data

Once the three finder patterns are located, the scanner can work out the code's exact grid alignment (even if the code is tilted or viewed at an angle) and read each individual black-or-white module as a single data bit. Built-in error correction data (part of the QR code standard) lets the decoder recover the correct data even if part of the code is damaged, dirty, or partially obscured — which is also why real-world QR codes can survive a surprising amount of visual noise and still scan correctly.

Why live scanning needs a loop, not a single check

Because a code might not be in frame, in focus, or well-lit on any single video frame, live camera scanning repeats this whole detection-and-decode process continuously (typically tied to the browser's animation frame rate) until a valid code is found, rather than checking just once.

Try it yourself

Our QR Code Scanner runs this exact process locally in your browser, from either an uploaded image or a live camera feed — no image or video frame is ever sent to a server.

Ready to try it yourself?
Open the QR Code Scanner →