THIS WEEK Top 9 Free Instagram Apps to Enhance Your Influence Read this week's article →

Understanding QR Codes: History, Structure, and How They Work

Published February 26, 2025 · GoTo.now Team

Understanding QR Codes: History, Structure, and How They Work - Illustration

TL;DR - QR codes were invented in 1994 to track car parts in Japanese factories. Every code is a grid of black and white squares with built-in patterns that tell a scanner where to look, plus error correction that keeps it readable even when damaged.

Key points

  • Denso Wave built the first QR code in 1994 to speed up factory scanning
  • The three big corner squares tell your camera where the code is and which way is up
  • Error correction means a code can lose up to 30% of itself and still scan
  • Modern codes can be dynamic - The printed square stays the same while the link behind it changes
  • One code can hold a URL, contact card, Wi-Fi login or plain text

You scan these little squares all the time - Menus, tickets, parcel labels. But have you ever wondered what your phone actually sees in that pattern? The answer is more clever than you'd expect, and knowing it makes you better at using them.

It started with car parts, not marketing

In 1994, a Japanese company called Denso Wave had a problem. Their factories tracked car parts with barcodes, and barcodes are slow. Each one holds about 20 characters, so workers scanned several per box, all day long.

An engineer named Masahiro Hara designed something better: a square code readable from any angle, holding far more data. The story goes that the black-and-white grid idea came to him during a lunchtime game of Go. He called it the Quick Response code, because speed was the whole point.

Denso Wave made a decision that changed everything: they published the spec and didn't charge license fees. Free to use meant everyone used it. QR codes spread from factories to advertising, ticketing and payments - And then smartphones put a scanner in every pocket. When phone cameras started reading codes natively, no app needed, the squares went from niche to everywhere.

What all those squares actually do

A QR code looks random. It isn't. Every region of the grid has a job:

Part What it looks like What it does
Finder patterns Three big squares in the corners Tell the scanner "here's a QR code, and this way is up"
Alignment patterns Smaller squares inside Keep the code readable at an angle or on a curved surface
Timing patterns Alternating lines between corners Give the scanner a ruler for the grid
Quiet zone Blank margin around the edge Separates the code from everything else
Data modules Everything else Your actual information, stored as ones and zeros

The part people love most: error correction. QR codes use Reed–Solomon coding, which stores the data with redundancy. At the highest level, up to 30% of the code can be scratched, torn or covered and it still scans. That's the trick behind codes with logos in the middle - The logo destroys some modules, and the error correction shrugs it off.

What happens in the second after you scan

The whole process runs in a blink:

  1. Your camera spots the three finder patterns and locks onto the code
  2. It maps the grid, using the timing and alignment patterns to correct for angle and distortion
  3. Each square becomes a bit - Dark is 1, light is 0
  4. Error correction repairs anything smudged or blocked
  5. The decoded data tells your phone what to do: open a link, save a contact, join a Wi-Fi network

That last step is why one square format handles so many jobs. The code doesn't "do" anything - It just hands your phone a piece of data, and the phone takes it from there.

Static codes, dynamic codes, and why it matters

Here's the distinction that matters most in practice. A static code has the data baked into the pattern. Print it, and it's frozen forever. A dynamic code stores a short link instead, and that link redirects wherever you want.

The printed square never changes - But the destination behind it can. Print a dynamic code on 10,000 boxes, then move the page it points to? Update one setting and every box keeps working. Make one free with the QR code generator, pick your colors, add a logo, and edit the destination anytime - Scans stay unlimited.

Dynamic codes have a second win: since scans flow through a short link, you get scan counts in your private dashboard. A paper poster suddenly reports back like a web page. Shortening the link on the homepage first also keeps the code simple, since less data means a cleaner grid.

From a factory floor to your back pocket

Thirty years on, Hara's lunch-break idea runs restaurant menus, boarding passes, payments and product packaging all over the world. Once you understand the structure - Corners for finding, grid for data, redundancy for damage - The little squares stop being mysterious. And once you know the static-versus-dynamic difference, you'll never print a frozen code again.

Step-by-step guides for this topic

Try it yourself: shorten your next link free on the GoTo.now homepage, or make a trackable QR code in your brand colors.