How QR codes work
A QR code (Quick Response code, ISO/IEC 18004) is a 2D barcode that stores data in a grid of black and white modules. The big squares in three corners are finder patterns that let a scanner locate and orient the code from any angle, which is why QR reads so much faster than a 1D barcode.
Two settings shape the result. Capacity grows with the code's version (its module count) — more data means a denser grid. And every code carries Reed–Solomon error correction, so a chosen percentage of the code can be missing or damaged and it still decodes. That's the trade-off you tune here: higher correction is more robust but needs more space.
These are static codes rendered locally in your browser — the content is baked straight in, with no tracking redirect and nothing sent to a server.
Static vs. dynamic QR codes
The content is encoded directly in the code. Free, permanent, private, untracked.
Encodes a short redirect URL you can edit later — at the cost of a service and tracking.
Where developers use it
Linking to a page
Drop a scannable URL on a slide, poster, or business card so people can jump straight there.
Sharing Wi-Fi
Encode network credentials so guests connect by scanning instead of typing a password.
2FA enrolment
Render an otpauth:// URI as a QR for an authenticator app to read during setup.
Frequently asked questions
It adds redundancy so a code still scans when partly damaged or obscured. L recovers ~7%, M ~15%, Q ~25%, and H ~30%. Higher levels survive smudges and logos but pack the modules denser, so you may need a larger size. M is a good default.
They're the finder patterns. A scanner uses these three high-contrast squares to detect the code, work out its orientation, and correct for perspective — so it can read the code at an angle, upside down, or partly skewed.
Most likely too much data for the chosen size and correction level. QR codes have a fixed capacity — long URLs or text need a bigger size or a lower correction level. Shorten the content or raise the size.
No. This generates a static code that encodes your content directly, with no redirect service in between — so it never expires and nothing is tracked. (Dynamic, trackable codes route through a third party; these don't.)
Yes, but keep strong contrast — dark foreground on a light background — and avoid inverting it (light on dark) since many scanners expect dark-on-light. Test before you print.
No. The code is rendered locally on a canvas in your browser; the content never leaves the page.