Home / Blog / Chat Widget

Chat widget for a website: three channels, three ways to install

A chat widget is a fixed button on your site that opens a conversation in WhatsApp, Facebook Messenger, Telegram, or an on-site chat panel. You do not need a support team to run one: a small business can route every message to a phone number it already answers. What decides whether it earns its place is the channel your visitors actually use, where the button sits, and whether you reply fast enough to matter.

Key takeaway: pick one channel your customers already use, install the button through a single deferred script, place it away from the checkout button, and measure conversations started rather than clicks. A widget nobody answers is worse than no widget.

GrowthTools widget gallery showing chat and contact widgets available for a website
The chat and contact widgets available in GrowthTools, each publishing a single button on the page. Screenshot taken in the GrowthTools dashboard.

The short answer

  • What it is: a small floating button, usually bottom right, that opens a conversation without leaving the page. It is not live chat software by default, and that is the point: the message lands in an app you already have.
  • Which channel: WhatsApp for local services and markets where it is the default messenger, Messenger for pages with an active Facebook audience, Telegram for technical and Eastern European audiences, an on-site form when you cannot answer quickly.
  • What it costs you: installation is minutes. The real cost is the promise: a button that invites a message and never gets an answer trains visitors to ignore it.

Which channel fits which visitor

Choose by where your customers already read messages, not by which tool has the nicest dashboard.

ChannelWho answersBest fitWhat to watch
WhatsAppThe owner or a small team, from a phoneLocal services, quotes, appointments, markets where WhatsApp is the defaultBusiness hours expectations: people assume a reply within the hour
Facebook MessengerSomeone with the Page inbox openShops with an active Facebook page and existing messages thereRequires a logged-in Facebook session; some visitors will not use it
TelegramThe owner or a small team, from any deviceTechnical products, developer audiences, communities already on TelegramLow adoption in some consumer markets, so test demand first
On-site formEmail, laterB2B, quotes, anything needing attachments or a recordCheap to run, but no conversation: only use it where speed is not the point

If you are unsure, start with the channel that produced your last ten customer messages. That is measured behaviour, not a guess.

Three ways to install it

1. A hosted widget, configured in a dashboard

You create the widget in a tool, paste a phone number or a Messenger page URL, and the tool publishes one script on your site. No theme edit, no rebuild. This is the fastest path and the only realistic one if several people touch the site, because the button lives outside your codebase.

In GrowthTools, chat buttons sit next to the lead capture widgets in the same catalog: WhatsApp chat button, Messenger chat widget and Telegram chat widget. Each one publishes a button, not an iframe gallery, which matters for page speed: see our Core Web Vitals guide for what a heavy third-party embed does to LCP and INP.

2. One script tag before the closing body tag

Every hosted widget ultimately gives you a snippet. Paste it once, in the footer template of your site, so it loads on every page. Two rules keep it harmless:

  1. Defer it. A chat widget is not part of the first screen. It must never block the main content from painting.
  2. Load it once. Duplicated snippets happen when a theme and a plugin both inject the same script. If the button appears twice, or the console shows the script twice, remove one.

3. Through your CMS plugin or theme header

WordPress, Shopify, Webflow and Framer all expose a place for site-wide code: a plugin slot, a theme setting, or a custom code panel. Insert the same snippet there and skip the child theme edit. Keep a written note of where you put it: six months later, a duplicate button is nearly always a forgotten second snippet.

Placement rules that decide whether it gets used

  • Keep it away from the primary action. On a product page, the buy button and the chat button compete for the same thumb. If the chat button overlaps or sits next to the checkout, it steals taps that were meant to buy.
  • Respect the mobile safe area. A button pinned to the bottom edge collides with browser bars and with sticky add-to-cart bars. Test on a real phone, not only in a responsive preview.
  • Say what happens next. "Chat with us on WhatsApp" beats a bare icon. The label removes the doubt about whether it opens an app, a form, or a robot.
  • Do not greet everyone at once. An automatic chat bubble that opens on load is an interstitial on mobile. Our mobile interstitial penalty guide covers the coverage and dismissal rules Google applies.
  • Publish business hours. If nobody answers at night, say so in the widget. A promise of a reply that never comes costs more trust than the message was worth.

What to measure

Three numbers, in this order:

  1. Conversations started per hundred sessions on the pages where the button appears. This tells you whether the channel fits the audience.
  2. Reply time. The median delay between the visitor message and your first answer. It is the single strongest predictor of whether the widget keeps producing conversations.
  3. Outcome. Quotes sent, appointments booked, orders placed. A chat button that produces friendly conversations but no order is a hobby, not a channel.

If conversations are high but outcomes are zero, the problem is the offer, not the widget. If conversations are near zero, the channel or the placement is wrong, and no amount of redesign will fix a channel your visitors do not use.

Honest limits

A chat widget is not a support desk. It has no ticket history, no assignment rules and no SLA. If you sell complex products, expect to move conversations into email or a real help desk quickly, and say so in the first reply. The same applies to measurement: a click on a chat button is not a conversation, and most analytics setups report the click only. Count the messages in the messaging app itself, and compare with the click count to see how many visitors open the app and then abandon.

Add a chat button without touching your theme.

GrowthTools publishes WhatsApp, Messenger and Telegram buttons from one deferred script, next to the lead capture widgets you already use.

Create your free account

Questions

It can if the snippet loads synchronously or injects a large iframe. A deferred script that only adds a fixed button has a small cost, typically a few dozen kilobytes and no effect on LCP. Measure before and after with PageSpeed Insights or WebPageTest on a product page, and treat any change in INP as a reason to audit the snippet.

WhatsApp if your customers are in markets where it is the default messenger and you can answer from a phone. Messenger if you already run an active Facebook page and people message you there. Do not run both unless you can answer both: two unanswered buttons are worse than one answered button.

Bottom right, above the browser bar and clear of any sticky add-to-cart bar, with at least 12 pixels of margin from the screen edge. Do not let it overlap the checkout button, and test on a real device: responsive previews in a desktop browser do not show browser chrome or the on-screen keyboard.

Only if questions are what stop people from buying. A shop with three clear products and no sizing or compatibility questions does not need one. If the same two questions arrive by email every week, a chat button answers them before the visitor leaves, which is the case where it pays.

Try a chat widget on your busiest page.

One account, every widget, no card required. Publish the button, answer the first messages, then decide whether it stays.

Create your free account

Publisher: GrowthTools by Seinsights. Product demonstrations are illustrative; results depend on your site and campaign.