Your numbers stay yours
There is no backend. The link, the QR code and the widget are all assembled by JavaScript in this tab, so no phone number or message is ever transmitted anywhere.
Turn a phone number into a click-to-chat link, a scannable QR code and a floating chat button for your site. Everything is generated in this tab — no account, no upload, no server.
Type it the way you would dial it locally. Leading zeros, spaces, dashes and a pasted country code are all cleaned up for you.
Appears in the chat box ready to send. Leave it empty to open a blank chat.
Point a phone camera at this to open the chat. Works on posters, menus, packaging and receipts.
Higher levels keep scanning after scuffs and smudges, at the cost of a denser code.
SVG stays sharp at any print size.
Pick your brand colour, or keep WhatsApp green so visitors recognise it instantly.
Available when there is exactly one contact.
Shown once per visitor. Dismissing it is remembered in their browser.
Hours are checked in this timezone, not the visitor's — so a customer in another country sees the right status.
This is the generated markup itself, not a mock-up.
Your page content sits here
Paste this once, just before the closing </body> tag, on every page that should show the widget.
One HTML file you can open locally to check the widget before touching your site.
There is no backend. The link, the QR code and the widget are all assembled by JavaScript in this tab, so no phone number or message is ever transmitted anywhere.
You get plain HTML, CSS and JavaScript — not a script tag pointing at someone else's server. Nothing can start charging you, change the design, slow your site down or disappear.
Argentina needs a 9 inserted after +54. Mexico needed a 1 until 2020 and now breaks with it. Leading zeros have to go. These are the reasons click-to-chat links silently fail, and they are handled for you.
One small stylesheet and a handful of modules, no frameworks and no trackers. Once the page is cached it keeps working without a connection.