Product
WhatsApp widget for your website: chat buttons vs opt-in forms
Most "WhatsApp widgets" are chat buttons. They are useful, but they do not give you permission to send updates later. Here is the difference, what a compliant opt-in form needs, and how to put Buddy's opt-in form on any website with a single line of code.
The Buddy Team · · 9 min read
Product
Website widget
A WhatsApp widget for your website is either a chat button that opens a WhatsApp conversation with your business, or an opt-in form where visitors give their number and agree to receive your updates on WhatsApp. The chat button is for questions. The opt-in form is what lets you message people later, because it records their consent.
Many businesses install the first and assume they have the second. This guide explains the difference, what Meta and data protection law expect from an opt-in, where to place a form so people actually use it, and how to add Buddy's opt-in form to any site with one script tag.
What is a WhatsApp widget for a website?
The phrase covers two quite different tools. Both are worth having; they just do different jobs.
| Chat button | Opt-in form | |
|---|---|---|
| What the visitor does | Taps a button and WhatsApp opens with your number | Enters their name and number, ticks a consent box, presses Subscribe |
| How it works | A wa.me link, often with a pre-filled message | A form that saves the person to your audience |
| What you get | A conversation the visitor starts | A subscriber with a record of when and where they agreed |
| What you can send | Replies within 24 hours of their last message | Approved template messages later, such as WhatsNews |
| Best for | Questions, support, pre-sale help | Launches, offers, reminders, newsletters |
How a chat button works
WhatsApp's click-to-chat feature opens a chat with a number through a wa.me link, such as wa.me/447700900123, written in full international format without the plus sign, spaces or leading zeros. You can add a pre-filled message so the visitor only has to press send (WhatsApp Help Center). Most "WhatsApp widget" plugins are a styled floating button wrapped around that link.
Why a chat button is not consent to marketing
When someone messages you, a 24-hour customer service window opens and you can reply freely (Meta, send messages). That is all the chat button gives you. It does not tell you the person wants promotions next month.
Meta's opt-in requirements say that before you send someone business-initiated messages, you must get their opt-in, and that the opt-in must clearly state they are agreeing to receive messages from your business on WhatsApp, name your business, and comply with applicable law. The WhatsApp Business Messaging Policy sets the same expectation. A visitor asking about delivery times has not agreed to any of that.
So the question to ask of any widget is simple: after someone uses it, do you have a record that they agreed to hear from you on WhatsApp, and about what? If not, it is a contact tool, not a list-building tool.
What does a compliant WhatsApp opt-in form need?
Meta's rules set the floor. Data protection law sets a higher bar in many places. Under UK and EU GDPR, consent must be freely given, specific, informed and unambiguous, and the UK regulator is explicit that pre-ticked boxes, silence or inactivity are not consent (ICO). Article 7 of the GDPR adds that you must be able to show a person consented, and that withdrawing must be as easy as giving it.
- 1Your business name, near the form, so people know who will message them.
- 2What you will send, such as new arrivals and offers, class reminders, or a weekly update.
- 3How often, roughly. "About once a week" builds more trust than silence.
- 4An unticked consent checkbox that the visitor must tick themselves.
- 5How to opt out, for example by replying STOP.
- 6A link to your privacy notice.
- 7A record of when, where and how each person opted in.
Here is wording you can adapt and place above or beside the form:
Get Harbour Coffee's new roasts and weekly offers on WhatsApp, about once a week. Reply STOP at any time to unsubscribe. See our privacy notice.
For more sample wording, per-category consent and how to handle STOP properly, read our full guide to WhatsApp opt-in.
How to embed Buddy's WhatsApp opt-in form in one line
Buddy Embed, currently in beta, puts a small opt-in form on any website that lets you paste a script tag. Signups go straight into your Buddy audience with consent recorded, exactly as if they had used your hosted opt-in page.
<script src="https://usebuddy.app/api/embed/YOUR-HANDLE"></script>- 1Find your handle on the Grow page in Buddy. If your opt-in link is usebuddy.app/harbourcoffee, your handle is harbourcoffee.
- 2Paste the script tag where you want the form to appear: a custom HTML or code block in your site builder, or straight into your template. The form renders exactly where the tag sits.
- 3Add a short line of text above it naming your business and saying what you will send (see the sample above).
- 4Submit a test with your own number, then check that you appear in Audience and in the Consent activity feed.
What visitors see
The form has four parts: a name field, a WhatsApp number field (required), a consent checkbox reading "I agree to receive WhatsApp updates and can opt out anytime." and a Subscribe button. The checkbox starts unticked and the form will not submit until the visitor ticks it. After a successful signup the visitor sees "You're in! Watch WhatsApp for updates." If Buddy rejects the number, the form says so instead: "That number doesn't look right. Include your country code, e.g. +44 7700 900123." Any other problem shows a prompt to check the number and try again, so nobody is told they have subscribed when they have not.
The built-in consent line does not name your business, which is why step 3 matters. Your surrounding text is what tells people who they are subscribing to and what to expect.
What happens behind the scenes
- The number is normalised to international format. When your workspace has a country set, local numbers are completed with that country's code, so a visitor in your country can type their number the way they usually do.
- Duplicates are merged. If the number is already in your audience, Buddy updates it rather than creating a second contact.
- Consent is logged with the date and source, and the contact appears in your audience with the source "Subscribe page", the same label used for your hosted opt-in page.
- Your welcome automation runs. A first-time signup fires the "When someone subscribes" trigger in Automations.
- Abuse is limited. Signups are rate-limited per IP address to blunt spam.
Where to place a WhatsApp opt-in form on your site
A form nobody sees collects nobody. Put it where people have just decided they like you.
Order confirmation page
Buyers are at their most positive. Offer restock alerts and new launches on WhatsApp.
Footer, on every page
Low effort, always there. Pair it with a one-line promise such as "New drops first, once a week".
Blog and resource pages
Readers who finish a guide are good candidates for a weekly tips update.
Event and course pages
Offer reminders and joining links for a class, webinar or launch night.
Contact page
Next to your chat button: "Want updates rather than a chat? Subscribe here."
Offline, too
Your hosted opt-in page has a QR code for menus, packaging and counters. Same audience, same consent record.
Imagine a yoga studio in Toronto. It keeps a WhatsApp chat button on its booking page for questions, and places the opt-in form under the class timetable with the line "Get new class times and workshop dates on WhatsApp, about twice a month." Questions go to the inbox; subscribers go to the audience; nobody is messaged who did not ask to be.
What to send after someone subscribes
The first message matters most. It confirms the signup worked and reminds people who you are, which makes a confused block later much less likely. One rule catches people out: someone who fills in a web form has not messaged you, so there is no open 24-hour window. Your welcome message must be a Meta-approved template, not free text.
- 1Create a short welcome template in Buddy's Message templates builder and wait for Meta's approval.
- 2In Automations, start from the Welcome message preset or build your own on the "When someone subscribes" trigger.
- 3Add a Send a message step using your approved template, and optionally an Add a tag step such as new-subscriber.
- 4Add a Wait step and a second message if you want a short welcome series.
Our guide to WhatsApp auto replies and automation covers welcome sequences in detail. One more thing to know: WhatsApp does not currently deliver marketing templates to people with United States phone numbers (Meta), so a US-heavy audience needs utility messages or another channel for promotions.
Using a chat button and an opt-in form together
You do not have to choose. The best setups use both and connect them.
- Chat button for conversations. Messages arrive in Buddy's shared inbox, where your team can reply within the 24-hour window.
- Opt-in form for updates. It builds a list you can send WhatsNews to, with consent on record.
- Bridge the two. When a chat goes well, send the customer your opt-in link (usebuddy.app/yourhandle) and invite them to subscribe for updates. The choice stays theirs.
What is coming to Buddy Embed from 12 October 2026
The one-line form works today. With Buddy 1.0 on 12 October 2026, we plan to add:
- Configuration, so you can shape the form to your site.
- A domain allow-list, so only your own websites can load your form.
- An install panel in the app that gives you your snippet ready to copy.
- Your real business profile on the opt-in page, so subscribers see who they are joining.
Buddy Embed for platforms (planned)
The longer-term plan for Buddy Embed goes beyond a form. For software platforms such as course builders, storefronts and booking tools, we plan to offer Buddy screens embedded inside your product: audience, campaigns and analytics, with tenant provisioning and white-label options, so your users run WhatsApp engagement without leaving your interface. This is planned, not built. If you run a platform and want to shape it, talk to us or read the Buddy Embed overview.
How to measure your website opt-ins
- Consent page: total contacts, opted in, opted out, and a feed of recent consent activity.
- Dashboard: the Audience growth chart shows opt-ins by day, so you can see whether moving the form to your order confirmation page made a difference.
- Audience: every subscriber with source, tags and status. Website signups show the source "Subscribe page", the same label as signups through your hosted page and QR code, so for now the source alone will not separate them.
- Campaign results: delivered, read, clicked and replied for each WhatsNew you send them. Our guide to WhatsApp marketing metrics explains what good looks like.
The form is one piece of a bigger loop: collect, organise, engage and learn. Our pillar guide to choosing a WhatsApp marketing platform shows how the pieces fit together. Developers who would rather post signups from their own backend can use the Subscribers API; see our WhatsApp Business API integration guide.
Frequently asked questions
Can I add a WhatsApp opt-in form to WordPress, Webflow or Shopify?
If your site builder lets you add a custom HTML or code block, or edit your theme template, you can paste Buddy's script tag there. Some builders only allow scripts on certain plans or page types, so check yours first.
Is a WhatsApp chat button enough to send marketing messages?
No. A chat button lets you reply for 24 hours after the customer writes. Sending marketing messages later needs an opt-in that names your business and says the person agrees to receive messages from you on WhatsApp.
Should the consent checkbox be pre-ticked?
No. Under UK and EU GDPR, a pre-ticked box is not valid consent. Buddy's form starts unticked and cannot be submitted until the visitor ticks it.
Do signups from the form trigger my welcome automation?
Yes. A first-time signup fires the "When someone subscribes" trigger. Because the person has not messaged you, the welcome message must be an approved template.
Does the widget cost extra?
The opt-in form is part of your Buddy workspace. Meta charges for the messages you send afterwards, billed directly to your WhatsApp Business account. See pricing for Buddy plans.