Complete Zendesk web widget setup guide (2026)

Alicia Kirana Utomo
Written by

Alicia Kirana Utomo

Katelin Teen
Reviewed by

Katelin Teen

Last edited June 12, 2026

Expert Verified
Complete Zendesk web widget setup guide banner

Classic vs. Messaging: the choice you need to make first

Two very different products share the "Zendesk web widget" name, and mixing them up is how teams end up in the "I'm a Zendesk consultant and I wish they didn't exclusively push messaging" situation.

Web Widget (Classic) runs on Zendesk Chat (Zopim) and creates session-based live chats. When the visitor closes the browser, the conversation is gone. Agents see a visitor list, can initiate chats, and have an offline form fallback when no one's available. It's familiar and it works - it just can't run AI agents, and Zendesk isn't building new features for it.

Web Widget (Messaging) runs on Sunshine Conversations and is where all development is happening. Conversations are persistent - a customer can start on your website, pick up the thread on WhatsApp three days later, and the full history is there for the agent. Bot Builder flows, generative AI replies, and omnichannel routing all require Messaging.

Classic vs. Messaging comparison - key feature differences between the two Zendesk web widget generations
Classic vs. Messaging comparison - key feature differences between the two Zendesk web widget generations

One thing worth knowing: migration from Classic to Messaging is one-way at the account level. Enabling Messaging disables your Classic widget config. Zendesk does offer a "Switch to Web Widget (Classic)" button in the Installation tab, but it's not a quick rollback - it requires disabling Messaging entirely. Check your live-chat usage patterns before flipping the switch.

CapabilityClassicMessaging
Conversation persistenceSession onlyFull history retained
AI agents (Bot Builder)NoYes
Social channels (WhatsApp, FB, etc.)NoYes
Real-time visitor listYesNo
Agent-initiated end-chatYesNo
Offline form fallbackYesNo
Async supportNoYes
Mobile SDKsLegacyAndroid, iOS, Unity
Remove Zendesk brandingNoEnterprise only

The clear recommendation: use Messaging for any new setup. If you're already on Classic and your team relies on the visitor list or agent-side chat ending, read the community threads before migrating - those features are on the roadmap but not shipped as of June 2026.

Setting up Web Widget (Messaging): step by step

Here's the setup path for accounts created after November 2, 2021 that haven't previously used Zendesk live chat. If you were on live chat before, follow Creating a messaging Web Widget when using live chat instead.

Zendesk agent workspace showing the messaging widget in action - ticket list on the left, conversation in the center, widget preview on the right, as taken from Zendesk
Zendesk agent workspace showing the messaging widget in action - ticket list on the left, conversation in the center, widget preview on the right, as taken from Zendesk
Five-step Zendesk web widget setup flow: Admin Center → basics → style → copy snippet → paste on website
Five-step Zendesk web widget setup flow: Admin Center → basics → style → copy snippet → paste on website

Step 1: open Admin Center → Messaging

Go to Admin Center → Channels → Messaging and social → Messaging. Zendesk automatically creates a default Web Widget named after your account. Click it to open the configuration wizard.

Step 2: configure the basics

In the Basics tab:

  • Channel name - internal identifier; defaults to your brand name
  • Brand - select the relevant brand if you have multiple
  • Privacy notice - add recording notice text and optionally link to your privacy policy
  • Allow customers to switch channels - links the widget to WhatsApp, Facebook Messenger, and Instagram DM so visitors can continue on their preferred platform

Click Next.

Step 3: customize the appearance

Set a primary color (controls the launcher button and widget header), add a title and optional logo, then click Test it now to preview the end-user experience before going live. Click Next, then Done.

Step 4: copy the code snippet

In the Installation tab, copy the snippet:

<script id="ze-snippet" src="https://static.zdassets.com/ekr/snippet.js?key=YOUR_KEY"> </script>

You can also click Email code to team member to send it to whoever handles your site's HTML.

Zendesk web widget snippet - paste before the closing body tag, as taken from Zendesk
Zendesk web widget snippet - paste before the closing body tag, as taken from Zendesk

Step 5: paste before </body> - or auto-embed on your help center

For your website: paste the snippet before the closing </body> tag on every page where you want the widget to appear. That's the whole install.

For a Zendesk Help Center: tick Automatically embed Web Widget in your Help Center in the Installation tab and click Save. The widget appears across all help center pages immediately - no snippet pasting needed.

Help center auto-embed toggle, as taken from Zendesk
Help center auto-embed toggle, as taken from Zendesk

One more thing: if your site is behind a firewall, make sure the widget's required domains are allowed. And if you want to restrict where the widget appears, fill in the Allowlist field in the Installation tab - separate multiple domains with spaces.

