🎉 New feature on Share Widget: a redirect URL after WhatsApp sharing. Try it!

Reference

The WhatsApp link format, explained

Everything about WhatsApp “click-to-chat” links in one place: the exact URL formats, the phone and text parameters, how to write the number, how to encode the message, and the mistakes that quietly break a link. Bookmark it, cite it, build from it.

What a click-to-chat link is

A WhatsApp click-to-chat link (often called a “wa.me link”) is an ordinary URL that opens a WhatsApp chat with a message already typed in. The person taps the link, WhatsApp opens, and they only have to press send. No saving a number, no copying text across apps.

The link carries two pieces of information at most: which number to open a chat with, and what message to pre-fill. Both are optional, which is what makes the format flexible: you can point at one contact, or share a ready-written message anyone can forward to whoever they choose.

The message is only pre-filled, never sent automatically. The recipient always taps send themselves, so a click-to-chat link can’t message people on your behalf.

The three URL formats

WhatsApp accepts three interchangeable URLs for click-to-chat. They behave the same; wa.me is simply the short, official one.

wa.me: the short link

WhatsApp’s official short domain. The number goes straight in the path; the message is an optional ?text= query. This is the form to prefer everywhere.

https://wa.me/<number>?text=<url-encoded message>

api.whatsapp.com/send: the long link

The older, longer equivalent. The number is a phone query parameter instead of a path segment. Identical behaviour; useful when a platform rewrites or blocks wa.me.

https://api.whatsapp.com/send?phone=<number>&text=<url-encoded message>

web.whatsapp.com/send: desktop-first

Targets WhatsApp Web specifically. Handy for links you know will be opened on a computer; on a phone it still hands off to the app.

https://web.whatsapp.com/send?phone=<number>&text=<url-encoded message>

The parameters

There are only two things you can set: the number and the text. Everything else in the URL is fixed.

ParameterRequiredWhere it goesWhat it does
numberOptionalPath segment on wa.me; the phone query on api/web.whatsapp.comThe contact to open a chat with, in full international format, digits only. Omit it to let the person choose who to send the pre-filled message to.
textOptional?text= query parameterThe message to pre-fill in the chat box, URL-encoded. Omit it to open the chat with an empty message box.

How to write the phone number

The single most common reason a link opens an empty or wrong chat is a badly formatted number. The rules are strict but simple:

  • Start with the country code (for example 44 for the UK, 1 for the US/Canada, 55 for Brazil).
  • Use digits only: no plus sign, no spaces, no dashes, no brackets.
  • Do not use a leading 0. National trunk zeros (as in 07911…) are dropped once the country code is added.
  • Do not prefix with 00 either: the country code alone is enough.
Example
Wrong+44 (0)7911 123 456
Right447911123456

How to encode the message

The text parameter must be URL-encoded so spaces and symbols survive the trip through the address bar. If you build links by hand, these are the characters that trip people up:

CharacterEncoded as
space%20 (or +)
line break%0A
& (ampersand)%26
# (hash)%23
? (question mark)%3F
% (percent)%25
+ (plus)%2B

Emojis are fine and don’t need special handling. If any of this looks fiddly, don’t encode by hand: the generator below does it for you and shows the finished link.

What happens when someone taps it

On a phone, the link opens the WhatsApp app directly, on the chosen chat, with the message pre-filled. If the number isn’t saved as a contact, WhatsApp still opens the chat. That’s the whole point.

On a computer, it opens WhatsApp Web or the desktop app when the person is logged in there; otherwise it shows a page prompting them to open WhatsApp. Behaviour is worth testing on both if your audience is mixed.

If you leave the number out, WhatsApp opens and lets the person pick who to send the pre-filled message to: up to several chats at once. That makes a number-less link ideal for a message you want spread, rather than a chat with you.

A note on group links (they’re different)

A group invite is not a click-to-chat link and does not use wa.me. It looks like https://chat.whatsapp.com/<invite-code> and is generated inside WhatsApp from the group’s “Invite via link” option. You can’t build one from a phone number, and the text parameter has no effect on it.

Copy-paste examples

Working links you can adapt: swap in your own number and message.

Open a chat with one contact
https://wa.me/447911123456
Open a chat with a pre-filled message
https://wa.me/447911123456?text=Hi%2C%20I%27d%20like%20more%20info
A shareable message, no fixed recipient
https://wa.me/?text=Check%20this%20out%3A%20https%3A%2F%2Fexample.com
The long-form api.whatsapp.com equivalent
https://api.whatsapp.com/send?phone=447911123456&text=Hello

Common mistakes

  • Leaving the + , spaces or dashes in the numberStrip everything but the digits: +44 7911 123456 → 447911123456.
  • Keeping the local leading zeroDrop it once the country code is there: 07911… → 447911…
  • Not URL-encoding the messageEncode spaces and symbols (space → %20, & → %26), or let a generator do it.
  • Expecting the message to send by itselfIt’s only pre-filled; the recipient still taps send. That’s by design.
  • Using wa.me for a groupGroup invites use chat.whatsapp.com/<code>, created inside WhatsApp.

Don’t build these by hand

Now you know exactly how the format works, but you rarely need to assemble it yourself. Our free tools handle the number formatting and message encoding for you, and give you a link you can copy or turn into a QR code in seconds.

Frequently asked questions

What is the wa.me link format?
It’s WhatsApp’s official click-to-chat URL: https://wa.me/<number>?text=<url-encoded message>. The number goes in the path in full international format (digits only), and the optional text query pre-fills a message. Both parts are optional.
Do I have to include a phone number?
No. https://wa.me/?text=<message> opens WhatsApp with the message pre-filled and lets the person choose who to send it to: good for a message you want forwarded. Add a number to open a chat with one specific contact.
What’s the difference between wa.me and api.whatsapp.com?
None in behaviour: wa.me/<number> and api.whatsapp.com/send?phone=<number> do the same thing. wa.me is just the shorter, official form; the api.whatsapp.com version puts the number in a phone query parameter instead of the path. For a deeper comparison, see wa.me vs api.whatsapp.com.
Why does my link open an empty chat?
Almost always a number-formatting problem: a stray +, space or dash, or a leading 0 left on the local number. Use digits only, starting with the country code: 447911123456, not +44 (0)7911 123456. Still stuck? Work through the 7 most common causes of a wa.me link not working.
Does the link send the message automatically?
No. The message is only pre-filled in the chat box; the recipient always presses send themselves. A click-to-chat link can’t message anyone on your behalf.
Is there a limit on the message length?
There’s no official hard limit, but very long messages make for very long URLs, which some browsers and apps truncate. Keep the pre-filled text to a sentence or two for reliability. See our WhatsApp Link Generator to build and test one.
How do I turn a wa.me link into a QR code?
Paste or build the link in our free WhatsApp QR Generator and download it as PNG, JPG or SVG. Scanning the code opens the same chat with the same pre-filled message.