QR Code Generator
Create QR codes from any URL or text. Free QR code generator with instant PNG download for print and digital use. No expiration.
QR codes are everywhere - on restaurant menus, product packaging, business cards, event tickets, and marketing materials. This generator creates scannable QR codes from any text or URL in seconds, following the ISO/IEC 18004:2024 standard so they work with virtually any modern smartphone camera or dedicated barcode scanner. Codes are rendered entirely in your browser, never uploaded, and the resulting PNG is static so it never expires.
About QR Code Generator
How QR Codes Work
A QR (Quick Response) code encodes data as a matrix of black and white squares called modules. The pattern includes finder markers (the three large squares in the corners), timing patterns, alignment markers, and the actual data encoded using Reed-Solomon error correction - the same error-correcting code used on CDs, DVDs, and deep-space probes. Because every byte of real data is surrounded by mathematically redundant parity bytes, a scanner can still read the code even when a chunk is scratched, folded, or hidden behind a logo.
Worked example - version selection: The ISO/IEC 18004 spec defines 40 size versions. Version 1 is 21x21 modules and holds about 25 numeric digits at high error correction; version 10 is 57x57 modules and holds about 395 numeric digits; version 40 is 177x177 modules and holds up to 7,089 numeric digits. The encoder in this tool picks the smallest version that fits your input, then lays out finder patterns, format info, data codewords, and Reed-Solomon parity codewords in the fixed zig-zag scan order from the spec. The result is a PNG at the pixel size you chose.
| Component | Purpose |
|---|---|
| Finder patterns (3 corners) | Help the scanner locate and orient the code |
| Alignment pattern | Corrects for perspective distortion when scanning at an angle |
| Timing patterns | Help the scanner determine the size of the data grid |
| Format information | Tells the scanner which error correction level is used |
| Data modules | The actual encoded content in binary |
| Error correction | Redundant data that allows reading even if up to 30% of the code is damaged |
Common QR Code Uses
| Use Case | What to Encode | Where to Place It |
|---|---|---|
| Website link | https://yoursite.com | Flyers, posters, business cards, product packaging |
| WiFi access | WIFI:T:WPA;S:NetworkName;P:password;; | Cafe walls, hotel rooms, office lobbies (use the WiFi QR generator for this) |
| App download | App Store or Play Store URL | Printed ads, product inserts |
| Contact info (vCard) | BEGIN:VCARD... format | Business cards, email signatures |
| Event ticket | Unique ticket ID or URL | Digital or printed tickets |
| Payment | Payment URL or crypto address | Invoices, point-of-sale displays |
| Restaurant menu | URL to online menu | Table tents, wall signs |
QR Code Data Capacity
The amount of data a QR code can hold depends on the data type and error correction level:
| Data Type | Maximum Capacity | Example |
|---|---|---|
| Numeric only (0-9) | 7,089 characters | Phone numbers, serial numbers |
| Alphanumeric (A-Z, 0-9) | 4,296 characters | Short codes, identifiers |
| Binary/byte data | 2,953 bytes | URLs, text, UTF-8 content |
In practice, shorter content produces simpler QR codes that scan faster and print more reliably at small sizes. For URLs, keep them under 100 characters when possible.
Error Correction Levels
| Level | Recovery Capacity | Best For |
|---|---|---|
| L (Low) | ~7% of data | Clean, indoor environments; smallest code size |
| M (Medium) | ~15% of data | General use; good balance of size and durability |
| Q (Quartile) | ~25% of data | Outdoor or partially obscured codes |
| H (High) | ~30% of data | Codes with logos overlaid; maximum damage tolerance |
Tips for Effective QR Codes
| Tip | Why |
|---|---|
| Keep content short | Shorter data = simpler pattern = faster scanning and smaller print size |
| Use URL shorteners for long links | A 20-character short URL produces a much cleaner code than a 200-character URL |
| Maintain high contrast | Dark modules on light background; avoid low-contrast colour combinations |
| Include a quiet zone | Leave white space around the code (at least 4 modules wide) so scanners can find the edges |
| Test before printing | Scan with at least two different phones to confirm readability |
| Print at sufficient size | Minimum 2 x 2 cm for close-range scanning; larger for distance (posters, billboards) |
QR Code vs Barcode
| Feature | QR Code | 1D Barcode |
|---|---|---|
| Data capacity | Up to ~4,296 alphanumeric characters | ~20-80 characters |
| Data types | URLs, text, binary, structured data | Primarily numbers and short text |
| Scanning | Any smartphone camera | Requires laser/CCD scanner or specialised app |
| Error correction | Built-in (up to 30% damage tolerance) | Check digit only |
| Shape | Square | Rectangular (wide and short) |
| Industry | Marketing, mobile, payments | Retail POS, shipping, manufacturing |
How Many People Actually Scan QR Codes?
QR adoption stopped being niche years ago. Industry trackers (Statista, Uniqode, Juniper Research) put global scans at more than 1 trillion in 2025, with roughly 2.9 billion people scanning at least one code during the year and US smartphone scanners rising from 83.4 million in 2022 to around 99.5 million in 2025. Daily scanning is now mainstream: about 59% of scanner users scan at least once a day, 72% scan at least monthly, and over 80% of smartphone users scanned at least one code in the past 12 months. The jump from 2021 to 2025 is roughly +323% in scan volume, driven almost entirely by native camera support on iOS (iOS 11, 2017) and Android (Google Lens / Android 9, 2018) removing the need for a dedicated app.
| Metric (2025, global unless noted) | Value | Source |
|---|---|---|
| QR scans per year | ~1 trillion+ | Uniqode QR Code Report 2025 |
| Active QR users worldwide | ~2.9 billion | Juniper Research |
| US smartphone QR scanners | ~99.5 million (up from 83.4M in 2022) | Statista / eMarketer |
| Global QR payment volume | ~$3 trillion | Juniper Research |
| Asia-Pacific share of QR payment volume | ~60%+ | Juniper Research |
| Businesses using dynamic QR codes | ~79% | Uniqode 2025 survey |
Static vs Dynamic QR Codes
Static codes are the right default and the only type this tool produces. The destination URL or text is baked into the black-and-white pattern itself, so there is nothing to expire, no subscription to renew, and no tracking pixel in the middle. The trade-off is that you cannot change where the code points after you print it.
| Feature | Static QR (this tool) | Dynamic QR (paid services) |
|---|---|---|
| Destination after printing | Fixed forever | Editable anytime |
| Scan analytics | None (no server involved) | Count, location, device, time |
| Cost | Free, no account | Typically $5-$50/month per brand |
| Privacy | No third party in the scan path | Scan routes through provider's redirect |
| Best for | Personal use, WiFi, contact cards, permanent links | Marketing campaigns, A/B tests, expiring offers |
| If provider shuts down | Still works forever | All codes break at once |
For stable destinations - your homepage, a WiFi network, a vCard - a static code printed from this tool is the safer long-term bet. "Free QR" services that generate dynamic codes without a clear billing model are the main reason people Google "why did my QR code stop working" - the short-URL redirect provider went out of business.
Common Mistakes That Break QR Codes
| Mistake | What goes wrong | Fix |
|---|---|---|
| Printing below 2 cm | Camera can't resolve individual modules at typical 30 cm scan distance | Minimum 2 x 2 cm for arm's-length, 10+ cm for posters |
| Removing the quiet zone | Scanner can't detect the edges | Leave at least 4 modules of white space on all sides |
| Inverting colours (light on dark) | Most scanners expect dark-on-light and reject inverted codes | Keep dark modules on a light background |
| Stretching non-uniformly | Breaks the module grid and the timing pattern | Only scale proportionally, never distort width vs height |
| Placing over a curved surface | Perspective distortion breaks alignment beyond the correction tolerance | Use a flat surface or higher error correction level |
| Encoding a 400-character URL | Version jumps to 15+; modules shrink below print resolution | Run the URL through a short-link service first, then encode |
| Adding a big logo at level L | Logo covers more than the 7% error correction can recover | Use level Q or H when overlaying a logo (see error table above) |
Choosing the Right Error Correction Level
Higher correction levels add redundant parity codewords at the cost of fitting less real data. For a plain URL printed on clean white paper, level L (7%) is ideal because it keeps the version low and the modules large. For a menu sticker that will get splashed, choose level Q. For a code with a centred logo, choose level H so the 30% data recovery can mask the logo area. This tool uses library defaults from the qrcode package that balance size and reliability for general use.
Worked example - level choice for a business card: Encoding a 50-character vCard at level M produces a version 3 (29x29 modules) code. At 2.5 cm print size that puts each module at roughly 0.86 mm, well above the 0.3 mm readable minimum for a phone at 30 cm. Jumping to level H for the same data pushes it to version 5 (37x37), dropping module size to ~0.68 mm - still readable, but noticeably tighter. Match the level to the environment, not the other way around.
QR Code vs NFC vs Short URL
| Method | Scan cost | Hardware needed | Offline use | Typical use case |
|---|---|---|---|---|
| QR code | Free to generate and scan | Any smartphone camera | Works for encoded text, WiFi, vCard, SMS | Menus, posters, business cards |
| NFC tag | ~30p per tag (hardware) | NFC-capable phone + physical tag | Yes (no network needed) | Product authentication, access control |
| Short URL | Free tier available; breaks if service dies | Must be typed, no scanning | No | Radio ads, verbal sharing |
| vCard file | Free | Email or file share | Yes | Direct contact swap |
QR wins on cost, ubiquity, and permanence. NFC wins on speed and offline pairing. Short URLs are fine when someone needs to type the link by hand. Most modern loyalty cards and event passes combine two of these (a QR code plus an NFC tap).
Practical Tips for Effective QR Codes
| Tip | Why |
|---|---|
| Keep content short | Shorter data = simpler pattern = faster scanning and smaller print size |
| Shorten long links | A 20-character short URL produces a cleaner code than a 200-character URL |
| Maintain high contrast | Dark modules on light background; avoid low-contrast colour combinations |
| Include a quiet zone | Leave white space around the code (at least 4 modules wide) |
| Test before printing | Scan with at least two different phones to confirm readability |
| Print at sufficient size | Minimum 2 x 2 cm close range, larger for distance scanning |
For WiFi-specific QR codes with network name and password fields, use the dedicated WiFi QR Generator. For 1D barcodes (Code 128, EAN-13, UPC-A) on retail packaging, try the Barcode Generator. For a random string to encode into a verification URL or token, the UUID Generator produces RFC 4122 identifiers that fit comfortably in a version 3-5 QR code. This QR code generator runs entirely in your browser using the open-source qrcode library - nothing is uploaded and no account is needed.
Sources
- ISO/IEC 18004:2024 - QR code bar code symbology specification
- Uniqode - QR Code Trends Report 2025
- Statista - US Smartphone QR Scanner Usage 2025
- Juniper Research - QR Code Payments 2025
- Wikipedia - QR code (versions, error correction, Reed-Solomon)
- Denso Wave - History of the QR code (original inventor)
Frequently Asked Questions
What can I encode in a QR code?
You can encode any text, including URLs, email addresses, phone numbers, Wi-Fi credentials, plain text messages, and more. Most smartphone cameras will automatically recognize a URL and offer to open it in the browser.
What size should my QR code be for printing?
A good rule of thumb is to print the QR code at a minimum of 2 cm x 2 cm (about 0.8 inches) for close-range scanning. For posters or signage scanned from farther away, increase the size proportionally. Always test before mass printing.
Do QR codes expire?
Static QR codes like the ones this tool generates never expire. The data is encoded directly in the pattern itself, so the code will work as long as the destination URL remains active.
Can I customize the colors of the generated QR code?
The current version generates a standard black-and-white code for maximum scan reliability. You can download the image and edit colors in a graphics editor, but make sure to maintain high contrast so scanners can read it.
Related Tools
Link to this tool
Copy this HTML to link to this tool from your website or blog.
<a href="https://toolboxkit.io/tools/qr-code-generator/" title="QR Code Generator - Free Online Tool">Try QR Code Generator on ToolboxKit.io</a>