WhatsApp link generator
Free · no signupEnter your number and the message you want customers to arrive with. You get a wa.me link for your bio, ads and website, and a QR code for the window, the counter and the back of a card.
Without the country code, and without a leading zero.
The customer sees this in their compose box and can edit it. It is never sent automatically.
Print it on the mirror, the counter, your window or the back of a card. Scanning opens the chat with your message already typed.
Every click lands in one inbox.
DMly picks up those chats, replies while you work and books the slot, from $19/month.
Four Steps Disappear Between Interest and a Conversation
An online shop puts a number in the Instagram bio. A consultant puts one under the sign-off on every quote.
Someone reads it on a screen and has nowhere to tap.
Instead of one action they have four: select the digits, copy them, leave the app, then think of an opening line. Mild interest rarely survives that.
Tap → WhatsApp opens → Message already typed → They press send
The link stops the people who already had a question from losing it on the way.
It isn’t doing much on its own, though. Where you put it does more work than how you build it.
How to Create a WhatsApp Link in Three Steps
- Pick the country, then type the number. The dial code fills itself in and the digits format as you go.
- Write the message, emoji included. The preview renders the chat the way the customer sees it.
- Copy the link, or take the QR code. Both point at the same chat.
Three routes reach the same place: by hand, a generator like this one, or the Business app short link.
The hand-built route is where most broken links come from.
How a wa.me Link Works, From Tap to Open Chat
Meta calls this click to chat. A wa.me address is a redirect rather than a service of its own.
It forwards to api.whatsapp.com/send with the same number and text attached.
Tap → wa.me redirects → WhatsApp opens → Message sits in the box → They press send
The customer doesn’t need your number saved, as long as an active WhatsApp account sits behind it.
It isn’t a Business template message either. A link opens a conversation, it doesn’t send one.
Getting the Number Right: Digits Only, Country Code First
The path after wa.me/ is digits only. No plus, no spaces, no brackets, no dashes, and no national trunk zero.
- United Kingdom. 07700 900123 becomes 447700900123, not 4407700900123.
- Nigeria. 0803 000 0000 becomes 2348030000000, dropping the leading zero.
- Italy. The exception. Landline area codes keep their zero, so a Rome number keeps it too and starts 3906.
- Argentina and Mexico. Argentina inserts a 9 after 54 and drops any local 15. Mexico is 52 plus the ten digits.
- Russia and Kazakhstan. The domestic 8 becomes 7.
The plus sign deserves its own warning. Meta’s rule is digits only.
The plus and 00 forms are reported to work on some clients and fail on others, with WhatsApp Web and Desktop the usual casualties. Bare digits are the form nobody reports problems with, which answers “it works on my phone but not on their laptop”.
A stray letter turns the path into a username lookup, hunting for a handle nobody owns.
The selector above validates as you type.
It can check the shape of a number, not whether that number is registered.
Writing the Pre-filled Message, and the Characters That Break It
The placeholder reads “Hello, I want more info about the product”. It’s a placeholder for a reason.
A message like that arrives telling you nothing.
Write it as the customer, naming the one thing they tapped.
“Hi, I saw your ad about the autumn intake. Is there still space?”
Instead of one message doing duty everywhere, give each place its own opener.
The message travels as a query parameter, so a few characters need encoding.
- Ampersand and hash. A raw & starts a new parameter and a raw # starts the fragment. Use %26 and %23.
- Line breaks. A real newline in the href goes nowhere. %0A survives the redirect.
- Quotes. A straight double quote closes the href attribute it sits inside, and WordPress curls quotes after you paste.
- Plus signs. Keep them out of the text, because WhatsApp on iOS turns an encoded plus back into a space.
- Emoji. The picker above handles them, and they arrive fine when the message gets encoded once.
- Encode once, never twice. A CMS that re-encodes an encoded message turns %20 into %2520, and the customer sees the percent signs.
The generator above encodes the message once.
It can’t stop you pasting the result into something that encodes it again.
Buttons, Signatures and Listings
On a website, put the link on a button rather than the raw URL. Meta publishes an official “Chat on WhatsApp” button, and asks that it goes out unmodified.
In an email signature, an invoice or a booking confirmation, link a short phrase instead. “Message us on WhatsApp” reads cleanly and survives forwarding.
If the thing carrying the link gets printed, the WhatsApp QR code generator suits it better.
When a WhatsApp Link Doesn’t Open, and How to Test Yours
Instagram, TikTok, Facebook and LinkedIn open links in their own browser, which often can’t hand off to the app.
The tap does nothing, or opens WhatsApp without the message, or lands on a login screen. Nothing tells the visitor which of the three just happened.
The way out is the three-dot menu and “Open in browser”, or a profile action button.
- Generic shorteners. A wa.me link behind a public shortener breaks on iOS, because the system checks the shortener’s domain rather than the destination.
- Desktop. Nothing opens automatically. The visitor gets an interstitial, then needs the desktop app or a linked browser.
- Two apps, one phone. With WhatsApp and WhatsApp Business both installed, the wrong one can capture the link.
- The domain itself. wa.me has failed globally before. Check it responds, then try api.whatsapp.com/send instead.
A wrong number is the cruel one.
The link opens perfectly, and the dead end only appears inside WhatsApp, after they have left your site.
You can’t test on the phone that owns the number, so borrow a handset and tap the link where it lives.
Fixing the format fixes most of it.
The rest is the visitor’s device, and you can’t reach that from here.
Where the Chat Lands and Who Answers
An agency runs a click-to-WhatsApp ad. A travel operator puts a link on the booking confirmation.
Both arrive at the same number and need different handling.
A number normally sits on one of the three at a time, personal app, Business app or Business Platform. Coexistence is the exception, letting the Business app and the Cloud API share one number in the countries where it’s available.
Moving a number doesn’t change the link, so anything already published keeps resolving. What changes is who answers.
Instead of leaving whoever answers to guess, let the opener say where the chat came from.
With DMly, you can have the first reply go out automatically while a person picks the conversation up.
A chat somebody starts themselves is a service conversation, and Meta hasn’t charged for those since November 2024. The pricing calculator covers what does cost money.
The opener is the useful part.
The conversation still wants a person.
Final Thoughts
A click-to-chat link has two moving parts. Digits in full international format, and a message encoded once and written as the customer.
Get those right and the rest is placement. A bio, an ad, a website button, a signature, a listing, each with its own opening line.
Then test it where people actually tap it, including inside the apps that keep links to themselves.
The generator above builds the link, the preview and the QR code in one pass, alongside the rest of the free tools.
Frequently Asked Questions
What does a wa.me link look like, and what does each part do?
It reads https://wa.me/ then your number in international digits, then ?text= and an encoded message. The number decides the chat, the text the first line.
Do I include the plus sign, the leading zero or spaces?
None of them. Digits only, country code first, trunk zero removed, with Italian landlines the exception that keeps their area-code zero.
Why does WhatsApp say the phone number shared via url is invalid?
People report that wording on WhatsApp Web. It points at the number rather than the link, usually a stray formatting character or a missing country code.
Can the customer edit the pre-filled message before they send it?
Yes. The text lands in their compose box, where they can change or clear it. Treat it as an opener rather than data you can rely on.
How long can a pre-filled message be, and can it hold line breaks or emoji?
No limit is published, so keep it readable at a glance. A line break travels as %0A, and emoji arrive intact unless a second tool re-encodes them.
What’s the difference between a wa.me link and an api.whatsapp.com link?
They’re the same thing, since wa.me redirects to api.whatsapp.com/send carrying the number and text. The long form is a handy fallback if wa.me stops answering.
Does a click-to-chat link work on a desktop computer?
It does, with an extra step. The visitor picks the desktop app or WhatsApp Web, and Web asks for a code scan if that browser was never linked.
Can I add a WhatsApp link to my Google Business Profile or a directory listing?
Both accept an ordinary link on the profile. Check the tap on a phone afterwards, since those links often open inside another app’s browser.
What happens if someone taps the link and hasn’t got WhatsApp?
They reach the same interstitial, prompted to install the app instead of a chat. Nothing warns them beforehand, so keep a second contact route.
Can several people answer the chats that come from one link?
On the Business app a small team shares one number across a few devices. Beyond that, a shared inbox on the Business Platform, which the pricing page covers.
Does a wa.me link expose my phone number?
Yes, in the sense that anyone who sees or forwards the link can read the number out of the URL. WhatsApp’s own landing page is set to noindex, so it shouldn’t turn up in search results. A wa.me/message link keeps it out of the URL, though the recipient sees it once the chat opens.
Can I make a link with just a message and no number?
You can, and it behaves differently. A link carrying only ?text= opens a contact picker, so it works as a share link.
More WhatsApp tools
All 45 tools →Broadcast cost calculator
What one campaign to your whole list actually costs to send.
WhatsApp QR code generator
A scannable code that opens a chat with your message already typed. Print it anywhere.
WhatsApp API pricing calculator
Per-message rates by country and category, with your monthly and annual cost.
