Add Live Chat to Nuxt
Install free live chat on your Nuxt site by adding the script to your config file and setting the body property to true.
The short version
- →Place the widget script in nuxt.config.ts within the app.head.script array.
- →Set the body property to true so the script loads after the DOM exists.
- →LastWorker live chat and email support are free forever with no seat limits.
- →AI features are off by default and only charge a small fee when used.
To add live chat to Nuxt, open your nuxt.config.ts file and add the widget script to the app.head.script array. You must include your specific data-agent-id and set the body property to true. This ensures the widget loads after the DOM is ready, giving you a free, unlimited chat tool without any per-seat fees or monthly subscriptions.
How do I install the live chat widget?
I have spent years setting up software for dental practices and restaurants. I know you want this done in minutes so you can get back to your actual work. In a Nuxt environment, you do not want to manually paste scripts into every page component. You handle it at the configuration level.
First, open your nuxt.config.ts file in your root directory. This is where your global settings live.
Second, locate the app object. Inside that, you will find the head object, which contains a script array. You need to add an entry for the LastWorker widget here.
Third, add the script object. It needs the source URL, your agent ID, the async attribute, and a specific property to handle how Nuxt renders HTML.
The code should look like this in your configuration file:
export default defineNuxtConfig({
app: {
head: {
script: [
{
src: 'https://lastworker.com/widget.js',
'data-agent-id': 'YOUR_AGENT_ID',
async: true,
body: true
}
]
}
}
})
Once you save this file, restart your development server. The widget will appear on your site. If you are using a production build, you will need to redeploy for the changes to take effect.
Why is the body property necessary?
This is the part most guides leave out. I have sat in front of a monitor at midnight wondering why a script works on a flat HTML site but fails in a modern framework. Nuxt is a powerful tool, but it is picky about when it runs JavaScript.
By default, Nuxt wants to put scripts in the head of the document. If the LastWorker script runs while the browser is still building the page, it might look for a place to attach itself and find nothing. The script runs, sees no DOM, and quits.
When you set body: true, you tell Nuxt to place that script tag at the very bottom of the body. This guarantees the rest of the page is already there when the widget wakes up. It prevents the white screen or the "missing widget" bug that causes so many support tickets.
How does the pricing actually work?
I have been the person signing the checks for service businesses. I hate "free" plans that are actually just demos. In the market right now, four of the twelve major chat tools offer no free tier at all. This includes companies like Intercom, Zendesk, Front, and LiveChat. They want money before you even see a single message from a customer.
Of the eight tools that do have a free tier, most of them are designed to make you upgrade almost immediately. Crisp and Chatwoot both limit you to just two seats. HubSpot and Freshdesk do the same. If you have a small team of three or four people, you are already priced out of "free" before you start.
LastWorker does it differently. Live chat and email support are free forever. This includes unlimited conversations and unlimited teammates. You do not need to provide a credit card to get started. The shared inbox, contacts, tickets, and knowledge base are all part of that free package.
We charge for usage, not for people. If you want a phone number, it is $1 per month. If you want the AI to answer a chat or email for you, it is $0.04 per reply. If you want the AI to pick up a phone call, it is $0.01 per minute. If you do not use those features, you do not pay for them.
Why should I avoid per-seat software?
I remember managing a dental practice with eleven front desks. Every time we hired a new receptionist or an intern, I had to do the math on what our software bill would become. When you pay $20 or $25 per seat, which is common for tools like Help Scout or Front, your software costs grow as your business grows. That is a penalty for success.
In my experience, service businesses have high turnover. You might have someone helping with chat for three weeks before they move on. If you are paying for seats, you spend your life managing licenses and deactivating accounts. It is a waste of time.
Because LastWorker has no per-seat fee, you can add everyone. Your bookkeeper, your night manager, and your weekend staff can all have their own logins. You do not have to share passwords or play the "who is logged in right now" game.
I have watched good leads die in a voicemail box because the one person with access to the system was at lunch. Giving everyone access solves that.
Is the AI going to mess with my customers?
No. This is a common fear for business owners. I have seen AI tools hallucinate and tell customers things that are flat-out wrong. At LastWorker, the AI is OFF by default.
When you install the widget on your Nuxt site, it is a manual tool. A human has to read the message and a human has to type the answer. Nothing is generated automatically unless you choose to turn that on.
If you do decide to use the AI, it only costs $0.04 when it actually generates a response. This allows you to scale up during busy hours without hiring more staff, but you keep total control over the experience.
What happens after the installation?
Once the widget is live on your Nuxt site, you should test it immediately. Open your site in an incognito window. Send a test message. Check your LastWorker shared inbox to see if it arrived.
I used to write phone scripts at 2am because I was worried about how my staff sounded to customers. Live chat is the same. Once the plumbing is connected, you need to think about the words. You now have a direct line from your website to your team.
You can set up your public help center and knowledge base for free. This helps customers find their own answers before they even start a chat. Since these features are included in the free tier, it is worth the hour it takes to fill them out.
Can I use my own phone number?
If you decide you want to move beyond chat, you can add a phone number for $1 a month. This is useful for service businesses that need to handle calls but cannot stay by the phone all day.
Inbound SMS messages are free. Outbound SMS costs $0.03 per segment. This is useful for sending quick updates to customers who started a conversation on your website but had to leave. You can continue the chat via text without losing the lead.
I have seen businesses spend hundreds of dollars a month on answering services that just take messages. Using a tool like this allows you to handle those interactions yourself, or let the AI take the call for ten cents a minute.
How do I know this is the right tool for me?
I am not here to sell you a brochure. You should look at the numbers. Only one tool in our comparison table, Tawk.to, offers a truly unlimited free tier similar to ours, but they put a "powered by" badge on your site unless you pay to remove it.
If you are a developer using Nuxt, you probably value clean code and simple deployments. Adding a single script object to your config file is as clean as it gets. You get a professional support system without the baggage of a monthly subscription that grows every time you hire a new employee.
I have watched too many service businesses struggle with software that is too expensive or too limited. This setup gives you the same tools the big players use, but it stays out of your way and respects your budget. Get the script into your nuxt.config.ts file, set body: true, and start talking to your customers.
Frequently asked questions
Where do I put the live chat script in Nuxt?
You add the script to the nuxt.config.ts file under the app.head.script configuration. This ensures the widget is available across all pages of your Nuxt application.
Why is the chat widget not showing up on my Nuxt site?
Nuxt often places scripts in the head by default. If the widget runs before the DOM is ready, it will fail. You must set body: true in your script configuration.
Is there a limit on how many agents can use the chat?
No. Unlike many competitors that limit you to two or three seats on a free plan, LastWorker allows unlimited teammates and conversations for free.
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.