SMS QR code generator
A scan opens the messaging app with your number and message filled in. Works without internet apps — just plain SMS.
- Free
- No signup
- Runs in your browser
- Static codes don’t expire
Text message
Include the country code.
What’s inside the codeExample
SMSTO:+15550100100:JOIN
Type your own details to replace the example.
- Version
- 2
- Error correction
- M
- Capacity used
- 63%
- Bytes
- 23
Scanability
100 / 100
Enter valid content above to enable downloads. The code shown now is only an example.
Size & print options4 cm
Prints the code at the width above.
Static code — it never expires. The destination is up to you.
Design
Colours
ShapeSquare · Square
Logo—
PNG, JPG, WebP or SVG up to 5 MB. It stays on your device.
Caption“Text us”
Error correction & marginM · 4 modules
Higher levels survive more damage and logos, but make the code denser.
The spec asks for 4 modules of empty space around the code.
Scanability
100 / 100
Contrast 21:1 — strong.
Spec
Dark code on a light background.
Spec
Quiet zone of 4 modules.
Spec
Error correction M restores up to about 15% of the data.
Spec
Version 2 (25×25) — light and easy to scan.
Spec
Classic square modules and corners.
Rule of thumb
4 cm wide — fine for 40 cm away.
Rule of thumb
A weighted estimate from the checks below — not a guarantee. Always test a printed proof with two different phones.
Legibility chart
| Preview | Width | Reads from about |
|---|---|---|
| 8 cm | ≈ 80 cm | |
| 6 cm | ≈ 60 cm | |
| 5 cm | ≈ 50 cm | |
| 4 cm | ≈ 40 cm | |
Recommended minimum for Flyer · 4 cm | ||
| 3 cm | ≈ 30 cm | |
| 2.5 cm | ≈ 25 cm | |
| 2 cm | ≈ 20 cm | |
Estimate based on the 10:1 distance rule, adjusted for this code’s density. Phones and light vary.
How to use it
- Enter the phone number that should receive the message, with country code for international use.
- Type the message — a keyword like “JOIN”, a question, or a short reference.
- Scan the preview: your messages app should open a new text ready to send.
- Download and print with a caption such as “Text JOIN to get updates”.
How SMS codes work
The code uses the widely supported SMSTO: format: the number, a colon, then the message. iPhone and Android cameras recognise it and open the messages app with both filled in. The message is sent only when the person taps send — and their normal SMS rates apply.
Scanning prepares a text saying “JOIN” to +1 555 010 0100.
Encoded content
SMSTO:+15550100100:JOIN
SMS or WhatsApp?
SMS works on every phone without an extra app, which makes it the safer choice for broad audiences and for automated keyword systems. If your customers mostly use WhatsApp and you want a richer conversation, use the WhatsApp QR code instead.
Short codes and costs
Marketing campaigns often use short numbers (4–6 digits). Some short codes are premium-rate, so tell people clearly if a message costs more than a normal text. Our decoder flags short-code SMS when someone checks a code, for exactly this reason.
Tips
- Explain what happens next: “Text JOIN — we’ll reply with the link.”
- Keep messages short for a smaller, easier code.
- Test on iPhone and Android: both support SMSTO, but older scanner apps vary.
Questions
Does scanning send a message automatically?
No. It only prepares the message; the person decides whether to send it.
Can I use a landline?
Only if your provider supports receiving texts on that number. Test before printing.
Is the message private?
The number and message are visible to anyone who decodes the code. Don’t put anything confidential in it.
Related tools
Related guides
- QR code safety: how to spot a malicious codeFake parking stickers, phishing links and app installs: how QR scams work, the warning signs, and how to check a code before you open it.
- Why won’t my QR code scan? Causes and fixesA troubleshooting checklist: contrast, quiet zone, size, blur, glare, inverted colours, logos and broken links — and how to fix each.