Skip to content
ImgKiloImgKiloOpen tools

SMS QR Code Generator

SMS QR code that prefills on iPhone and Android

Type the recipient number and the prefilled message. The generator encodes a `SMSTO:` payload, the one format that opens the Messages app reliably on iOS and Android. The user scans and only needs to tap Send.

Scan to text

What to encode

Style

Frame

  • Files never leave your device
  • Runs in your browser
  • Free, no signup

How it works

  1. 1

    Type recipient and message

    Country code without the +, then the number. Body is the prefilled SMS text.

  2. 2

    Check the SMSTO: payload

    We surface the encoded string above the preview. Verify before printing; most errors are missing country codes.

  3. 3

    Download PNG or SVG

    PNG for digital, SVG for print. Both open the Messages draft on iOS and Android.

What this SMS QR generator does

SMSTO: not sms:

The only format that reliably prefills on both iOS and Android. `sms:?body=` opens blank on iPhone; SMSTO does not.

E.164 phone normalisation

Country code plus number gets cleaned into the international format every Messages app parses.

Body is optional

Leave it blank for free-text replies; prefill it for one-tap actions like JOIN or STOP.

Where this helps

Marketing

Marketing opt-in

'Scan to join our list.' Body prefilled with JOIN. Inbound SMS counts as consent.

Feedback

Customer feedback

'Text us a review.' Empty body. Customers write what they want.

Booking

Booking and reservations

Body 'Table for 4 at 7pm.' One-tap booking inquiry from a yard sign or window decal.

Support

Support fallback

When the call queue is long, 'Text us at any time' with body 'Order #' prefilled.

Events

Event check-in

QR at the entrance with body 'Arrived, name'. Front-of-house clerks tally arrivals from a single inbox.

Hospitality

Hotel concierge requests

QR in the room with body 'Room 304 needs '. Guests text the missing item, staff replies in one thread.

Tips that help

  • 1

    Include the country code

    Scans from a phone roaming abroad fail without it. Always provide the country code in the form.

  • 2

    Keep the prefilled body short

    One short line. Anything longer makes the QR dense and hurts scan reliability from a few feet away.

  • 3

    Test on iOS first

    iOS is the strict one. If iPhone Messages opens with the body prefilled, Android will too.

  • 4

    Print 'Text us' label

    Without context, the QR could be Wi-Fi or payment. Two words remove the guessing.

Why SMSTO: instead of sms:

Most QR generators encode SMS as `sms:<number>?body=<text>`. That payload is technically valid but unreliably parsed on iOS, and inconsistent on older Android dialers. The fix is `SMSTO:<number>:<body>`, a pre-RFC encoding that every major scanner supports because it is what Nokia and BlackBerry shipped in the original phone-feature era, and iOS / Android adopted it for compatibility.

The SMSTO format

The payload is `SMSTO:<phone>:<body>`. Phone is in E.164 with a leading `+`. Body is plain text, no URL-encoding needed, although we encode spaces and special characters that some older parsers still trip on.

SMS QR code that prefills on iPhone and Android

Example: `SMSTO:+919876543210:I would like the takeout menu`. The recipient is set; the body is prefilled. iOS Messages, Google Messages, Samsung Messages and most third-party SMS apps parse it identically.

We surface the encoded payload above the preview. Verify it matches your intent before printing; the most common mistake is forgetting the country code.

When to leave the body blank

For free-text replies ('Tell us what you think'), leave the body empty. The Messages app opens addressed to your number, the user types whatever they want and hits Send.

For one-tap actions ('JOIN', 'STOP', 'BOOK'), prefill the body. The user only has to tap Send; friction is at its lowest.

Mixed approach: print 'Scan and text us. Add your name.' Body prefills 'Hi! My name is ' and the user adds the rest. Catches both the discoverability of the QR and the personalisation of the message.

Where the SMS QR earns its place

Marketing opt-in. 'Scan to join our list' with body 'JOIN'. The platform records the inbound SMS as consent.

Customer feedback. 'Text us a review' with body left empty. The shortcode goes to a sentiment-tagged inbox.

Booking and reservations. 'Text to reserve' with body 'Table for 4 at 7pm'. Manager replies with confirmation.

Customer support fallback. 'Phone busy? Text us.' QR opens the support number with body 'Order #' prefilled. Customers add the order number; support context arrives intact.

Read more

Costs and consent rules

SMS to a business number costs the same as a normal text to that number, usually free on a phone plan, possibly chargeable on pay-as-you-go.

Consent rules vary by country. In the US, TCPA requires explicit opt-in before sending marketing SMS to a number. The 'scan to opt in' QR is a documented consent mechanism if your terms note 'Message and data rates apply'.

GDPR and UK PECR require similar opt-in records. A QR-driven inbound SMS counts as positive consent for follow-up under most interpretations; keep the inbound text on file as evidence.

Frequently asked questions

Honest answers to what people ask before using this tool.