The Complete Guide to QR Codes
QR codes are everywhere — on restaurant menus, product packages, event tickets, and business cards. Yet most people have never thought about how they actually work. This guide explains QR codes from the ground up and shows you how to create one in seconds.
What Is a QR Code?
A QR code (Quick Response code) is a two-dimensional barcode that stores information as a pattern of black and white squares. Unlike a traditional one-dimensional barcode that can only hold about 20 digits, a QR code can store up to 7,089 numeric characters or 4,296 alphanumeric characters in a space no larger than a postage stamp.
Invented in 1994 by Denso Wave (a Toyota subsidiary) to track car parts, QR codes were designed to be read at high speed from any angle — hence "Quick Response."
How Does a QR Code Work?
A QR code is divided into several functional zones:
| Zone | Purpose |
|---|---|
| Finder patterns | Three square corners help scanners locate and orient the code |
| Alignment patterns | Allow the code to be read even when curved or distorted |
| Timing patterns | Help the scanner determine cell size |
| Data cells | The black/white squares that encode your actual content |
| Quiet zone | White border that separates the code from surrounding graphics |
The data is encoded using Reed-Solomon error correction, which means a QR code can still be read even if up to 30% of it is damaged or obscured — this is why logos can be placed in the center of QR codes.
Error Correction Levels
QR codes come with four error correction levels:
- Level L (Low) — 7% recovery. Best for clean digital environments.
- Level M (Medium) — 15% recovery. The most common choice.
- Level Q (Quartile) — 25% recovery. Good for industrial environments.
- Level H (High) — 30% recovery. Required if you're adding a logo overlay.
Higher error correction = more complex pattern = larger file size. For most web uses, Level M is the right balance.
Types of QR Code Content
A single QR code can store many types of data. The scanner app on your phone interprets the content type automatically:
URL
The most common use. Simply encodes a web address:
https://boxtool.app
Wi-Fi Credentials
Lets guests join your network without typing a password:
WIFI:T:WPA;S:MyNetwork;P:password123;;
vCard (Contact Info)
Encodes a full digital business card including name, phone, email, and address.
Plain Text
Any UTF-8 string up to the character limit.
Email / SMS
Pre-fills a compose window with a specific recipient or message.
Static vs. Dynamic QR Codes
Static QR codes encode the destination directly. Once printed, they cannot be changed. They are free to generate and never expire.
Dynamic QR codes encode a short redirect URL. You can change the destination later without reprinting. These are offered by paid services and are useful for printed marketing materials.
For personal use, developer projects, and most small businesses, a static QR code is all you need.
How to Create a QR Code for Free
Our QR Code Generator runs entirely in your browser. No signup, no upload, no watermarks.
- Paste your URL (or text, Wi-Fi config, etc.) into the input field
- Choose error correction level — use M for most cases, H if adding a logo
- Download as PNG or SVG — use SVG for print, PNG for screen
The code is generated using the qrcode JavaScript library directly in your browser. Your data never touches a server.
Best Practices
For print materials: - Use SVG format — scales to any size without pixelation - Add a 3–4 cell quiet zone (white border) on all sides - Minimum print size: 2 × 2 cm for a phone held at arm's length - Test with multiple scanner apps before going to print
For digital use: - PNG at 512×512 pixels is sufficient for most displays - Include a short "Scan me" caption — many people still don't recognise QR codes - Always test the final code after downloading
For logos/branding: - Use error correction level H - Keep the logo to 30% or less of the total code area - Ensure strong contrast between the logo and the code
Common QR Code Mistakes
- Redirecting to a non-mobile-friendly page — QR codes are scanned on phones. A desktop-only page kills conversions.
- Using a dynamic QR service that expires — Free tiers of redirect services often expire codes, breaking your printed materials.
- Low contrast — Light gray squares on white barely scan. Use full black on white for maximum reliability.
- No call to action — A QR code alone doesn't tell people what they'll get. Add "Scan to see our menu" or similar.
FAQ
Do QR codes expire? Static QR codes (like those generated here) never expire. They encode the data directly and remain scannable forever.
Can I track QR code scans? Not with a static code. For analytics, use a URL shortener with tracking (like Bitly) as the encoded URL, or use a dynamic QR service.
How many characters can a QR code hold? Up to 7,089 numeric digits, 4,296 alphanumeric characters, or 2,953 bytes of binary data — depending on error correction level.
Is it safe to scan a QR code? Scanning only reads data — it cannot install malware. However, the encoded URL could link to a phishing site, just as a typed URL could. Verify the URL before tapping any links that appear after scanning.
Ready to create your QR code? Try the free generator →
Try the tool
Open tool