July 20, 2026 · 7 min read

WordPress Live Chat Plugin: Install and Set Up in 10 Minutes

Install a WordPress live chat plugin in 10 minutes: plugin or code snippet, passing signed-in users to operators, WooCommerce tips and fixing caching issues.

A WordPress live chat plugin is the fastest way to put a chat button on every page of your site without touching theme files. The whole job takes about ten minutes: install the plugin, paste a key, check the front end. The details that trip people up come afterwards — caching, script optimization, and making sure operators know who they are talking to. This guide covers both install routes, what to do on WooCommerce stores, and how to confirm the widget really works for visitors, not just for you.

Plugin or code snippet: which route to pick

Every chat widget is a small script that has to load on each page. In WordPress you can add it in three ways:

  • The chat service's own plugin. You install it, paste your key in the settings, and it adds the script everywhere. A good plugin also does things a bare snippet can't, such as passing the signed-in user's details to the operator.
  • A code-snippet plugin such as WPCode (formerly "Insert Headers and Footers"). Works for any service and survives theme changes.
  • Editing the theme — footer.php or a function on the wp_footer hook in functions.php. It works, but updates can wipe your changes and a PHP typo can take the site down.

If the service offers a plugin, start there. The other two are fallbacks.

Installing the plugin and adding your key

Here is the process with ChatDeck's WordPress plugin. Most services follow a similar pattern.

  1. Create a ChatDeck workspace and copy your public widget key. It starts with pk_ and lives in Settings → Documentation.
  2. Download chatdeck-wordpress.zip from the WordPress integration page.
  3. In WordPress admin go to Plugins → Add New Plugin → Upload Plugin, choose the zip, click Install Now, then Activate.
  4. Open Settings → ChatDeck, paste the key and click Save Changes.
  5. Open your site in a new tab. The chat button should be in the corner.

A few things the plugin handles for you:

  • It loads the widget script asynchronously in the footer, so it doesn't hold up page rendering.
  • It validates the key. If what you pasted doesn't look like a pk_ key, it shows an error and keeps the previous value instead of printing broken code.
  • Until a key is saved, a notice in the admin reminds you the chat isn't switched on yet.

The plugin needs WordPress 5.8 or later and PHP 7.4 or later — any reasonably maintained site meets that.

Alternative: adding the snippet without a dedicated plugin

If you'd rather not add another plugin, use the embed code directly:

<script src="https://chatdeck.ru/widget.js" data-chatdeck-key="pk_YOUR_KEY" async></script>

It works the same in <head> or right before </body>.

With WPCode

  1. Install the free WPCode plugin.
  2. Go to Code Snippets → Header & Footer.
  3. Paste the code into the Footer field and save.

In the theme

Only edit theme files in a child theme, otherwise the next theme update removes your code. Back up functions.php before editing it: a syntax error there gives you a blank screen, and you'll have to fix it over FTP or your host's file manager.

Tip: the snippet route doesn't pass user details automatically. You'd need to add the identify call yourself, which is exactly what the plugin saves you from.

Passing logged-in users' name and email to operators

On a membership site, course platform or store with customer accounts, the operator's first question is usually "who is this?". Asking for an email in chat wastes time and annoys people who are already logged in.

The ChatDeck plugin solves this with one checkbox: "Show operators the name and email of signed-in users", which is on by default. When a logged-in user opens the page, the plugin calls the widget's identify method with:

  • a stable user ID (wp- plus the WordPress user ID),
  • the display name,
  • the account email,
  • the avatar, if WordPress has one.

The identify call is queued before the widget loads, so the visitor is recognized from their very first message. Because the ID is stable, the same person keeps one conversation across devices — they can start on a laptop and continue on their phone. Anonymous visitors chat as usual.

For developers, the plugin exposes a chatdeck_identify filter to add or change the data sent (for example, a membership level), and a chatdeck_widget_src filter to change the script URL.

Next to the identify data, operators also see the visitor's current page, device and browser, approximate location and local time — the context we cover in how to add live chat to a website.

Live chat for WooCommerce stores

WooCommerce runs on top of WordPress, so the same plugin works without extra setup. Customers who are logged into their store account are WordPress users, which means they are identified automatically.

A few habits make chat more useful on a store:

  • Watch the page, not just the message. If someone writes "does this come in blue?", the operator can see which product page they're on instead of asking.
  • Prioritize cart and checkout. A question from the checkout page is a sale at risk; answer it first.
  • Prepare answers for shipping, returns and payment. These make up a large share of store questions.
  • Use attachments. Customers can send a photo of a damaged item or a screenshot of an error (files up to 10 MB), which shortens back-and-forth.

We go deeper on store-specific playbooks in ecommerce live chat.

Caching and optimization plugins: avoiding conflicts

Most "I installed it but don't see the chat" problems on WordPress come from caching or JavaScript optimization.

  • Clear the page cache after installing (WP Rocket, W3 Total Cache, LiteSpeed Cache, your host's cache). Cached pages were generated before the plugin existed.
  • Check "delay JavaScript" settings. Some optimizers hold all scripts until the user scrolls or clicks. The chat will then appear late or only after interaction. If that bothers you, exclude widget.js (or chatdeck) from delay and combine options.
  • Don't cache pages for logged-in users. Most caching plugins skip logged-in users by default — keep it that way. The identify data is personal, and a cached page must never serve one user's name and email to another.
  • CDN caching. If you cache HTML at the CDN level, purge it after the change.

Checking that everything works

Run through this short checklist before you announce the chat to your team:

  1. Open the site in a private window (no admin session, no cached cookies). The button should appear.
  2. Send a test message and confirm it arrives in the operator inbox, including the page you sent it from.
  3. Log in as a regular test user and send another message. The operator should see that user's name and email.
  4. Check a phone. The widget runs in Shadow DOM, so your theme's CSS shouldn't affect it, but it's worth confirming the button doesn't cover your own sticky elements.
  5. Install the desktop or iOS app, or enable browser notifications, so new chats don't go unnoticed.

Frequently asked questions

Do I need a plugin to add live chat to WordPress?

No. You can paste the embed script with a code-snippet plugin or in a child theme. A dedicated plugin is simpler, validates your key, and can pass signed-in users' details to operators without extra code.

Will a live chat plugin slow down WordPress?

A well-built widget loads asynchronously, so it doesn't block your page from rendering. The ChatDeck script is loaded with async in the footer. As always, test with your own speed tool before and after.

Does it work with WooCommerce?

Yes. WooCommerce is a WordPress plugin, so the same chat plugin covers product, cart and checkout pages, and logged-in customers are identified automatically.

Why isn't the chat widget showing after I installed it?

Usually it's a cache: clear your caching plugin, host cache and CDN, then check in a private window. Also check that the key was saved (it starts with pk_) and that no optimization plugin is delaying or blocking the script.

Get started

ChatDeck gives you the plugin, an operator inbox with web, iOS and desktop apps, and an optional AI assistant that answers first and hands off to a person — with no per-operator fees. Create a free workspace, then follow the WordPress setup steps. To check the install and find your first chat, see the Install the chat on your site tutorial.

Try ChatDeck for free

Live chat with an AI assistant for your website: no per-agent fees, installs with one line of code or a ready-made plugin.

More from the blog