Configuring your widget

Once the widget is live, the six settings tabs are where you tune it. Here's what each one does.

Style and appearance

The Style tab is where you match the widget to your brand. The most important controls:

  • Primary color - used for the launcher button and widget header
  • Message color - color of customer message bubbles
  • Action color - buttons and quick-reply options
  • Logo - JPG or PNG shown at the top of the widget
  • Border radius - slider from sharp corners (0px) to fully rounded (20px)
  • Position - bottom right or bottom left, with pixel offsets
  • Show Zendesk logo - toggle to hide the "Built with Zendesk" label (Suite Enterprise only)
Zendesk web widget style elements - labeled diagram showing every configurable visual element, as taken from Zendesk
Zendesk web widget style elements - labeled diagram showing every configurable visual element, as taken from Zendesk
Style tab with live preview in Zendesk Admin Center, as taken from Zendesk
Style tab with live preview in Zendesk Admin Center, as taken from Zendesk

The Preview panel on the right updates in real time, so you can iterate without reloading the live site.

Responses and AI agents

The Responses tab controls what happens when a visitor opens the widget. The most valuable setting here: connecting a Zendesk AI agent via Bot Builder. Once connected, the bot can answer questions from your help center, run generative reply flows, collect pre-chat information, and escalate to a human when needed.

You can also set custom greeting messages and configure which fields (name, email, subject) the widget collects before assigning a conversation to an agent.

AI agent persona settings in the Zendesk web widget - tone selector and greeting preview, as taken from Zendesk
AI agent persona settings in the Zendesk web widget - tone selector and greeting preview, as taken from Zendesk

This is also where Zendesk AI agents start to show their limitations - the built-in bot is good for article suggestions and basic triage, but its generative capabilities require the Advanced AI add-on and the per-resolution billing model that's been a recurring Zendesk complaint. More on that below.

Authentication

The Authentication tab controls whether returning visitors see their past conversation history.

  • Remember history - show previous conversations on return visits (default)
  • Forget history - fresh start each session (better for shared computers or sensitive contexts)
  • User authentication - enable JWT-based authenticated sessions so logged-in users are automatically identified
Authentication tab - remember history vs. forget history options, as taken from Zendesk
Authentication tab - remember history vs. forget history options, as taken from Zendesk

The authentication flow is worth setting up if you have a logged-in user base - it means customers never have to identify themselves again, and agents always see the full conversation history regardless of which device or channel the customer used.

Installation tab

The Installation tab is also where you find the Allowlist (domain restriction) field and the Switch to Web Widget (Classic) button - the one-way door back to Classic if you need it.

Installation tab showing snippet, help center auto-embed, Allowlist, and the switch to Classic option, as taken from Zendesk
Installation tab showing snippet, help center auto-embed, Allowlist, and the switch to Classic option, as taken from Zendesk

JavaScript API for advanced control

If you need more control than the Admin Center offers, the Messaging widget exposes a zE global. The most useful commands:

zE('messenger', 'show'); // Show the widget (after hiding it) zE('messenger', 'hide'); // Hide all widget UI from the page zE('messenger', 'open'); // Expand the chat panel zE('messenger', 'close'); // Collapse the chat panel

A few others worth knowing:

// Override browser language zE('messenger:set', 'locale', 'de'); // Cookie consent - hide widget if user opted out zE('messenger:set', 'cookies', 'none'); // Tag conversations for routing or reporting zE('messenger:set', 'conversationTags', ['priority', 'returns']); // Pass ticket field values automatically zE('messenger:set', 'conversationFields', [{ id: '123456789', value: 'premium' }]);

The hide + open combination is useful for trigger-based chat flows - hide the launcher by default, then programmatically open the widget when a visitor hits a specific page. The full API reference lives at developer.zendesk.com/api-reference/widget-messaging/web/core/.

For embedded mode (rendering the widget inside a specific container rather than as a floating overlay), use:

window.zEMessenger = { autorender: false }; zE('messenger', 'render', { mode: 'embedded', widget: { targetElement: '#my-chat-container' } });

This is what you want for split-layout pages where the chat is always visible rather than triggered from a launcher button.

Common issues to watch for

Page speed impact

This is the most serious operational issue. The Messaging widget has a measurable footprint, and the community has documented the effects thoroughly.

"When we switched from widget classic to messaging, we noticed catastrophical effects on performance of our sites... We fear that using the ZD native messaging widget, without any type of third party help, simply just doesn't work, unless a company is okay with sacrificing website performance."

Enterprise customer (48 seats), Zendesk Community, Jun 2023

