How to use the QR code generator
- Pick the Content type: Link (URL), Plain text, Phone number, SMS or Email.
- Type into Link, text, phone number or email address. For SMS, add a Message. For Email, add an Email subject and a Message if you like.
- Choose Error correction: L 7%, M 15% (default), Q 25% or H 30%.
- Set the Code colour and Background, or tick Transparent background (SVG and PNG).
- Set the Quiet zone (0–8 modules, default 4) and the PNG size (2–40 px per module, default 12).
- The code updates as you type. Check the Encoded content line, scan the preview with your phone, then download the PNG or SVG.
What it does and when to use it
A QR code lets a phone camera open something without typing. This generator covers the everyday jobs:
- Link (URL): a menu, booking page or form on a poster, flyer or business card. If you leave out
https://, it is added for you. - Plain text: a serial number, a locker note or a puzzle clue. The phone shows the text; nothing opens.
- Phone number: a
tel:link that opens the dialler. Spaces, brackets and dashes are removed, a leading+is kept, and a leading00is turned into+. - SMS: an
sms:link with the number and an optional pre-filled message, for bookings or opt-ins. - Email: a
mailto:link with the address, subject and body filled in, for support requests or entries.
Each result shows the exact Encoded content a phone will read, plus the QR version, Modules per side and Characters.
For a Wi-Fi login card, use the Wi-Fi QR generator. For a contact card that saves to the phone’s address book, use the vCard generator. For retail barcodes such as EAN or Code 128, use the barcode generator.
How it works
The content is turned into a QR matrix by the open-source qrcode library, which picks the smallest version that fits your content at the chosen error correction level. QR Code has 40 versions. Version 1 is 21 × 21 modules (squares), and each version adds 4 modules per side, up to 177 × 177 for version 40.
From that matrix the tool draws two files:
- SVG: one vector path, sharp at any size.
- PNG: each module drawn as a block of the size you set, so its width is (modules per side + 2 × quiet zone) × PNG size.
It warns you when the contrast ratio between code colour and background is under 4, or the quiet zone is under 4 modules. Everything happens in your browser; nothing is uploaded.
Worked examples
These results come from the tool’s own function.
A shop’s web address. Content Link, text toolsrift.com. The encoded content becomes https://toolsrift.com (21 characters). The stats show QR version: 2 and 25 modules per side. With the default quiet zone of 4 and 12 px per module, the PNG is (25 + 8) × 12 = 396 px square.
The same link at error correction H. The code grows to version 3, Modules per side: 29, and the PNG to (29 + 8) × 12 = 444 px. Same content, more repair data, a denser code.
A phone number for a flyer. Content Phone number, text +44 20 7946 0958. The encoded content is tel:+442079460958, which fits in version 1, the smallest code of 21 × 21 modules.
A booking text message. Content SMS, number +1 (503) 555-0142, message “Table for 2 at 7pm”. The encoded content is sms:+15035550142?body=Table%20for%202%20at%207pm: spaces in the message are written as %20. That needs version 4, 33 modules per side.
A tight margin. Quiet zone 2 triggers the warning “A quiet zone under 4 modules may not scan…”.
Error correction is a trade-off
QR codes use Reed–Solomon error correction, so they still scan when partly dirty or damaged. DENSO WAVE, which invented QR Code, gives the recovery levels as about 7% (L), 15% (M), 25% (Q) and 30% (H). More correction means more modules for the same content, as the H example shows, so at the same printed size each module is smaller and harder to read from a distance.
Size, quiet zone and contrast
QR Code needs a clear margin four modules wide on every side, the quiet zone, so scanners can find where the code starts. A code printed right against text or a picture is a common reason it will not read, which is why the tool warns below 4.
A common rule of thumb is to make the code at least one tenth of the scanning distance: about 3 cm wide for a card held at arm’s length, and about 30 cm for a poster read from 3 metres. Keep it dark on light: some scanners do not read inverted codes. The contrast warning catches pale colours such as light grey on white. With a transparent background, place the code on a light, plain area.
Keep content short, and plan for change
More content means a higher version and smaller squares, so shorten long tracking links before encoding them. A printed code holds what you typed for good. If the destination might change, encode a short address on a domain you control and redirect it; that redirect is all a “dynamic” QR service does. People cannot see where a code leads before scanning, and fake codes stuck over real ones are a known scam, so print the address in text next to your code where you can.
Limits and tips
- No logo, frame or colour gradient is added; the tool makes clean, standard codes.
- Use the SVG or a large PNG size for print. If an upload limits file size, a compressor can shrink the PNG.
- Test brand colours with the colour contrast checker, and always scan the printed proof.
Frequently asked questions
Do these QR codes expire?
What error correction level should I use?
Why will my QR code not scan?
Can I add my logo in the middle?
Should I download PNG or SVG?
Is the content I type sent anywhere?
Sources
- Error correction feature — DENSO WAVE, accessed 2026-10-07
- Information capacity and versions of QR Code — DENSO WAVE, accessed 2026-10-07
- Basics of QR Code: quiet zone and module size — DENSO WAVE, accessed 2026-10-07
How do we know nothing is uploaded? Test it yourself on the privacy proof page.