The Zendesk Chat Widget

The Zendesk chat widget is the cheapest channel you'll ever add and the fastest way to double your ticket count. Both statements are true simultaneously.

Check which Zendesk chat widget you actually have

This matters before you follow any guide, including this one. Zendesk's current web widget is the messaging widget: conversations persist across sessions and devices, bots can answer first, and the conversation becomes a ticket in the agent workspace.

The older live chat widget behaved differently. Session-based, so closing the tab ended the conversation, and it produced transcripts rather than tickets in the same way. Plenty of sites still run it and plenty of instructions online still describe it. If your chats vanish when the visitor navigates away, you have the old one. Everything below assumes messaging.

Getting it on the page

The mechanics are a single script tag with a key that identifies your account and brand, placed before the closing body tag. That is genuinely all that's required for a working widget.

Three practical notes that save an afternoon each.

Tag manager works, with a caveat. Deploying through a tag manager is convenient and gives marketing control over which pages it appears on. It also means the widget inherits whatever consent rules your tag manager enforces, so check it still loads for people who declined analytics cookies, since a support widget is arguably functional rather than marketing.
Single page apps need care. The script should load once. Re-injecting it on every route change produces multiple launchers, duplicate event handlers and a bug report that takes a week to reproduce.
Test mobile first. On a phone the widget takes over most of the screen when open, so anything sticky underneath it stops existing. That's usually fine. On a checkout page with a fixed pay button, it's not.

What you can customise, and what you cannot

Split it into two buckets.

In the admin interface: colours, the launcher label, brand name and avatar, the offline or away behaviour, which bot answers first, and the language. Most of what people want is here, and changing it needs no deployment.

In code, through the widget's JavaScript API: showing and hiding the launcher, opening the widget programmatically from your own button, prefilling fields, overriding locale, adjusting position offsets, and clearing the session when a user signs out. That last one matters on shared computers and gets forgotten constantly.

What you can't do is redesign it. It renders in an iframe with a supported set of options, and no amount of CSS on your page reaches inside. If a designer hands you a bespoke chat interface, you aren't customising the widget any more, you're building a client against the messaging APIs, which is a different project with a different budget.

One small thing worth doing: offset the launcher so it doesn't sit on your cookie banner or your back-to-top button. Check on a 13 inch laptop, not just your monitor.

Placement and the visibility trade-off

Every page you put it on is a page where someone can start a conversation. That's the entire point and the entire cost.

Checkout and pricing pages. Highest value per conversation by a distance. Chat here pays for itself in orders that would otherwise have been abandoned.
Help centre articles. Yes, but place it so it appears after the article rather than covering it. A widget that obscures the answer someone came to read generates the ticket it was meant to prevent.
Documentation and status pages. Useful, and the place to think hardest about operating hours, because these get read at odd times.
The marketing home page. This is lead capture, not support. Decide whose queue it lands in before switching it on, or your support team spends a fortnight answering pricing questions from students.
Pages where you can't help. Hide the launcher. A widget on a page with nobody staffed behind it's a promise you break in front of the customer.

That last one is the rule most sites get wrong, and it costs more goodwill than a missing widget ever does.

Controlling the volume it creates

Expect chat contacts to be additive rather than substitutional, at least initially. Email does not fall by the amount chat rises, because a chunk of chat volume is demand that previously gave up silently. Some of that's good news. All of it needs staffing.

What actually controls it: honest operating hours with an offline form that sets expectations rather than pretending; a bot handling the top five questions before a human is offered; asking for a category before connecting, which deters the idle and helps the routing; and delaying the launcher slightly on page load rather than having it leap out at everyone.

What doesn't work is hiding behind a bot that can't escalate. People find the escape hatch, and if there isn't one they email you angrier than they would've started.

If you're weighing this widget against a rival messenger, the practical differences are covered in Intercom and Zendesk.

Know who is typing

An anonymous visitor produces a ticket with no real requester, or a brand new end user record every time they clear their cookies. Do that for six months and the same person exists in your account four times with four separate histories.

When the visitor is signed in to your site, authenticate the widget with a signed token so the conversation attaches to their existing Zendesk profile. It is a modest amount of back-end work and it's the difference between a support history and a pile of fragments.

FAQ

Frequently asked questions

How much of the Zendesk chat widget can you customise?

Colours, position, launcher text and the pre-chat form. Zendesk chat widget setup is a snippet of Zendesk widget code on the page, and to customise the Zendesk chat widget beyond the settings you use the JavaScript API. The Zendesk messaging widget offers slightly different controls again.

How do I add the Zendesk chat widget to my website?

Copy the widget snippet from your Zendesk admin settings and place it before the closing body tag on every page you want it on, or deploy it through your tag manager.

Can I change how the widget looks?

Colours, launcher text, position, avatar and language, yes. A full custom design, no. It renders inside an iframe and your page CSS can't reach it.

Can I show the widget on some pages only?

Yes. Either load the script conditionally, or load it everywhere and use the JavaScript API to hide the launcher where you don't want it.

Does the chat widget create tickets?

With messaging, yes. Conversations arrive in the agent workspace as tickets and follow your normal triggers and views.

Will adding chat reduce our email volume?

Not at first, and often not at all. Chat surfaces demand that previously went unspoken, so plan for total contacts to rise before anything else changes.

The chat and the email about the same thing

Customers who start a chat, get impatient and then send an email create two tickets with nothing in common but the person. Ticket Merger catches that pair on requester and timing.

Start free trial

14-day free trial. No credit card required.