A Shopify Plus store documented page loads of 17+ seconds after switching to Messaging (Shopify Community, Dec 2023). As of March 2026, the issue is still reported on r/Zendesk. The recommended workaround: add async or defer to the script tag so the widget loads after the main page content.

Zendesk acknowledged the problem in 2021 and said they were prioritizing package size optimization. Progress has been slow.

Missing Classic features in Messaging

The most-cited gap: agents cannot end a conversation from their side in Messaging. The end-user must close the widget or go inactive before the ticket can move to solved. There is also no real-time visitor list in Messaging - agents can't see who's browsing and initiate a proactive chat the way Classic allowed.

Reddit

"I cannot figure out how to stop the message getting assigned to an agent when they are not online during business hours... Using the classic chat widget, if no agents were 'Available' for chat, we would receive an 'offline message' which we could reply to via email."

u/Repulsive_Season_147, r/Zendesk, Mar 2024

If those features are non-negotiable, see Zendesk chatbot setup alternatives for third-party options that integrate with Zendesk.

Agent notification failures

A recurring complaint on r/Zendesk: the Messaging widget doesn't always notify agents when a live chat arrives. The issue seems to affect certain configurations and hasn't had a consistent fix. If your team is relying on browser notifications alone, set up Zendesk email triggers as a backup.

Spam via the widget

In May 2024, Classic widget accounts saw an outbreak of spam tickets spoofed as Web Widget submissions. The fix isn't disabling the widget - it's disabling unauthorized API ticket creation in your Zendesk settings. Worth checking if you start seeing unusual ticket volume.

Beyond the native widget: adding AI with eesel

The Zendesk web widget gives you the conversation channel. What you put behind it determines how much work your team actually has to do.

Zendesk's built-in AI agents handle article suggestions and basic triage well. Where they fall short: the Advanced AI tier needed for generative replies costs ~$50/agent/month on top of your base plan, and Zendesk's per-resolution billing model is the most-complained-about pricing change of 2026. There's also no pre-launch simulation - you can't see how the bot would have handled your last 500 tickets before you turn it on.

eesel takes a different approach. It connects to Zendesk as a native AI agent - not a separate chatbot layer - and starts working on all your channels, including web messaging, email, and social:

How eesel AI layers on top of Zendesk: customer message → Zendesk ticket → eesel AI resolves or escalates to human
How eesel AI layers on top of Zendesk: customer message → Zendesk ticket → eesel AI resolves or escalates to human

The workflow: customer sends a message via the web widget → ticket lands in Zendesk → eesel reads the full ticket history, drafts a reply grounded in your help center and past tickets, then either sends autonomously or queues for agent approval. No generative guessing - every response is tied to verified knowledge.

"Connecting eesel to Zendesk help center and messaging is ridiculously simple and we managed to get a chatbot and AI assistant that does some pretty complex actions with relative ease."

Richard Westerhof, Cloud86, via eesel.ai/integrations/zendesk

Smava runs 100,000+ support tickets per month through eesel in Zendesk. Ecosa achieves 75% tier 1 resolution at under an hour of integration time. Pricing is $0.40 per ticket handled - no platform fee, no per-resolution billing, no surprise invoices.

eesel AI dashboard showing connected Zendesk integration and ticket activity
eesel AI dashboard showing connected Zendesk integration and ticket activity

For a direct comparison of eesel vs. Zendesk's built-in AI, see how to add AI to Zendesk or Zendesk AI alternatives.

Try eesel

eesel is an AI teammate that lives inside Zendesk and handles tier 1 tickets on every channel - including your web widget conversations. It reads your existing help center, imports past tickets automatically, and starts resolving without any training or data labeling. Setup takes under 30 minutes and the free trial starts at $50 credit with no card required.

eesel AI working with Zendesk in action

Try eesel - or book a demo if you'd rather see it on your actual ticket data first.

Frequently Asked Questions

