How to add free live chat to Docusaurus
A practical guide to installing the LastWorker live chat widget in your Docusaurus config file in under five minutes.
The short version
- →Live chat installs directly into the scripts array of docusaurus.config.js.
- →LastWorker chat and email support are free forever with no seat limits.
- →Older Docusaurus versions may require a client module for data attributes.
To add free live chat to Docusaurus, edit the scripts array in your docusaurus.config.js file. Add an entry with the script URL and set async to true. This places the widget on every page of your site. After you save the file and rebuild your project, the chat window will appear for all your website visitors immediately.
I have spent eighteen years running operations for service businesses. I have managed a two-location restaurant group and a regional dental practice with eleven front desks. In those years, I have hired dozens of receptionists. I have sat up at 2am writing phone scripts because I knew we were losing money every time the phone rang and no one answered. I have watched good leads die in a voicemail box because we were too busy to pick up.
When you build a documentation site with Docusaurus, you are trying to help people help themselves. That is smart. But I know from the shops I worked with that documentation is never enough. A customer will read your entire guide and still have one specific question. If they cannot ask it right then, they leave. Adding a chat widget is the safety net that catches those people before they go to a competitor.
How do I add the chat script to my config?
The installation is a three-step process. You do not need to install new packages or mess with the React components directly. Everything happens in your main configuration file.
First: open your docusaurus.config.js file in your code editor.
Second: look for the themeConfig object or the top level of the export. You are looking for a key named scripts. If it is not there, you can create it.
Third: add the script object. It should look like this:
<script src="https://lastworker.com/widget.js" data-agent-id="YOUR_AGENT_ID" async></script>
In the context of your configuration file, the entry in the scripts array will look like this:
scripts: [
{
src: 'https://lastworker.com/widget.js',
'data-agent-id': 'YOUR_AGENT_ID',
async: true,
},
],
Once you have added this, you must rebuild your site. If you are running the development server locally, it should refresh and show the widget in the bottom corner.
What is the gotcha I should look out for?
I have seen people get stuck here because they follow a guide that assumes they are on the latest version of everything. Software is rarely that clean.
The scripts array in Docusaurus is the standard way to load external tools. However, older versions of Docusaurus are picky about what they allow inside that array. They were designed to handle simple scripts, not necessarily scripts that require custom data attributes like data-agent-id.
If you add the code, rebuild, and the widget does not appear, check the source code of your live page. If you see the script tag but the data-agent-id attribute is missing, your version of Docusaurus is stripping it out.
If yours does not support these attributes, do not waste time trying to force the config file to work. Use a client module instead. A client module allows you to run a small piece of logic on the front end every time the page loads. This ensures the script is injected exactly as needed, with all its attributes intact.
Why is a free chat tool necessary for a docs site?
I have looked at twelve of the major support tools on the market today. The landscape for small businesses is difficult. Out of those twelve companies, four of them do not offer a free tier at all. If you want to use LiveChat, Front, Zendesk, or Intercom, you are paying a subscription from the first minute.
The other eight companies have free versions, but they are built with walls. Crisp, Chatwoot, Freshdesk, and HubSpot all limit their free plans to just two seats or two users. If you have a team of three people who want to help customers, someone is getting left out or you are forced into a paid plan. Zoho Desk limits their free version to three users and only allows email ticketing: no live chat at all.
I like things that are plain. LastWorker is different. Live chat and email support are free forever. There are no limits on conversations and no limits on teammates. You do not even have to put a credit card on file to get started. The shared inbox, your contacts list, the ticketing system, and the public help center are all included for free.
In my experience running dental offices, you cannot predict when you will need an extra person to jump into the inbox. Being told you have to pay $20 per month just to let a third person answer a question is a frustration you do not need. We don't charge per seat and we don't have a subscription.
How does the pricing work for other features?
I am not writing a brochure. I want to be honest about where the costs are. While the core tools are free, we charge for the things that actually cost money to run or save you significant time.
If you want to use AI to handle your chats or emails, it is off by default. Everything starts as a manual channel where a human answers. If you choose to turn AI on, it costs $0.04 only when it actually generates a reply. If it doesn't talk, you don't pay.
If you need a phone number, that is $1 per month. If the AI answers a phone call for you, it is $0.10 per minute, which includes the carrier costs. Outbound SMS is $0.03 per segment, and inbound SMS is free.
This model is built for the businesses I used to run. In a restaurant, some weeks are quiet and some are chaotic. You should not have to pay a high fixed cost during the quiet weeks just to keep your software running. You pay for what you use.
Does this include a knowledge base?
Yes. Even though you are using Docusaurus for your main documentation, having a free knowledge base and a public help center included with your chat tool is useful.
I have found that Docusaurus is great for technical manuals, but sometimes you need a simpler place for quick FAQs or internal notes for your staff. With LastWorker, the knowledge base is free. You can use it to store saved replies. These are canned responses that your team can use to answer common questions in one click.
When I was managing eleven front desks, the biggest drain on our time was answering the same four questions about insurance and parking. Having those answers ready in a saved reply meant my staff could get back to the patients in the room faster.
Should I turn the AI on immediately?
I recommend starting without it. When you first install the widget on your Docusaurus site, answer the chats yourself. Listen to what people are asking.
The shops I worked with always had a specific "vibe." You cannot automate that until you understand it. Watch the leads. Watch how people interact with your docs and where they get confused.
Once you have a handle on the common questions, then you can look at the AI. Since it is only $0.04 per reply, it is an affordable way to stay open twenty-four hours a day. But it should always be a choice, not a default.
Setting this up on Docusaurus takes five minutes. It gives your readers a way to reach out when the documentation isn't enough. In the world of service businesses, that availability is often the difference between a bounce and a customer.--- title: "How to add free live chat to Docusaurus" description: "A practical guide to installing the LastWorker live chat widget in your Docusaurus config file in under five minutes." date: "2026-07-25" author: "Jerry Holt" takeaways:
- "Live chat installs directly into the scripts array of docusaurus.config.js."
- "LastWorker chat and email support are free forever with no seat limits."
- "Older Docusaurus versions may require a client module for data attributes." faq:
- q: "Where do I put the live chat script in Docusaurus?" a: >- You place the script tag inside the scripts array within your docusaurus.config.js file. You must include the source URL and set the async property to true for it to load correctly across your site.
- q: "Is there a free live chat for Docusaurus with no seat limits?" a: >- Yes. LastWorker provides live chat, email support, and a shared inbox for free with no limit on the number of teammates or conversations. Most other tools limit free plans to two or three agents.
- q: "What if the chat widget does not show up after rebuilding?" a: >- Check if your version of Docusaurus supports arbitrary data attributes in the scripts array. If it does not, the data-agent-id will be stripped out. In this case, you should use a client module to load the script. related:
- free-live-chat-software
- email-ticketing-system-free
- how-to-set-up-a-help-center
To add free live chat to Docusaurus, edit the scripts array in your docusaurus.config.js file. Add an entry with the script URL and set async to true. This places the widget on every page of your site. After you save the file and rebuild your project, the chat window will appear for all your website visitors immediately.
I have spent eighteen years running operations for service businesses. I have managed a two-location restaurant group and a regional dental practice with eleven front desks. In those years, I have hired dozens of receptionists. I have sat up at 2am writing phone scripts because I knew we were losing money every time the phone rang and no one answered. I have watched good leads die in a voicemail box because we were too busy to pick up.
When you build a documentation site with Docusaurus, you are trying to help people help themselves. That is smart. But I know from the shops I worked with that documentation is never enough. A customer will read your entire guide and still have one specific question. If they cannot ask it right then, they leave. Adding a chat widget is the safety net that catches those people before they go to a competitor.
How do I add the chat script to my config?
The installation is a three-step process. You do not need to install new packages or mess with the React components directly. Everything happens in your main configuration file.
First: open your docusaurus.config.js file in your code editor.
Second: look for the themeConfig object or the top level of the export. You are looking for a key named scripts. If it is not there, you can create it.
Third: add the script object. It should look like this:
<script src="https://lastworker.com/widget.js" data-agent-id="YOUR_AGENT_ID" async></script>
In the context of your configuration file, the entry in the scripts array will look like this:
scripts: [
{
src: 'https://lastworker.com/widget.js',
'data-agent-id': 'YOUR_AGENT_ID',
async: true,
},
],
Once you have added this, you must rebuild your site. If you are running the development server locally, it should refresh and show the widget in the bottom corner.
What is the gotcha I should look out for?
I have seen people get stuck here because they follow a guide that assumes they are on the latest version of everything. Software is rarely that clean.
The scripts array in Docusaurus is the standard way to load external tools. However, older versions of Docusaurus are picky about what they allow inside that array. They were designed to handle simple scripts, not necessarily scripts that require custom data attributes like data-agent-id.
If you add the code, rebuild, and the widget does not appear, check the source code of your live page. If you see the script tag but the data-agent-id attribute is missing, your version of Docusaurus is stripping it out.
If yours does not support these attributes, do not waste time trying to force the config file to work. Use a client module instead. A client module allows you to run a small piece of logic on the front end every time the page loads. This ensures the script is injected exactly as needed, with all its attributes intact.
Why is a free chat tool necessary for a docs site?
I have looked at twelve of the major support tools on the market today. The landscape for small businesses is difficult. Out of those twelve companies, four of them do not offer a free tier at all. If you want to use LiveChat, Front, Zendesk, or Intercom, you are paying a subscription from the first minute.
The other eight companies have free versions, but they are built with walls. Crisp, Chatwoot, Freshdesk, and HubSpot all limit their free plans to just two seats or two users. If you have a team of three people who want to help customers, someone is getting left out or you are forced into a paid plan. Zoho Desk limits their free version to three users and only allows email ticketing: no live chat at all.
I like things that are plain. LastWorker is different. Live chat and email support are free forever. There are no limits on conversations and no limits on teammates. You do not even have to put a credit card on file to get started. The shared inbox, your contacts list, the ticketing system, and the public help center are all included for free.
In my experience running dental offices, you cannot predict when you will need an extra person to jump into the inbox. Being told you have to pay $20 per month just to let a third person answer a question is a frustration you do not need. We don't charge per seat and we don't have a subscription.
How does the pricing work for other features?
I am not writing a brochure. I want to be honest about where the costs are. While the core tools are free, we charge for the things that actually cost money to run or save you significant time.
If you want to use AI to handle your chats or emails, it is off by default. Everything starts as a manual channel where a human answers. If you choose to turn AI on, it costs $0.04 only when it actually generates a reply. If it doesn't talk, you don't pay.
If you need a phone number, that is $1 per month. If the AI answers a phone call for you, it is $0.10 per minute, which includes the carrier costs. Outbound SMS is $0.03 per segment, and inbound SMS is free.
This model is built for the businesses I used to run. In a restaurant, some weeks are quiet and some are chaotic. You should not have to pay a high fixed cost during the quiet weeks just to keep your software running. You pay for what you use.
Does this include a knowledge base?
Yes. Even though you are using Docusaurus for your main documentation, having a free knowledge base and a public help center included with your chat tool is useful.
I have found that Docusaurus is great for technical manuals, but sometimes you need a simpler place for quick FAQs or internal notes for your staff. With LastWorker, the knowledge base is free. You can use it to store saved replies. These are canned responses that your team can use to answer common questions in one click.
When I was managing eleven front desks, the biggest drain on our time was answering the same four questions about insurance and parking. Having those answers ready in a saved reply meant my staff could get back to the patients in the room faster.
Should I turn the AI on immediately?
I recommend starting without it. When you first install the widget on your Docusaurus site, answer the chats yourself. Listen to what people are asking.
The shops I worked with always had a specific "vibe." You cannot automate that until you understand it. Watch the leads. Watch how people interact with your docs and where they get confused.
Once you have a handle on the common questions, then you can look at the AI. Since it is only $0.04 per reply, it is an affordable way to stay open twenty-four hours a day. But it should always be a choice, not a default.
Setting this up on Docusaurus takes five minutes. It gives your readers a way to reach out when the documentation isn't enough. In the world of service businesses, that availability is often the difference between a bounce and a customer.
Frequently asked questions
Where do I put the live chat script in Docusaurus?
You place the script tag inside the scripts array within your docusaurus.config.js file. You must include the source URL and set the async property to true for it to load correctly across your site.
Is there a free live chat for Docusaurus with no seat limits?
Yes. LastWorker provides live chat, email support, and a shared inbox for free with no limit on the number of teammates or conversations. Most other tools limit free plans to two or three agents.
What if the chat widget does not show up after rebuilding?
Check if your version of Docusaurus supports arbitrary data attributes in the scripts array. If it does not, the data-agent-id will be stripped out. In this case, you should use a client module to load the script.
Jerry Holt has spent eighteen years running customer operations for service businesses, from a two-location restaurant group to a regional dental practice with eleven front desks. He has hired receptionists, written phone scripts at 2 a.m., and watched good leads die in a voicemail box. These days he writes about what actually moves the needle on the phones, in the inbox, and over chat, and where AI earns its place versus where it gets in the way.
Stop letting customers go to voicemail.
Set up in about fifteen minutes. Live chat and email are free forever, so there is no bill to weigh up before you try it.