SMS QR Code Generator
Generate QR Code that, when scanned, opens the SMS app with pre-filled number and message (SMSTO: format).
SMS QR codes: pre-filled text messages from a scan
An SMS QR code encodes a phone number and an optional pre-written message. Scanning it opens the default messaging app with both fields already populated β the user just taps send. The point is to shave seconds and typos off a call-to-action: "Scan to RSVP", "Scan to vote", "Scan to ask about reservations". For marketing campaigns, charities, restaurants and customer-support handoffs, removing the keyboard from a workflow that ends in a text message increases conversion by an order of magnitude.
The mechanism is a URI scheme decoded by the camera app. There are two formats and modern phones support both, but they encode subtly differently. Knowing which one to use prevents your campaign from going dark on half your audience.
Two encodings: SMSTO and sms:
The older format, popularised by NTT DoCoMo and adopted by ZXing, uses a colon-separated payload:
SMSTO:+5511999998888:Hello, I scanned the QR code
The newer, RFC-standard format uses the sms: URI scheme defined in RFC 5724:
sms:+5511999998888?body=Hello%2C%20I%20scanned%20the%20QR%20code
The sms: form requires URL-encoding the message body (spaces become %20, commas %2C). SMSTO keeps the body as raw text. iOS prefers sms:; Android handles both. For maximum compatibility many generators emit SMSTO because it is shorter, denser and avoids the encoding step.
Mobile behaviour on scan
Scanning the QR opens the default SMS app β Messages on iOS, the system SMS app on Android (Google Messages, Samsung Messages, etc.) β with the recipient field and the message body already filled. The user reviews and taps Send; nothing is sent automatically. This consent step is a built-in safety against malicious QRs that would otherwise drain prepaid balances by texting premium numbers.
Use cases
- Marketing campaigns β "Scan and text VOTE 35 to enter the contest".
- Restaurants β scan to confirm or modify a reservation.
- Charity donations β scan, send DONATE 10 to a short code, get billed on your phone bill (US/UK common).
- Customer support escalation β flyer says scan to text our support line, agent gets the conversation pre-tagged.
- Event RSVP β wedding invite or conference badge with a scan-to-confirm message.
- Voting and polls β TV broadcast overlays a QR for audience SMS voting.
Cost and Brazilian Anatel rules
SMS is not free. The sender pays per message on most postpaid and prepaid plans; the recipient generally pays nothing for incoming texts. Under Anatel rules in Brazil, receiving SMS is always free; sending is charged according to the carrier plan or counted against an included quota. International SMS is much more expensive β a QR aimed at a Brazilian audience that uses a +1 number will burn through prepaid credits fast. For audiences abroad, prefer WhatsApp QR.
Short codes and premium SMS
In several countries, marketing campaigns use short codes β 5- or 6-digit numbers (e.g., 35511) registered with the carriers for high-throughput SMS. The QR encodes SMSTO:35511:VOTE3 instead of a full E.164 number. Premium-rate short codes charge the sender extra (donation campaigns, voting), which makes them a target for fraud. Never scan an unsolicited SMS QR from a public surface; it can pre-load a premium number with a charged keyword. The send-confirmation step is your only safety net.
WhatsApp QR: the Brazilian alternative
In Brazil, WhatsApp penetration on smartphones is around 99% (Datafolha, 2024) β vastly higher than SMS engagement. For most local campaigns, encoding a https://wa.me/5511999998888?text=Hello URL instead of an SMS payload produces a much better UX: the recipient sees a familiar app, message threads stay searchable, and there is no per-message cost on Wi-Fi. The format is documented at wa.me; the message body must be URL-encoded just like the sms: scheme.
Known limitations
iOS occasionally truncates very long message bodies (over ~160 characters) when opening the Messages app from a QR; the body is filled but cut off. Keep messages short. Android's behaviour is more reliable but depends on which SMS app is set as default β Samsung Messages and Google Messages both honour the body parameter; some carrier-branded apps drop it. Test on the target devices before printing thousands of flyers.
FAQ
Is WhatsApp QR better than SMS QR in Brazil?
Yes β adoption is roughly 99% on smartphones, Wi-Fi makes it free, and the conversation thread is searchable. SMS remains useful when WhatsApp is blocked (corporate networks) or for international short-code voting.
Does iOS limit the message body length?
In practice, yes. Very long bodies sometimes get truncated. Keep the prefilled message under 160 characters to be safe across iOS and Android.
Is SMS free?
Receiving is free under Brazilian Anatel rules; sending is charged per plan. International SMS is expensive.
Will the message send automatically?
No. The SMS app always asks the user to confirm by tapping Send. This is a deliberate safety against fraudulent QRs.
SMSTO or sms: β which to use?
SMSTO is shorter and works on every modern scanner. The sms: URI is RFC-standard and slightly preferred by iOS. Both work; the generator on this page emits SMSTO.
Related Tools
Handwriting Generator
Convert typed text into an image with handwriting appearance. Useful for adding a personal touch to digital work.
Resume Generator
Fill a simple printable A4 CV from a form with personal data, education and experience.
Favicon Generator
Generate a favicon from text/emoji in all common sizes (16, 32, 48, 64, 192, 512). PNG download.