FREE. ALWAYS STATIC.

SMS QR code generator for a ready-to-review text.

Prepare a recipient and short message, then let the person scanning review and send it from their own phone.

01

Make it yours.

Made in your browser
4 units · GSM-7 · 1 Approx. SMS messages
More fields+

Sending requires a tap. Carrier charges may apply. For marketing, obtain consent and provide an opt-out.

Example content — replace it with your own before printing.

What you type is never uploaded.
LIVE PREVIEWPNG · 1024 px
QR code preview
Checking scannability…

A simulated scan, not a guarantee. Test with real phones before printing.

WHAT’S INSIDE YOUR CODE
SMSTO:+12015550123:JOIN

Your camera should read exactly this content. No PactQR short link in between.

23 bytes · v2
Scan this to test your phone camera.

Scan this to test your phone camera.

No sign-upNo expiry tricksNo watermarkMade in your browser
What you type is never uploaded.

PACTQR

No expiry date.

Your link or details are stored in the QR itself. PactQR doesn’t add a redirect or set an expiry date on the downloaded code.

Keep the destination working.
A website QR still needs a live web address. A WiFi QR needs the same network name and password. PactQR doesn’t control those destinations.
Need to change what’s encoded?
Make a new QR if you change its URL or details. You can update a page’s content without reprinting, as long as its web address stays the same.

An SMS QR code can save someone from typing a number and a campaign keyword. Use it for a simple inquiry, a supported text service or a clearly explained opt-in. Reader and messaging-app support varies, so test the chosen format on the devices your audience uses before printing.

What is inside an SMS QR code?

The default payload uses a format such as SMSTO:+12015550123:JOIN. The number identifies the intended recipient, and the following text is the proposed message. A compatible scanner can hand those values to a messaging app. This is a convenience for composing a message, not a connection to a texting service operated by PactQR.

The alternative sms: format can express a number with a body parameter, for example sms:+12015550123?body=JOIN. Support for message bodies is inconsistent across operating systems, camera readers and messaging apps. Some combinations open a blank draft or only copy the number. A valid QR image does not guarantee that every reader interprets the same messaging convention.

Nothing is transmitted by the pattern itself. The person reviewing the draft decides whether to edit and send it. A sent SMS is handled by their device, carrier and recipient service. Charges, delivery, international availability and any automated reply belong to those services, not to the QR generator.

Why the SMS QR code offers SMSTO and sms: formats

SMSTO is a convention recognized by some QR readers and is a useful default to test. It is not a universal iPhone-and-Android guarantee. Apple's archived SMS-link documentation describes sms: with a recipient and explicitly excludes message text, which helps explain why body parameters cannot be assumed to work consistently. Keep the alternate format for a reader you have tested, and provide the number and keyword in ordinary text as a fallback.

Apple documentation: SMS links

How long should the message be?

A keyword or one short sentence is usually enough. A person scanning a poster is rarely ready to review a long message, and a longer payload also makes the QR pattern denser. Keep the draft focused on what they are requesting. They can add personal details in their own messaging app rather than having those details printed in a public code.

For ordinary GSM-7 text, a single SMS commonly allows 160 septets. Longer messages are generally split into segments with room for 153 septets each because joining information uses some capacity. With Unicode text outside that alphabet, the common limits become 70 UTF-16 code units for one segment and 67 for each part of a multipart message.

A visible character count is not always the billing count. Some GSM extension characters consume two septets, and many emoji use more than one UTF-16 code unit. Curly quotation marks and certain accented letters can switch the whole message to the smaller Unicode allowance. The displayed segment estimate is a planning aid, not a carrier bill or delivery guarantee.

Typical encodingSingle segmentMultipart allowance per segment
GSM-7160 septets153 septets
Unicode SMS70 code units67 code units
Twilio: SMS characters and segment limits

Accents and punctuation can change the segment estimate

Not every accented letter behaves the same way. GSM-7 includes characters such as é, ñ and ü, while á, í, ó and ú are outside its basic and extension alphabet. A message can therefore become multipart after adding what looks like one small mark. Smart quotes pasted from a document can have a similar effect.

Do not strip a person's name or change a message's meaning merely to save space. First shorten the wording while keeping it natural. If you deliberately choose a plain-letter campaign keyword, show that exact keyword on the sign and in the draft. Recheck the estimate after editing, and verify how your messaging provider treats the final text.

Short codes and keyword campaigns

A short code is a special messaging destination supplied through a carrier or messaging provider. Five- and six-digit codes are common in some markets, while supported lengths and availability vary by country. Select short-code mode only for a code that your campaign is actually authorized to use; it avoids adding an international country code as though the value were an ordinary phone number.

A printed invitation should say which organization receives the text and what will happen next. “Text JOIN to receive the event reminder” is clearer than an unexplained keyword. If the campaign starts recurring messages, the surrounding disclosure needs to explain that program accurately. The generator does not provision the short code, process subscriptions or deliver replies.

Try the complete path using a test participant and the intended carrier market. A short code that works domestically may not be reachable from a visitor's foreign SIM. Also confirm that your backend expects the exact keyword and that a person who edits the draft receives an understandable response instead of silently falling into the wrong workflow.

SMS, WhatsApp or a phone call?

SMS is useful when the audience can send ordinary texts to the chosen destination and a short written request is enough. It does not require a separate social account, but it does depend on messaging service and may incur a charge. Do not describe it as free merely because generating the image is free.

WhatsApp can fit an ongoing conversation for people who already use the service. A phone code suits a request best handled live during business hours. Choose the channel your team monitors and your audience can use, then label it explicitly. A large number of convenient contact options is less helpful than one reliable route to a response.

Use a WhatsApp link when that is the messaging channel your customers expect. Prepare a WhatsApp conversation instead

Make and test an SMS QR code in three steps

Enter an international recipient number or a provisioned short code. Write a concise draft, review its segment estimate and choose the format you intend to test. Add a label that makes the expected message clear, then download the file.

Scan a printed proof on representative iPhone and Android devices. Check both the recipient and the body, and send only an authorized test message. If one reader does not prefill the body, test the alternate format and retain the printed fallback. The local image check confirms payload recovery, not the messaging app's behavior or a carrier's delivery.

FAQ

Good questions. Straight answers.

Why is the SMS QR code message missing on my iPhone?

The scanner or messaging app may not support the body field in the chosen format. Neither SMSTO nor sms: guarantees identical behavior on every iPhone and Android setup. Test the alternative and print the recipient plus keyword as a fallback.

Can the code send the text automatically?

No. This tool creates a payload for a draft; it does not send messages. The person uses their messaging app to review, edit and send.

Does it work with short codes?

It can encode supported short-code input without adding a country code. You need a provisioned destination and a campaign that works in the intended market. Check the number and delivery with your provider.

Will the person sending be charged?

Possibly. Generating the QR code is free, but sending the message is subject to the person's carrier plan, destination and applicable messaging charges. A long draft may be sent as several SMS segments.

Does an SMS QR code expire?

PactQR does not expire the pattern. The stored number and message remain fixed, so the recipient service and keyword must remain valid. If the number or campaign changes, create and distribute a replacement.