QR codes explained: how they work and how to make a good one
QR codes are everywhere — menus, posters, payments, packaging. They feel like magic, but the idea is simple, and knowing a little makes the difference between a code that scans instantly and one that frustrates everyone.
What's inside
A QR ("Quick Response") code is a 2D barcode that stores data in a grid of black and white squares. Most commonly it holds a URL, but it can also carry plain text, Wi-Fi credentials, contact cards, or payment info. The three big squares in the corners are position markers that tell a scanner how the code is oriented, so it reads correctly from any angle.
Error correction — the clever part
QR codes have built-in error correction, meaning they still scan even if part of the code is dirty, damaged, or covered. There are four levels (L, M, Q, H); higher levels can recover more of the code but pack the squares more densely. This is exactly what makes it possible to put a logo in the middle of a QR code — the error correction fills in for the covered area.
Tips for a code that always scans
- Keep good contrast — dark code on a light background. Low contrast is the number one reason codes fail.
- Leave a quiet zone — a margin of empty space around the code so the scanner can find its edges.
- Don't shrink it too far — for print, bigger is safer, especially if scanned from a distance.
- If you add a logo, use a higher error-correction level so the covered squares are recoverable.
- Test before you print — scan it with a couple of phones first. A code baked into 1,000 flyers that doesn't scan is an expensive mistake.