QR Code Guide: How They Work, How to Create One & Best Practices (2026)
Quick Answer
- *QR codes are 2D matrix barcodes that store URLs, text, and other data readable by any smartphone camera in under a second.
- *A single QR code can hold up to 7,089 numeric characters or 2,953 bytes of binary data depending on error correction level.
- *Static QR codes are free and permanent. Dynamic QR codes can be edited after printing and track scan analytics.
- *For print use, always download as SVG and maintain a quiet zone of at least 4 modules around the code.
What Is a QR Code and How Does It Work?
A QR code (Quick Response code) is a two-dimensional matrix barcode invented by Denso Wave, a Toyota subsidiary, in 1994 to track automobile parts on assembly lines. Unlike a traditional 1D barcode that stores around 20 characters in horizontal stripes, a QR code encodes data in both horizontal and vertical patterns of black and white squares, letting it store dramatically more information.
Three large squares in the corners (called "finder patterns") tell your camera exactly where the code starts and ends, regardless of angle or orientation. A fourth alignment pattern helps correct for perspective distortion. The rest of the grid encodes the actual data, version information, and error correction bits.
Error correction is what makes QR codes so resilient. The standard (ISO/IEC 18004) defines four levels. At H level, up to 30% of the code can be damaged, covered, or obscured and a scanner can still reconstruct the full data. That's why embedding a logo in the center of a QR code works — the logo covers part of the data, but error correction fills in the gaps.
QR Code Data Capacity
Capacity depends on two things: the type of data being stored and the error correction level chosen. Higher error correction = more redundancy = less room for actual data.
| Data Type | Low EC (L) | Medium EC (M) | High EC (H) |
|---|---|---|---|
| Numeric | 7,089 | 5,596 | 3,057 |
| Alphanumeric | 4,296 | 3,391 | 1,852 |
| Binary / bytes | 2,953 | 2,331 | 1,273 |
| Kanji characters | 1,817 | 1,435 | 784 |
In practice, most QR codes link to a URL. A typical URL like https://hakaru.io/tools/qr-code-generatoris 42 characters — comfortably within any capacity level. You only hit limits when encoding large blocks of plain text or vCard contact data directly into the code.
One key trade-off: more data = more squares = a physically larger code needed to stay scannable. If you're printing at small sizes (under 2 cm), keep your URL short or use a URL shortener.
Static vs Dynamic QR Codes
This is the most important decision when creating a QR code for business use.
Static QR Codes
The destination URL is encoded directly into the QR pattern. Change the URL and you change the pattern — which means reprinting everything. Static codes are free, work forever, and don't require a third-party service to function. They're ideal for personal use, one-off projects, or any situation where the destination won't change.
Dynamic QR Codes
The code encodes a short redirect URL (hosted by the QR platform). When someone scans it, they're sent through the redirect to whatever destination you've set. You can update the destination any time through the platform's dashboard without reprinting anything.
Dynamic codes also track:
- Total scan count and scan history over time
- Geographic location of scans (country, city)
- Device type (iOS vs Android)
- Time of day and day of week patterns
The catch: dynamic QR codes require a paid subscription (typically $5–$30/month). If the provider shuts down or you cancel, the redirect stops working. For permanent print materials, static codes are more reliable.
Best Use Cases for QR Codes
Restaurants and Menus
QR code usage surged 750% during the COVID-19 pandemic as contactless menus replaced paper menus (QR Tiger, 2021). Most restaurants now use static QR codes linking to a PDF menu or ordering system. Dynamic codes make sense for frequently updated menus since you can change the destination without reprinting table cards.
Business Cards
Encode your vCard (name, phone, email, website) or a link to your LinkedIn profile. A QR code on a business card lets someone save your contact in one tap rather than manually typing. Keep it static — your contact info rarely changes.
Payments
Payment platforms like Venmo, Cash App, PayPal, and Stripe all support QR codes for point-of-sale payments. These encode a payment URL or identifier. Merchants print them at checkout; customers scan and pay from their banking app.
Marketing Campaigns
Print ads, billboards, product packaging, and direct mail frequently include QR codes linking to landing pages, discount codes, or app download pages. Dynamic codes work best here since campaign landing pages change seasonally and scan tracking provides ROI data.
Wi-Fi Sharing
A QR code can encode Wi-Fi credentials (SSID + password) so guests can join your network in one scan without typing a password. Most modern phones support this natively. Format: WIFI:T:WPA;S:NetworkName;P:Password;;
Event Tickets and Check-In
Event platforms encode a unique identifier per ticket into a QR code. Staff scan it at entry to verify authenticity and prevent duplicate use. The QR pattern itself is cryptographically signed, making counterfeiting extremely difficult.
QR Code Design Best Practices
Minimum Size
For reliable scanning, print QR codes at a minimum of 2 cm × 2 cm (about 0.8 inches). Smaller than that and many phones struggle, especially in low light. For billboards or large-format print where scanning distance is greater, scale up proportionally. A rough rule: the code should be at least 1/10th the scanning distance. Someone scanning from 10 meters away needs a code at least 1 meter wide.
Quiet Zone
The quiet zone is the white border around the code. The QR standard requires at least 4 modules (squares) of white space on all sides. Violating this breaks scanners. If you're placing a QR code on a colored background, add extra padding to ensure sufficient contrast at the edge.
Contrast
The QR code needs high contrast between the dark modules (squares) and the light background. Black on white is optimal. You can use dark brand colors for the modules and a light background, but avoid low-contrast combinations like dark gray on medium gray, or colorful patterns behind the code. Inverted QR codes (light modules on dark background) work with most modern scanners but can fail on older hardware.
Logo Embedding
You can safely place a logo in the center of a QR code as long as it covers no more than 30% of the total area (the maximum error correction level H can recover). In practice, keep logos to 20–25% to give yourself a safety margin. Always use H-level error correction when embedding a logo. Test with multiple scanners before using in print.
File Format for Print
Always download QR codes as SVG for print materials. SVG is infinitely scalable — it looks perfectly sharp at any size from a business card to a banner. PNG works for web use (email, digital display) but will look pixelated if scaled up. Never screenshot a QR code and use the screenshot for print.
Test Before You Print
Before printing 500 business cards or 1,000 restaurant table cards, test your QR code with at least three different devices: an iPhone, an Android, and a dedicated scanner app. Test in poor lighting. Test at angle. Test with glare. A failed QR code on printed materials is expensive to fix.
QR Code Statistics
- QR codes were invented by Denso Wave (a Toyota subsidiary) in 1994 in Japan to track automobile parts on manufacturing lines.
- According to Statista (2023), 89 million US smartphone users scanned a QR code at least once in 2022, up from 52 million in 2019 — a 71% increase in three years.
- QR code usage surged 750% during the COVID-19 pandemic as contactless menus replaced paper menus (QR Tiger, 2021 market analysis).
- A standard QR code can store up to 7,089 numeric characters, 4,296 alphanumeric characters, or 2,953 bytes of binary data (ISO/IEC 18004).
- The QR code standard defines 40 versions, ranging from 21×21 modules (version 1) to 177×177 modules (version 40), with capacity scaling accordingly.
Ready to create your QR code?
Use our free QR Code Generator →Free, no sign-up required. Download as PNG or SVG.
Common Mistakes to Avoid
Linking to a Non-Mobile-Optimized Page
People scan QR codes on phones. If the destination page isn't mobile-friendly, you've wasted everyone's time. Before adding a QR code to anything printed, load the destination URL on your phone and confirm it works.
No Call to Action
A bare QR code gives people no reason to scan it. Always include a short CTA near the code: "Scan for menu," "Scan to download," "Scan for 20% off." The CTA dramatically increases scan rates.
Printing on Reflective Surfaces
High-gloss laminate and metallic surfaces create glare that defeats scanners. Use matte finishes for QR code print materials. If glossy is unavoidable, test in multiple lighting conditions first.
Using a Low-Resolution Image for Print
Rasterized QR codes printed at low DPI produce blurry edges that confuse scanners. Always use SVG for print, or export PNG at 300 DPI or higher.
Frequently Asked Questions
What is a QR code?
A QR code (Quick Response code) is a two-dimensional matrix barcode invented by Denso Wave in 1994. It stores data — URLs, text, contact info, payment credentials — as a pattern of black and white squares that any smartphone camera can read in under a second. Unlike a traditional barcode that stores only about 20 characters, a QR code can store up to 7,089 numeric characters or 4,296 alphanumeric characters.
How do I scan a QR code on my phone?
On most modern smartphones (iPhone iOS 11+, Android 8+), open the default camera app and point it at the QR code. A notification or banner will appear — tap it to open the link. If your camera doesn't recognize QR codes, download a free QR scanner app from the App Store or Google Play.
What is the difference between static and dynamic QR codes?
A static QR code embeds the destination URL directly into the pattern — it can't be changed after creation. A dynamic QR code encodes a short redirect URL instead, so the destination can be updated any time through a dashboard. Dynamic codes also track scan analytics. The trade-off: dynamic codes require a paid subscription to a QR platform.
How much data can a QR code hold?
At Low error correction (L), a QR code holds up to 7,089 numeric characters, 4,296 alphanumeric characters, or 2,953 bytes of binary data. At High error correction (H), capacity is reduced to 3,057 numeric, 1,852 alphanumeric, or 1,273 binary bytes. Most QR codes just link to a URL, which is well within any limit.
Can a QR code be hacked or unsafe?
A QR code itself can't execute code. The risk is phishing: a malicious QR code could redirect you to a fake website designed to steal credentials or install malware. Before tapping any QR code link, check the preview URL shown by your camera app. Be cautious with unexpected QR codes (stickers over existing ones, unsolicited mail). Use a QR scanner that shows the URL before opening it.
How do I make a QR code for my business?
Use our free QR Code Generator. Enter the URL or text you want to encode, optionally customize the colors and add a logo, then download as PNG or SVG. For print materials, always use SVG for sharp rendering at any size. Test with multiple devices before printing at scale.