A QR code is a two-dimensional barcode that stores text in a grid of squares. A camera reads the grid, software decodes it back into characters, and the phone offers to do something with the result. That is the whole idea. The reason it feels like more than that is the text is usually a web address, so scanning appears to "open a link" when what actually happened was reading a string.
The format was created by Denso Wave in 1994 to track car parts faster than a striped barcode allowed, and the history is public along with the specification. It is an open standard with no licensing fee, which is why every camera app on earth can read one.
If you already know what a code is and want to make one, how to create a QR code is the practical guide. This page is the explainer underneath it.
What the Squares Actually Are
Not every module in a code is data.
The three large squares in the corners are finder patterns. They tell the scanner where the code is in the frame and how it is rotated, which is why a code works upside down or at an angle. Smaller alignment patterns keep the grid honest when the code is on a curved surface. A line of alternating modules between the corners, the timing pattern, tells the scanner how wide one module is at the current distance.
Everything else is payload plus error correction. Those correction bytes are what let a code survive a coffee ring or a logo in the middle: the decoder reconstructs the missing modules from the redundancy, up to the level the code was generated at. Level M, the usual default, tolerates roughly 15 percent damage.
What Happens Between Scan and Page
Decoding is local and offline. The camera resolves the grid, the decoder applies error correction and turns modules into bytes, and the bytes become a string. No network involved, which is why a code still scans on a plane.
The phone then reads the start of that string and decides what to offer. https:// produces a prompt to open a page. WIFI: produces a prompt to join a network. BEGIN:VCARD produces a prompt to save a contact. If the string is just words, most camera apps show the words.
That split matters for two practical reasons. A scan cannot execute anything by itself, so the risk of a QR code lives entirely in where it sends you, which is what are QR codes safe covers. And nothing about the code changes when the destination changes, which is the whole basis of dynamic codes.
What a Code Can Hold
A URL is the common case, and the rest are more useful than people expect. A wifi QR code puts the network name, security type, and password into one string so guests join without being read a password across a room. A vCard code carries a full contact record. Tickets and industrial parts often carry a plain identifier with no protocol at all.
Length has a physical consequence. More characters means a higher version of the code, which means more modules in the same printed area, which means each module is smaller and harder for a camera to resolve. That is why encoding a short link rather than a long tagged URL produces a visibly chunkier, more forgiving code, and it is the most common reason a code fails to scan.
Static and Dynamic: The Only Distinction That Matters Commercially
The code itself has no concept of static or dynamic. Both are the same squares.
The difference is what the string points at. A static code encodes the destination directly, so the destination is fixed at the moment of printing. A dynamic code encodes a short link you control, so the redirect behind it can be repointed later and each scan can be counted.
Everything marketers care about, scan counts by day and country, changing a campaign page after the flyers went out, comparing two placements, comes from that redirect rather than from the code. Dynamic vs static QR codes walks the trade in full, and how to track QR code scans covers reading the numbers.
Want to see the difference? Create a link on the free plan, generate a code from it, and compare it against a code made from the raw destination URL.
Where They Are Actually Used Now
Menus and payments made codes normal, but the durable uses are quieter: joining wifi without a password, a poster that leads to a booking page, product packaging that carries provenance and instructions, a code on an invoice that opens a payment page with the amount pre-filled.
Regulation is pushing the packaging case hardest. The EU's digital product passport programme puts a scannable identifier on physical goods, which is the same mechanism applied to compliance rather than marketing, and digital product passport QR codes covers what that requires.
What all of them share is that the code is the cheap half. The link behind it decides whether it can be measured, corrected, or trusted.
Read the Cornerstone Series
This sits in the features cluster. Start with how to create a QR code, then dynamic vs static for the commercial decision. The QR codes feature page covers styling, and how to scan a QR code covers the reader side.
Related on the Blog
Frequently asked questions
What is a QR code?
A QR code is a two-dimensional barcode that stores text in a grid of black and white squares. A camera reads the grid, decodes it back into characters, and the phone acts on what it finds. Most codes hold a web address, but the format itself just holds text.
How does a QR code work?
Three large squares in the corners tell the scanner where the code is and how it is rotated, a timing pattern tells it how big each module is, and the remaining modules carry the data plus error-correction bytes. Decoding happens on the device, offline, in a fraction of a second.
What can a QR code store besides a link?
Wifi credentials that join a network without typing a password, a vCard that saves a contact, a phone number, an email, a calendar event, a payment string, or plain text. The scanner reads the prefix and offers the matching action, which is why a wifi code prompts to connect rather than to open a page.
Do QR codes expire?
The printed code does not. It is a static pattern of squares and it decodes the same way forever. What can expire is the destination: if the code encodes a URL and that page is taken down, the scan succeeds and the browser then fails. A dynamic code avoids that by encoding a link you can repoint.
Do you need internet to scan a QR code?
Not to decode it. The camera and decoder work entirely offline, so the phone can read the text out of any code without a connection. Internet is needed only for what happens next, which for a URL code means loading the page.
Are QR codes free to make?
The format is an open standard with no licensing fee, so generating a static code costs nothing. What you pay for, if anything, is the service behind a dynamic code: a hosted redirect that lets you change the destination after printing and reports how many times each code was scanned.
Try Elido
Paste a URL, get a working short link
No signup. Link lives for 30 days. Sign up to keep it forever.
Free, no signup required · 2 per day