Skip to content
SmallQRCodeSmallQRCode

SMS QR Code Generator

Create an SMS QR code that opens a pre-written text to your number when scanned.

Include the country code for international reach.

Customize design

Presets

Higher levels survive more damage and bigger logos, at the cost of a denser code.

Blank border around the code in modules. 4 is the specification recommendation.

Center logo (optional)

Your QR code

Made in your browser
Your QR code appears here as you type

Waiting for valid content

Free, no watermark, never expires. SVG scales to any size for print.

An SMS QR code opens the scanner's messaging app with the phone number and message already filled in. One scan replaces “text JOIN to 55512” instructions, and unlike a keyword campaign, it works with any phone number.

Typical uses: opt-in keywords on posters, request-a-quote cards, table-side feedback, and “text me the details” signs.

The format encoded here is SMSTO:number:message, for example SMSTO:+15551234567:JOIN. Leave the message out and it becomes SMSTO:+15551234567, which opens an empty draft to that number. SMSTO is the variant with the widest scanner support; the older SMS: and smsto: spellings are read by many apps but not reliably by the iPhone camera.

Getting the most from an SMS QR code

SMS QR codes are at their best for opt-ins and quick replies, but the pre-filled message is a convenience, not a guarantee, some apps drop it and open an empty draft to your number (see the FAQ below). Keep anything essential in the number itself and in the printed call-to-action, and treat the pre-written text as a head-start rather than the whole instruction. A short keyword like JOIN or INFO survives best across phones.

Always print the number in plain text next to the code as well. A scan that lands on a pre-addressed draft is faster, but a visible number means people with no working scanner, or on a desktop, can still reach you. For reply-keyword campaigns, test the finished code on both an iPhone and an Android handset before printing, how the two handle the pre-filled message is exactly where they differ.

Frequently asked questions

Does it send the message automatically?
No. The message app opens with your number and text pre-filled; the sender taps send. Nobody is ever texted without their action.
Does it work on iPhone and Android?
Yes, it uses the SMSTO format, which both platforms and virtually every QR scanner support.
What is the SMS QR code format?
SMSTO:number:message, so SMSTO:+15551234567:JOIN opens a draft to +1 555 123 4567 containing the word JOIN. With no message it is just SMSTO:+15551234567. The number should include the country code with a leading +, and the message is plain text that runs to the end of the code, so it can contain spaces and punctuation but not line breaks.
Why is my pre-written message missing after scanning?
Some messaging apps deliberately ignore the message part and open an empty draft to the number, and this is most common on iOS when a non-default SMS app handles the link. The number always carries across; treat the pre-filled text as a convenience rather than something to rely on, and never put essential information only in the message.
Is it free for the person scanning?
Sending the message costs whatever their normal texting plan costs. Scanning itself is free and works without any app on modern phones.
Why did my spaces and dashes disappear from the number?
Phone formatting is cleaned automatically so the number dials correctly everywhere. Only digits and a leading + are kept.
Can I use a 5-digit short code instead of a phone number?
Short codes (like 55512) can work for sending, but they usually depend on a keyword your carrier campaign has registered, and not every scanner handles them cleanly. For a printed SMS QR code, a full phone number with its country code is the most reliable choice.

Looking for another format? The full QR code generator supports all 12+ types in one place.