Skip to content
GPLWP Guides

How to add live chat support to a WordPress site

Social Time About 30 minutes 6 steps Updated 1 Nov 2026

SOCIAL
The short answer

WordPress does not include a live chat system, so you need a chat service or plugin. The manual route adds a provider's JavaScript widget, while a plugin is easier if you also need offline messages, tickets and chat history.

The route
  1. 01Choose your support setup
  2. 02Configure agents and availability
  3. 03Install the chat widget
  4. 04Set display and privacy rules
  5. 05Test as a real visitor
  6. 06Choose a broader support desk

What you need

  • Administrator access to WordPress
  • A live chat service account or chat plugin
  • A support email address and agent availability schedule
  • A backup or staging copy of the site

Choose your support setup

Decide whether you need simple visitor-to-agent chat or a wider support desk. A basic chat service is enough if you only need real-time conversations. Add offline messages, ticketing and chat history if visitors may contact you outside business hours.

WordPress supplies the website and the scripts that load on it, but it does not provide the live agent system by itself. You therefore need a third-party chat service or a plugin with its own chat interface and storage.

Configure agents and availability

Create the support agents who will answer chats, then set their names, profile images and working hours. Add an away message and an offline form so visitors can leave their email address and question when nobody is available.

Keep the first greeting short and say when a reply is normally expected. Do not promise instant replies unless someone is actually watching the queue.

Install the chat widget

The simplest route is to install the provider's WordPress plugin, activate it, and paste in the account ID, site key or connection details requested by its setup screen. The exact field names vary between providers.

Manual route: copy the provider's official JavaScript snippet and add it with a reputable snippets or header-and-footer tool, or load it from a small custom plugin. For a custom implementation, WordPress recommends loading front-end JavaScript through wp_enqueue_scripts; scripts printed near the closing body tag depend on the theme calling wp_footer.

The manual route is fine for a small site with one widget, but you must maintain the snippet, protect it from being removed during a theme change, and troubleshoot provider, consent and caching issues yourself.

Set display and privacy rules

Choose where the bubble appears and whether it loads on all pages or only on key pages such as contact, pricing, product and checkout pages. Check mobile placement so the bubble does not cover menus, add-to-cart buttons or cookie controls.

If the service sets cookies, records visitor details or sends data to another company, update your privacy notice and consent setup as required for your audience. Use the provider's privacy and data-processing documentation rather than guessing what the widget stores.

Test as a real visitor

Open the site in a private browser window while logged out, visit the pages where the widget should appear, start a chat and reply from the agent dashboard. Test desktop and mobile widths, the online state, the offline form, email notifications and the hand-off between agents.

If the widget appears for administrators but not for visitors, purge page, browser, CDN and hosting caches and check the provider's display rules. Caching and JavaScript optimisation plugins are recurring causes of chat widgets failing to load, particularly when their scripts are minified, delayed or excluded incorrectly.

Choose a broader support desk

If you want live chat alongside offline messages, ticketing and searchable chat history, consider Chat. It is aimed at sites that need more than a floating chat bubble and includes chat history, mobile-responsive display, analytics and integrations with CRM systems.

Configure and test the widget before directing customers to it. The chat tool should support your existing response process, not become another inbox that nobody checks.

The fast route

Let Chat do it

Combines live chat, offline messages, ticketing, and chat history for sites that need a broader support desk.

Get Chat

Sources

  1. developer.wordpress.org /reference/functions/wp_enqueue_script/?utm_source=openai
  2. wordpress.org /support/topic/chat-box-no-appearing-under-certain-pages-and…

Questions

Can I add live chat without a WordPress plugin?
Yes, you can add live chat without a WordPress plugin by inserting the chat provider's JavaScript widget through a snippets tool, a header-and-footer tool or a custom plugin. This works for a basic installation, but you must maintain the code and handle conflicts, consent and caching yourself. WordPress recommends enqueueing front-end scripts through its script-loading system.
Does WordPress have live chat built in?
No, WordPress does not include a live agent chat system in its core features. You need a chat service or plugin to provide the visitor widget, agent dashboard, message delivery and conversation storage. WordPress only hosts the site and loads the code that connects visitors to that system.
Why is my live chat widget not showing?
A missing widget is usually caused by an inactive connection, page display rules, cached HTML, JavaScript optimisation, consent blocking or a plugin or theme conflict. Check the public site while logged out, purge every relevant cache, inspect the browser console, and temporarily disable optimisation or conflicting plugins to isolate the cause.
Should live chat appear on every WordPress page?
Not always. Showing chat site-wide gives visitors a consistent support option, but limiting it to contact, pricing, product and checkout pages can reduce distractions and agent workload. Use your chat tool's display rules, then check that important pages and mobile layouts are not accidentally excluded.
Can live chat collect messages when nobody is online?
Yes, if the service or plugin supports offline messages. Configure an away state, ask for the visitor's email address, explain when a reply will arrive, and test the notification email before launch. Without an offline form or ticket connection, visitors may see an unavailable widget but have no reliable way to contact you.