QR codes are everywhere in 2026 — on restaurant menus, payment terminals, business cards, event posters, product packaging, and bus stops. Most people scan them dozens of times a week without thinking about it. But when it is time to create one, the first question is almost always the same: which tool do I use, and do I have to pay for it? The answer is no. The free QR Code Generator handles 12 different data types — URL, WiFi, vCard, UPI, WhatsApp, email, SMS, text, phone, location, event, and app store links — with custom colors, logo overlay, and print-ready SVG output, all running entirely in your browser.
This guide covers everything: what each QR type actually encodes, when to use which one, how to make the code look good and still scan reliably, what size it needs to be for print, and why browser-side generation is actually more private and more reliable than any app you would download.
What Is a QR Code and How Does It Store Data
QR stands for Quick Response. It was invented in 1994 by Denso Wave in Japan to track car parts on assembly lines. The black-and-white square pattern is a 2D barcode that can store up to about 4,296 alphanumeric characters depending on the error correction level chosen. Unlike a 1D barcode (the striped kind on grocery products), a QR code stores data in both horizontal and vertical directions simultaneously.
The three large squares in the corners are finder patterns — they let any camera orient the code correctly regardless of the angle it is scanned from. The smaller patterns inside are alignment patterns that help scanners decode a physically distorted code (one that is curved, crumpled, or viewed at an angle). The dense dots in the middle store the actual data.
Error correction is the feature that makes QR codes robust. There are four levels:
| Level | Name | Data Recovery | Best For |
|---|---|---|---|
| L | Low | ~7% | Clean indoor environments, small print sizes |
| M | Medium | ~15% | General use, most print applications |
| Q | Quartile | ~25% | Logo overlay (logo covers part of the code) |
| H | High | ~30% | Outdoor, industrial, logo overlay at large sizes |
Higher error correction means more redundancy — the code pattern gets denser (more dots) to carry the extra recovery data. This is why a QR code with a logo in the center still scans: the logo covers some modules, but error correction fills in the gaps. The trade-off is that higher error correction reduces the maximum data capacity for a given code size.
All 12 QR Code Types — What Each One Encodes
Not all QR codes are the same. The data format matters. A URL QR code just stores a plain text URL string. A WiFi QR code stores a structured string that phones interpret as a network connection request. A vCard QR code stores contact details in a specific VCF format. Using the wrong type for your data means the scanner app will not know how to handle it correctly.
URL
The most common type. Stores a full URL including protocol (https://). When scanned, any modern phone camera opens the URL directly in the default browser. Always include the https:// prefix — without it, some scanners treat the string as plain text and do not navigate. Use this for: website homepages, landing pages, product pages, event registration forms, Google reviews, Calendly links, and Linktree pages.
WiFi
Stores three fields in a structured string: SSID (network name), password, and security type (WPA2, WEP, or open). Format: WIFI:T:WPA;S:NetworkName;P:password;; — when scanned on Android or iOS 11+, the phone prompts to join the network automatically — no typing required. This is genuinely useful: stick one at a cafe counter, hotel desk, Airbnb guestbook, or office reception. One scan beats reading out a 16-character password character by character.
Security note: the password is stored in the QR code pattern in plain text. Anyone who photographs your WiFi QR and decodes it can read the password. For guest networks intended for public use, this is fine. For your private home network, be thoughtful about where you post the QR code physically.
vCard (Business Card Contact)
Stores contact information in the VCF (vCard) standard format that phones recognize as a contact import. Fields include: first name, last name, organization, job title, phone, email, website, and address. When scanned, iOS shows a contact preview with a Create New Contact button. Android shows similar. Print one on your business card or add to your email signature image so anyone who scans gets your details saved instantly — no business card typing, no typos.
UPI Payment
Encodes a BHIM UPI deep link: upi://pay?pa=yourname@upi&pn=Name&am=Amount&cu=INR — when scanned, any UPI app (Google Pay, PhonePe, Paytm, BHIM, Amazon Pay) opens directly to a payment confirmation screen with the UPI ID and amount pre-filled. The user just enters their PIN and the money transfers. You can leave the amount blank (user enters it) or fix it for specific products or services. This is the fastest way to set up cashless payment at a small business, market stall, or event without a POS terminal.
Encodes a WhatsApp deep link: https://wa.me/[number]?text=[message] — when scanned, WhatsApp opens directly to a chat with that number, optionally with a pre-typed message. Use it for: business customer support, product inquiry buttons on packaging, appointment booking flows, or stickers. The number must include the country code — for India, prefix with 91.
Encodes a mailto: URI with to address, subject, and body pre-filled. When scanned, the phone default email client opens a compose window with everything filled in. Useful for feedback forms on physical products, complaint submission QR codes, event feedback cards, and anywhere you want a low-friction email trigger from a physical object.
SMS
Encodes an sms: URI with phone number and pre-filled message body. On scan, the messaging app opens with the number and text ready to send — the user just taps Send. Good for opt-in marketing flows where customers scan to subscribe, service feedback from physical locations, and two-factor auth backup flows.
Phone Number
Stores a tel: URI. On scan, the phone dialer opens with the number pre-filled, ready to call. One tap to dial. Useful on business cards, hotel room cards, emergency contact posters, and service menus where you want scanning to be faster than reading and typing a number.
Location (GPS Coordinates)
Encodes a geo: URI with latitude and longitude. On scan, opens the device default map app (Google Maps on Android, Apple Maps on iOS) pinned to that location. Useful on event invitations, property listings, delivery instructions, and anywhere you need someone to navigate to a specific spot that might not have a precise street address.
Plain Text
Stores any arbitrary text string. No deep link action — the scanner just displays the text. Useful for: coupon codes, ticket numbers, instructions, product specifications, or any information you want retrievable by scan but where you do not need an action to trigger.
Calendar Event (vEvent)
Encodes event details in the iCalendar VEVENT format: title, location, start datetime, end datetime, and description. When scanned, the phone offers to add the event to the calendar app. Extremely useful on conference invitations, event posters, webinar sign-up pages, and wedding invites — scan the QR instead of manually entering a date, time, and location.
App Store Link
Stores a direct link to your app on the App Store or Play Store. When scanned, opens the store listing directly. Far more reliable than searching for the app by name — no search ambiguity, no accidentally downloading a clone. Print on product packaging, receipts, and marketing materials.
How to Customize Your QR Code Without Killing Scannability
The default black-on-white QR code is always the most scannable option. But aesthetics matter for marketing — a QR code that matches your brand colors gets scanned more because it looks intentional rather than like a generic afterthought. The key is keeping contrast high and error correction at Q or H when adding a logo.
Color Customization Rules
The foreground (module) color and background color need sufficient contrast. The QR scanner reads the dark-light difference in luminance, not just hue. A few combinations that commonly fail:
- Dark on dark: Dark blue modules on a black background — no contrast, will not scan.
- Light on light: Light gray on white — borderline, might fail in low light.
- Inverted (white on dark): Works fine technically but some older scanners struggle. Test before printing.
- Colored on colored: Red on green — high color contrast but similar luminance. Often fails. Use a luminance contrast checker.
Safe options for branded codes: dark brand color on white background, or dark brand color on very light brand color. Never use gradients in the foreground — QR module color needs to be uniform.
Logo Overlay
Adding a logo to the center of a QR code works because of error correction redundancy. The modules the logo covers are lost from the scanner perspective, but the error correction data reconstructs them. To do this safely:
- Use error correction level Q or H (not L or M — not enough redundancy).
- Keep the logo to 20 to 25% of the total QR code area maximum. Larger than that and you exhaust the error correction budget.
- Use a logo with a solid background (white square behind it) rather than a transparent PNG — transparent logos with dark edges confuse the scanner near the logo boundary.
- Always test-scan on at least two different phones after adding the logo before printing.
QR Code Sizing for Print
This is the part most guides skip, and it is where people get stuck when their QR code will not scan off a poster or business card.
| Print Medium | Recommended Size | Typical Scan Distance |
|---|---|---|
| Business card | 2 x 2 cm minimum | 15–25 cm |
| Flyer / A5 | 3–4 cm | 20–40 cm |
| A4 poster | 4–6 cm | 30–60 cm |
| Window sticker / signage | 8–12 cm | 0.5–1.5 m |
| Banner / large format | 15+ cm | 1–3 m |
The rule of thumb: the minimum QR size equals 1/10th of the expected scan distance. If people will scan from 50 cm away, the code needs to be at least 5 cm. Always download SVG for print — a PNG generated at 512px looks fine on screen but blurs when scaled up to 10 cm at 300 DPI for professional printing. SVG scales to any size perfectly.
Also preserve the quiet zone — the white margin around the code. The quiet zone must be at least 4 modules wide on all sides. Cutting the code edge-to-edge without a margin is a common mistake that breaks scannability, especially with edge-to-edge printing where the cutter slightly clips the border.
Real Use Cases That Actually Work
Restaurant Menu QR
A URL QR pointing to a PDF or web menu. Print it on a table tent card or laminated sheet. When the menu changes, update the web page — the QR code stays the same because the URL does not change. The mistake restaurants make: linking directly to a PDF on Google Drive that requires a Google login to view. Use a public link or your own website URL instead.
Business Card vCard
Add a vCard QR to the back of your physical business card. When someone scans it, they get a Save Contact prompt with all your details pre-filled. This works even if they lose the physical card later — they already have your contact saved. It also avoids the typo problem where someone misreads a digit in your phone number.
UPI Payment for Small Businesses
Print a UPI QR at the payment counter. Any customer with any UPI app can scan and pay — Google Pay, PhonePe, Paytm, CRED, Amazon Pay, bank apps — all work with the same QR code because BHIM UPI is interoperable. You do not need a POS machine, a card reader, or even a bank account linked to a specific app. Just your UPI ID and a printed QR code.
Event Invitation Calendar QR
Instead of writing Save the Date in text on a wedding invitation or conference brochure, add a calendar event QR. Guests scan it and tap Add to Calendar — the event goes straight into their phone calendar with date, time, and venue. No manual entry, no wrong time zone confusion if you include timezone data.
Hotel and Airbnb WiFi QR
Generate a WiFi QR and print it on a small card or laminate it next to the TV. Guests scan it to join without asking for the password — you can even change the password between guests and reprint the card in 30 seconds. Significantly better guest experience than reading out a 16-character password one character at a time.
Static vs Dynamic QR Codes
Many QR code services push dynamic QR codes as a premium feature. The pitch is: with a dynamic code, you can change where the QR points after you have already printed it, because the code stores a short redirect URL that the service controls. You also get scan analytics.
The honest assessment: dynamic QR codes make sense in a narrow set of cases. If you are printing 50,000 product packages and the landing page URL might change before they sell through, dynamic makes sense. If you need scan counts and location analytics for a marketing campaign, dynamic makes sense. For everything else — business cards, table tents, event invites, personal use, small business payments — static QR codes are strictly better. No monthly fee, no service dependency (the code still works if the QR service company shuts down), and no data sent to a third party when someone scans your code.
Common QR Code Mistakes and How to Avoid Them
- URL without https:// — Some scanners treat bare domains as text, not URLs. Always include the full protocol.
- Downloading PNG for large print — A 512px PNG looks pixelated at 10 cm in a print shop. Always use SVG for anything going to print larger than a phone screen.
- Skipping the quiet zone — The white margin around the code is not decoration. Cutting it off breaks scanning.
- Low-contrast color pairs — Yellow on white, light blue on white, red on dark green — all look fine to human eyes but fail scanner contrast checks. Use a dark foreground on a white or near-white background.
- Forgetting to test on both iOS and Android — Both platforms handle deep links slightly differently. A WhatsApp link that opens correctly on Android might behave differently on iOS depending on the OS version.
- WiFi QR with wrong security type — If your router uses WPA3 but you select WPA2, the phone might still connect but some will not. Check your router settings to get the exact security type.
- Overloading the data — Long URLs with UTM parameters make the QR code denser and more error-prone. For long URLs, consider using a URL shortener first, then generate the QR from the short URL.
Testing Your QR Code Before Printing
Never send a QR code to print without testing it. A reliable test protocol:
- Download the QR as PNG and open it on your desktop screen at 100% zoom.
- Scan it with an iPhone (native camera app, not a third-party scanner).
- Scan it with an Android phone (Google Lens or native camera).
- Screenshot the QR and try scanning the screenshot — this simulates someone saving the image and scanning from their gallery.
- If adding a logo: print a test page at the actual final size before committing to a full print run.
- Walk through the full action: if it is a URL, does the page load? If WiFi, does it connect? If vCard, does the contact save with all fields correct?
Step 6 is where people most often catch errors — a typo in the URL that 404s, a phone number with a missing digit, a UPI ID with a wrong domain suffix.
Final Thoughts
QR codes are one of the few technologies that actually got more useful over time rather than less. The native camera integration on smartphones that arrived around 2018 removed the friction of needing a separate scanner app, and usage has compounded since. In India, UPI QR codes have essentially replaced cash for a large fraction of small transactions. Globally, restaurant menus, boarding passes, event tickets, and product authentication all route through QR.
For most people, creating a QR code is a one-minute task: choose the type, fill in the data, adjust the color if needed, download. The only things worth slowing down for are getting the data format exactly right (especially for WiFi, vCard, and UPI), choosing SVG for print, and testing on real devices before committing to print.
Open the free QR Code Generator, pick your type from the 12 available, and have a working QR in under a minute — no account, no watermark, no expiry date.