What is the Zendesk web widget?
The Zendesk web widget is a JavaScript snippet you paste onto any website to add a chat bubble that connects visitors to your Zendesk support team. It exists in two versions: Web Widget (Classic), which runs session-based live chat, and Web Widget (Messaging), the current generation that supports AI agents, persistent conversation history, and channels like WhatsApp and Facebook Messenger.
Which Zendesk web widget should I use - Classic or Messaging?
For almost all new setups, use Web Widget (Messaging). It supports Zendesk AI agents, persistent conversations (history survives browser closes), and omnichannel routing across WhatsApp, Facebook, and Instagram. The Classic widget is in maintenance mode and cannot run AI automations. The main caveat: Messaging still lacks a few live-chat-specific features - agents cannot end a conversation from their side, and there is no real-time visitor list. If those are hard requirements, check our Zendesk review for workarounds.
How do I add the Zendesk web widget to my website?
Go to Admin Center → Channels → Messaging and social → Messaging, open your Web Widget channel, navigate to the Installation tab, copy the code snippet, and paste it before the closing </body> tag on every page where you want the widget to appear. For help centers, you can tick Automatically embed Web Widget in your Help Center instead of pasting the snippet manually. Full step-by-step instructions are in our setup guide.
How can I add an AI agent to the Zendesk web widget?
In the Web Widget (Messaging) settings, go to the Responses tab and connect a Zendesk AI agent built with Bot Builder. This enables automated replies, article suggestions, and generative responses. For more capable AI that reads past tickets, drafts on-brand replies, and achieves 75%+ tier 1 resolution, eesel AI connects to Zendesk in under 30 minutes. See our guide on how to add AI to Zendesk for a full comparison.
Does the Zendesk web widget slow down my website?
It can. The Messaging widget has been reported to cause significant page speed degradation - one Shopify Plus store documented 17+ second load times, and a 48-seat Enterprise customer described the impact as 'catastrophical' after migrating from Classic. The community-recommended workaround is to add async or defer to the widget script tag, or to lazy-load it after the main page content. Third-party Zendesk marketplace apps also offer lighter-weight widget alternatives.

Share this article

Alicia Kirana Utomo

Article by

Alicia Kirana Utomo

Kira is a writer at eesel AI with a Computer Science background and over a year of hands-on experience evaluating AI-powered customer service tools. She focuses on breaking down how helpdesk platforms and AI agents actually work so that support teams can make better buying decisions.

Related Posts

All posts →
Banner image for How to get and install your Zendesk web widget embed code
Zendesk AI

How to get and install your Zendesk web widget embed code

A practical guide to obtaining and implementing the Zendesk web widget embed code, covering both Classic and Messaging widget versions with platform-specific instructions.

Stevia PutriStevia PutriFeb 26, 2026
Banner image for Zendesk web widget launcher options: a complete guide for 2026
Zendesk AI

Zendesk web widget launcher options: a complete guide for 2026

Learn how to configure and customize Zendesk web widget launchers, from simple Admin Center settings to advanced custom implementations with code.

Stevia PutriStevia PutriFeb 26, 2026
Illustration showing the transition from legacy Zendesk Chat widget to the modern persistent Messaging interface
Zendesk

How to migrate from Zendesk Chat to Messaging: a step-by-step guide

A practical guide to migrating from Zendesk Chat (legacy) to Zendesk Messaging - what changes, what to export before you start, how to migrate bots and triggers, and what your agents need to know.

Riellvriany IndriawanRiellvriany IndriawanMay 15, 2026
Zendesk AI agent chat interface transferring a conversation to a human agent
Zendesk

How to set up Zendesk AI agent handoff

A step-by-step guide to configuring Zendesk AI agent handoff - from escalation rules and trigger conditions to routing and the human agent experience.

Alicia Kirana UtomoAlicia Kirana UtomoMay 15, 2026
Banner image for How to customize Zendesk web widget position and size
Zendesk AI

How to customize Zendesk web widget position and size

A complete guide to positioning and sizing your Zendesk web widget, covering all widget types with code examples and best practices.

Stevia PutriStevia PutriFeb 27, 2026
Banner image for How to set up and customize the Zendesk web widget offline form
Zendesk AI

How to set up and customize the Zendesk web widget offline form

A complete guide to setting up and customizing the Zendesk web widget offline form, including configuration steps, API customization, and best practices.

Stevia PutriStevia PutriFeb 26, 2026
Banner image for How to set up Zendesk widget to email: complete guide for 2026
Zendesk AI

How to set up Zendesk widget to email: complete guide for 2026

A practical guide to configuring the Zendesk web widget for email functionality, including contact forms, offline forms, and email deliverability best practices.

Stevia PutriStevia PutriMar 5, 2026
Banner image for How to set up Zendesk callback widget: A complete guide for 2026
Blog Writer AI

How to set up Zendesk callback widget: A complete guide for 2026

A step-by-step guide to setting up the Zendesk callback widget, from prerequisites to advanced customization options.

Stevia PutriStevia PutriFeb 19, 2026
Complete guide to Zendesk automations: setup and best practices
Zendesk

Complete guide to Zendesk automations: setup and best practices

A complete guide to Zendesk triggers, automations, and macros - what each does, how to set them up, and the pitfalls that trip up most teams.

Riellvriany IndriawanRiellvriany IndriawanJun 11, 2026

Ready to hire your AI teammate?

Set up in minutes. No credit card required.

Get started free