Free QR code generator


Pick what the QR code should hold (link, text, Wi-Fi, contact card or email), fill in the fields and the code updates live. Then download it as a PNG image or a vector SVG file. It is created in your browser with no account, no watermark and no limit on scans.
- ✅ Free
- 🔒 No sign-up
- 📱 Works on mobile
- ⚡ Instant results
🔒 Everything runs in your browser. Your data and files never leave your device.
What is inside a QR code?
A QR code is not magic: it is plain text written as black and white squares. Your phone's camera reads that text and decides what to do with it based on its format.
| Type | Encoded text | What the phone does |
|---|---|---|
| Link | https://example.com | offers to open the page |
| Wi-Fi | WIFI:T:WPA;S:Home;P:abc123;; | offers to join the network |
| Contact | vCard 3.0 record | offers to add the contact |
| mailto:name@example.com?subject=… | opens a pre-filled message | |
| Text | the text as typed | shows it |
Special characters in a Wi-Fi code (semicolon, colon, comma, quote mark and backslash) are escaped with a backslash automatically, so complicated passwords still work.
Size, capacity and error correction
The QR code grows with the amount of data. The version runs from 1 (21 × 21 modules) to 40 (177 × 177), adding 4 modules per side with each version.
\[ \text{modules per side} = 17 + 4 \times \text{version} \]
| Version | Modules | Bytes (level L) | Bytes (level M) |
|---|---|---|---|
| 1 | 21 × 21 | 17 | 14 |
| 2 | 25 × 25 | 32 | 26 |
| 3 | 29 × 29 | 53 | 42 |
| 10 | 57 × 57 | 271 | 213 |
| 40 | 177 × 177 | 2,953 | 2,331 |
The error correction level (L 7%, M 15%, Q 25%, H 30%) is the share of the code that can be damaged and still scan. Level M is right for almost everything. Accented letters and emoji take 2 to 4 bytes each.
Printing and scanning tips
- Contrast: dark modules on a light background. Avoid white on black and colors that are close to each other.
- Quiet zone: leave at least 4 modules of white on every side.
- Size: follow the 10-to-1 rule. A code should be about one tenth of the scanning distance: 1.2 in for 12 in, 12 in for a poster scanned from 10 ft. Never print it smaller than about 0.8 in (2 cm) per side.
- File type: SVG stays sharp at any size, so use it for print; PNG is best for screens and documents.
- Test: scan the result with two different phones before you print a batch.
3 real-life examples
A link to your website
You enter https://example.com, which is 19 bytes. At level M, version 2 (26 bytes) is enough, so the code is 25 × 25 modules. With a 4-module margin the image is 33 modules wide; aiming for 1,024 px, each module is 31 px and the PNG is 1,023 px.
The Wi-Fi at home
Network "Home", password "abc123", WPA security: the encoded text is WIFI:T:WPA;S:Home;P:abc123;;, 28 bytes. That is more than version 2 holds at level M (26), so the code moves to version 3, 29 × 29 modules. Guests scan it and connect without typing anything.
A poster scanned from 10 feet
By the 10-to-1 rule, the QR code should be about 12 inches wide. Export it as SVG so it stays perfectly sharp, even printed on a 11 × 17 in sheet.