GDPR & Opt-in

WhatsApp Click-to-Chat Link: How to Create One (wa.me)

Nils SpölgenAugust 14, 20266 min readLast reviewed: August 2026
Keaz cover: building a WhatsApp click-to-chat link and turning taps into opt-ins

In short

A WhatsApp click-to-chat link is one URL: wa.me plus your number in international format. Build it in five steps, then make the tap capture the contact.

A WhatsApp click-to-chat link is one URL that opens a chat with your store — the customer needs no saved contact and types nothing. The format is `https://wa.me/<number>`, with your business number in international format and no plus sign, no leading zero, no brackets and no dashes. Add `?text=` plus a URL-encoded message and WhatsApp opens with the first message already written.

The short version:

  • One format, one URL: `https://wa.me/491701234567` — international format, no `+`, no leading zero, no dashes (WhatsApp Help Center, 2026).
  • Three taps for the customer: tap the link, WhatsApp opens with your message prefilled, send. That is the whole interaction.
  • 35–55% is where most Shopify stores start on customers they can actually reach on WhatsApp. Every entry point you place moves that number, and a link is the cheapest one to place.

Common mistakes

  • Leaving the `+` or the leading zero in the number. `wa.me/+49 0170…` does not resolve. `wa.me/491701234567` does. This is the single most common failure.
  • Not URL-encoding the prefilled text. An unencoded `?`, `&` or umlaut truncates the message at that character, and you only notice when a customer sends you half a sentence.
  • One link everywhere. You get conversations and no idea which placement produced them, which makes every future budget decision a guess.
  • A prefilled message written for your system, not the customer. `REQUEST_INFO_01` reads like a form. `Hi, I'd like advice on sizing` reads like a person, and gets sent far more often.
  • Pointing the link at an inbox with nobody in it. If nothing runs automatically, the response time is whenever someone next opens the tab.
  • Treating the chat-in itself as marketing consent. Someone writing to you once is not permission to add them to a campaign list.

A click-to-chat link takes two minutes to build and costs nothing. What it is worth depends entirely on what happens in the ten seconds after the tap — whether the contact is captured, whether a flow answers, and whether you can tell which placement sent them. Build the link, then decide that part deliberately.

Want to know what the channel is worth for your store before you build anything? Calculate your forecast.

Frequently asked questions

Do I need the WhatsApp Business API to use a click-to-chat link?
No. Any number with an active WhatsApp account can be the target of a `wa.me` link. What needs a proper business setup is everything after the tap: capturing the contact, starting a flow, attributing the entry point.
Can I prefill the message?
Yes — append `?text=` and your URL-encoded text. Prefilling is what turns a vague enquiry into a request you can route automatically, so use it every time.
Do I have to generate the QR code myself?
Not in Keaz. Save a flow with the Chat-in trigger and both the QR code and the URL appear in the flow detail view, ready to download or copy into campaign material.
Can two campaigns share one link?
They can, and you will regret it. The link is your attribution, so give every campaign its own flow and its own link.
Does a click-to-chat link work on desktop?
Yes, on WhatsApp Web as well as on a phone — a click opens the chat, and on mobile a QR scan does the same job.
Nils Spölgen

Nils Spölgen

Founder at Keaz. Serial founder in chat marketing — built a local agency into Keaz, the WhatsApp marketing platform for Shopify. Bootstrapped the MVP, raised funding, and scaled to 200+ merchants in DACH. Writes about flows, opt-in & GDPR, Klaviyo, and realistic revenue benchmarks — prefers conservative math over impressive claims. View profile

Get the WhatsApp growth playbook

Tactics, benchmarks, and templates — straight to your inbox. No spam.

Back to blog