How to create a WhatsApp link
- Choose your country. The United States and the United Kingdom are at the top, every other country follows in alphabetical order. If you type a number that starts with a plus sign or 00, the country is picked for you.
- Type your number. Write it as you would dial it at home, such as
(202) 555-0143or07700 900123. The tool removes spaces, brackets, dashes and the trunk prefix (the 0 you dial before a UK number, or the 1 before a US one) and adds the country code. - Add a message if you want one. Pick an idea or write your own. The preview shows what the visitor sees when the chat opens.
- Copy and test. Copy the link, then open it from a phone with WhatsApp to check it reaches the right account. Download the QR code for print, or copy the HTML for a button on your site.
People search for this as a WhatsApp link, a wa.me link, a click to chat link or a WhatsApp chat link. They are all the same thing: a web address that opens a WhatsApp conversation with one phone number, without the visitor having to save it as a contact first.
The wa.me link format, explained
WhatsApp's Help Center describes click to chat links as https://wa.me/ followed by a full phone number in international format. The number is digits only: the country code, then the number without the domestic trunk prefix. A message, if you add one, goes after ?text=, encoded so that it is safe inside a web address.
| Part | Example | Rule |
|---|---|---|
| Address | https://wa.me/ | WhatsApp's own short domain for click to chat |
| Number | 447700900123 | Country code and number, digits only, at most 15 digits in all |
| Message | ?text=Hello%20there | Optional, URL-encoded so spaces and symbols survive |
The number is where most links break. Here is how common ways of writing a number end up in the link:
| You type | Country | In the link | What changed |
|---|---|---|---|
(202) 555-0143 | United States | 12025550143 | Brackets, space and dash removed, country code 1 added |
1 202 555 0143 | United States | 12025550143 | The leading 1 is already the country code, so it is not added twice |
07700 900123 | United Kingdom | 447700900123 | Trunk prefix 0 removed, country code 44 added |
+44 (0)7700 900123 | Picked from +44 | 447700900123 | Plus sign removed, and the (0) that UK numbers often show in brackets |
0044 7700 900123 | Picked from 0044 | 447700900123 | The international dialling prefix 00 removed |
A few countries keep their leading 0 in international format, so the tool leaves it in place for them: Italy and San Marino (a Rome landline starts +39 06), and the Ivory Coast, the Republic of the Congo and Gabon, where the 0 is part of the number itself. A few others use a different trunk prefix, which the tool also removes: 8 in Russia and Kazakhstan, 80 in Belarus and 06 in Hungary.
The example numbers on this page come from ranges set aside for drama and examples (555-0100 to 555-0199 in North America, 07700 900000 to 07700 900999 in the UK), so they do not ring anyone.
Pre-filled messages that get replies
A pre-filled message saves the visitor from staring at an empty chat and wondering how to start. It also tells you, before you reply, what the person wants. A few habits make it work better:
- Write it in their voice. The message is sent by the visitor, so it should sound like them: "Hi, I'd like to book a table for Friday", not "Welcome to our restaurant".
- Keep it to one line. A short opener invites the visitor to add their details. A long form-like text feels like work, and the longer the message, the denser the QR code.
- Use a different message per channel. "Hi, I saw your post on Instagram" in your bio link and "Hi, I found you on your website" on your site tell you where each chat came from, with no tracking software.
- Leave room to finish. Ending with "Here are the details:" prompts the visitor to add what you need to quote or book.
Messages are URL-encoded with the browser's standard encodeURIComponent. Letters and digits stay as they are; everything else becomes a percent code:
| Character | Encoded |
|---|---|
| Space | %20 |
| Line break | %0A |
| Comma | %2C |
| Ampersand (&) | %26 |
| Question mark | %3F |
| Hash (#) | %23 |
| Emoji 😊 | %F0%9F%98%8A |
Without the encoding, an ampersand or a hash in your message would cut it short, because both have a meaning of their own in a web address.
Where to use your WhatsApp link
- Your website. A chat button on the contact page, the pricing page and the footer, or a fixed button in the corner on mobile, where tapping beats typing an email. Use the HTML from step 5, or paste the link into your site builder's button field.
- Social media bios. Instagram, TikTok, Facebook and X all have a link field in the profile. A wa.me link there takes people from your profile straight into a conversation.
- Your email signature. Add it as a "Message me on WhatsApp" line under your phone number. The email signature generator takes any link.
- Print. The QR code works on menus, flyers, packaging, shop windows, business cards and vehicle signs. Print it in black on white, keep the white margin around it, and test the printed code from the distance people will scan it.
- Ads and listings. Many ad platforms and directories accept a website link. A wa.me link with a message per campaign tells you which ad started the chat.
Add a WhatsApp button to your website
The HTML from step 5 is a plain link styled as a button, with the styles written inline so it looks the same in WordPress, Squarespace, Wix, Shopify or a hand-built page. Paste it into an HTML or custom code block. It opens the chat in a new tab, so a visitor on a computer keeps your page open behind WhatsApp Web.
The text color switches between black and white automatically to stay readable on the color you choose. Keep the button text descriptive, such as "Chat with us on WhatsApp", rather than an icon alone: screen reader users and people who skim both need to know where the button goes.
This tool does not use the WhatsApp logo. WhatsApp is a trademark of Meta, and its brand resources set rules for how the logo and name can appear. If you want the icon on your button, take it from Meta's official brand resources and follow their guidelines, rather than copying it from another site.
Methodology and limits
- Cleaning the number
- Spaces, brackets, dots, dashes and slashes are removed. Letters or other symbols stop the link with an error rather than being guessed. A number that starts with a plus sign, 00, or 011 when the United States or Canada is selected is read as international, and the country is chosen from its code with the longest match. Shared codes keep the country you selected when it shares the code (Canada stays Canada on +1).
- Country code and trunk prefix
- In national format, the trunk prefix is removed: one leading 0 in most countries, the leading 1 of an 11 digit North American number, 8 in Russia, Kazakhstan, Lithuania, Tajikistan, Turkmenistan and Uzbekistan when the length shows it, 80 in Belarus and 06 in Hungary. Italy, San Marino, the Ivory Coast, the Republic of the Congo and Gabon keep the 0. A (0) written after an international code is also removed, except in those five. A national number that already starts with the selected country code and is long enough to include it is not given the code twice.
- Validation
- The full number must have at most 15 digits, the limit set by the ITU-T E.164 numbering plan, and at least 4 digits after the country code. North American numbers must have 10 digits after the 1, with an area code that does not start with 0 or 1. UK numbers are expected to have 10 digits after 44, and a note appears when the number is not a mobile (07). Other countries are checked against the 15 digit limit only. The tool cannot tell whether a number is registered on WhatsApp: test the link to be sure.
- Message
- Encoded with the JavaScript function encodeURIComponent, which turns every character except letters, digits and
- _ . ! ~ * ' ( )into UTF-8 percent codes, and added after?text=. Line breaks are kept. Spaces at the start and end of the message are trimmed. - QR code
- Generated in your browser by the open source qrcode-generator library by Kazuhiko Arase (MIT license), in byte mode with error correction level M, which lets a code survive about 15% damage. The smallest QR version that fits the link is used, with a quiet zone of 4 modules. The SVG is drawn as one path; the PNG is 1,024 by 1,024 pixels, black on white. A link longer than a QR code can hold is reported, and the link itself still works.
- Chat button
- A single
<a>element with inline styles,target="_blank"andrel="noopener". The text color is black or white, whichever has the higher WCAG 2.2 contrast ratio with the button color. - Privacy
- The number and message never leave your browser while you build the link. Usage is counted with a cookieless event that records the kind of action (such as "copy link"), never the number or the message.
- Trademark
- WhatsApp is a trademark of Meta Platforms, Inc. DEMARCA is not affiliated with, endorsed or sponsored by WhatsApp or Meta. The wa.me format is documented by WhatsApp and may change.
Sources
Show all 6 sources
- How to use click to chat, WhatsApp Help Center, the official description of wa.me links, ranked in the US and UK results for this search on 13 October 2026
- How to create short links, WhatsApp Help Center, on the short link option in the WhatsApp Business app
- Recommendation E.164: The international public telecommunication numbering plan, ITU-T, for the 15 digit limit and country codes
- encodeURIComponent(), MDN Web Docs, for how the message is encoded
- qrcode-generator, Kazuhiko Arase, the open source QR code library used here (MIT license)
- Web Content Accessibility Guidelines (WCAG) 2.2, W3C, for the contrast ratio used to pick the button text color


