QR Code Generator
Encoding Tools
Generate QR codes for URLs, text, Wi-Fi, vCards, email, SMS, phone, geo, crypto, and calendar events. Customize colors, size, and error correction. Download as PNG or SVG. Runs entirely in your browser.
Customization▾
What QR codes can do
A QR code is a two-dimensional barcode that any smartphone camera can read in under a second. Unlike a URL shortener, a QR code encodes data directly in the pattern of its squares; no server is involved when someone scans it. That makes QR codes ideal for bridging print and digital: business cards, posters, packaging, event signage, and more.
Modern QR codes can encode plain text, hyperlinks, Wi-Fi credentials, contact cards (vCard), calendar events, SMS messages, phone numbers, geographic coordinates, and cryptocurrency addresses, each using a standardized URI scheme that devices know how to handle.
Wi-Fi QR codes: connect guests instantly
The Wi-Fi QR code format (WIFI:T:WPA;S:…;P:…;H:false;;) is
supported natively on iOS 11+ and Android 10+. When a guest scans it, their phone prompts them
to join the network (no typing required). Passwords are embedded in the image itself, so no
server ever handles them. This tool processes everything locally in your browser.
Tip: print the QR code and laminate it for table tents, front-desk cards, or hotel room displays. Use error correction level Q or H if the code might get scratched or damp.
Error correction levels explained
QR codes can reconstruct data even when part of the pattern is obscured or damaged, thanks to Reed–Solomon error correction. There are four levels:
- L (Low, 7%): smallest QR code, use only in clean digital environments.
- M (Medium, 15%): the default; good for most uses.
- Q (Quartile, 25%): recommended for codes that might be partially covered.
- H (High, 30%): use when adding a logo overlay or printing in tough environments.
Higher error correction slightly increases the density (more squares), which makes the code a little harder to scan at very small sizes. Download a test PNG, then scan it with a real device before going to print.
Data type reference
| Content type | URI scheme / format |
|---|---|
| URL | https://example.com/page |
| Wi-Fi | WIFI:T:WPA;S:NetworkName;P:Password;; |
| vCard contact | BEGIN:VCARD…END:VCARD |
| SMS | sms:+15551234567?body=Hello |
mailto:user@example.com?subject=Hi | |
| Phone | tel:+15551234567 |
| Geo coordinates | geo:37.7749,-122.4194 |
| Calendar event | BEGIN:VCALENDAR…END:VCALENDAR |
QR code version and size
A QR code’s version (1–40) determines the size of its module grid: version 1 is a 21 × 21 grid; version 40 is a 177 × 177 grid. More data or higher error correction requires a larger version (denser grid). Long URLs and full contact cards force version 5+ which makes the code slightly harder to scan at small print sizes. Shortening URLs before encoding keeps versions lower and scanning faster.
More encoding tools
- Base32 EncoderEncode and decode text or binary data using Base32 (RFC 4648 standard, Base32hex, or Crockford variant). Copy output with one click. Runs entirely in your browser.
- Base64Encode text or files to Base64 online: standard, URL-safe, and Base64url variants. Decode back to text or download as a file. All processing is local.
- Binary Text EncoderConvert any UTF-8 text to binary (8-bit groups) or decode binary back to text. Choose your separator format. Free, instant, browser-only.
- HTML EntitiesEncode special characters to HTML entities and decode them back. Supports named (&), decimal (&), and hex (&) styles. Runs entirely in your browser.
- Punycode EncoderEncode Unicode / internationalized domain names (IDN) to Punycode (xn--) and decode them back. Implements RFC 3492 entirely in the browser.
- Quoted-Printable EncoderEncode text to Quoted-Printable (QP) or decode QP back to plain text. Implements RFC 2045 Section 6.7 with proper 76-char line wrapping.