SMS link generator — a "Text us" link with the message ready to send

Enter your phone number and an optional message, and the tool builds an sms link that opens the visitor's messaging app with both filled in, plus HTML and an optional QR code.

Live demo · real result from this tool

Link

sms:+15035550142?body=Hi!%20I'd%20like%20to%20book%20a%20table%20for%202%20tonight.

HTML

<a href="sms:+15035550142?body=Hi!%20I&#39;d%20like%20to%20book%20a%20table%20for%202%20tonight.">Text us</a>

Preview

Processed on your device — nothing is uploaded.

  1. Type the number in Phone number (international format), for example +1 (503) 555-0142.
  2. Write the text you want ready in Pre-filled message, or leave it empty to open a blank message.
  3. Set Link text to the words on your button, such as “Text us”.
  4. Tick QR code if you also want a scannable code. You get it as a PNG and as an SVG.
  5. Copy the Link or the HTML anchor. The Preview shows the button.

What it does and when to use it

Many customers would rather send a quick text than call. An sms link turns that into one tap: the messaging app opens with your number in the “To” field and a starter message already written. Restaurants use it for bookings, repair shops for “Send us a photo of the problem”, and charities for text-to-join keywords.

The pre-filled message also tells you where the contact came from. A message that starts “Hi! I’d like to book a table” is clearly from your website button. For other channels, the WhatsApp link generator and the click-to-call link generator work the same way, and the mailto link generator covers email.

How it works

The link follows RFC 5724: sms: then the number, then ?body= and the message. The number is cleaned to a leading + and digits. Letters in the number become keypad digits (ABC = 2 … WXYZ = 9), and a note shows the conversion. The message is percent-encoded with encodeURIComponent, so spaces become %20, and line breaks become %0D%0A. Characters such as ! and ' are safe in a URL and stay as they are.

If you tick QR code, the tool draws a code that contains the whole sms link, with medium error correction. Everything happens in your browser.

Worked examples

Table booking (the preset). Number +1 (503) 555-0142 and the message “Hi! I’d like to book a table for 2 tonight.” give:

sms:+15035550142?body=Hi!%20I'd%20like%20to%20book%20a%20table%20for%202%20tonight.

A local UK number. 07700 900123 with no message gives sms:07700900123 and the warning: “Add the country code (e.g. +44 7700 900123) so the link works for visitors abroad.”

An opt-out link. Number +61 412 345 678, message STOP, link text “Unsubscribe by text”:

sms:+61412345678?body=STOP

Limits and tips

  • Letters in a number (such as 1-800-FLOWERS) are converted to keypad digits, giving +18003569377. Check the converted number in the note before you publish the link.
  • Phones read the body in slightly different ways. Test your link on both an iPhone and an Android phone before printing it.
  • Keep the pre-filled message short. A long body makes a dense QR code that is harder to scan when printed small.
  • For a printed code with your own colours or a different error-correction level, paste the link into the QR code generator.

Frequently asked questions

What happens when someone taps the link on a computer?
Desktop browsers pass sms links to whatever app is registered for them. On many computers there is none, or it opens a linked-phone app, so the link is most useful on mobile pages. Ticking QR code lets desktop visitors scan it with their phone instead.
Does the visitor's message send automatically?
No. The link only opens a new message with your number and text filled in. The visitor can edit it and must press send themselves.
Why does the tool want the country code?
A number like 07700 900123 only works inside its home country. Written as +44 7700 900123 it works from anywhere, so the tool warns you when the number does not start with + or 00.
Can I use brackets, spaces or dashes in the number?
Yes. Type the number the way you normally write it. The tool keeps the leading + and the digits and removes everything else, so +1 (503) 555-0142 becomes +15035550142. A leading 00 is turned into +.
Are emoji and accented letters allowed in the message?
Yes. They are encoded as UTF-8 in the link, as the SMS link standard expects. Keep in mind that such characters can shorten how much fits in one text, which depends on the phone and network.

Sources

  1. RFC 5724: URI Scheme for GSM Short Message Service (SMS) — RFC Editor, accessed 2026-10-08

Written by the ToolsRift team · Last updated

Pages are drafted with AI assistance and checked by automated tests. How we write and check pages.

Was this tool useful?

Report a problem

Start typing to search every tool.

↑ ↓ to moveEnter to openEsc to close