Chatbot scripts: A step-by-step guide to more 'human' bots

May 7, 2020
12:00 am

Chatbot script writing is putting the right words in your chatbot’s mouth. With these scripts to draw from, bots can provide the answers to user questions. If scripts are written well, the chatbot can even hold an actual conversation.

The problem is, the scripts aren’t always conversational enough, meaning they feel stilted and unhelpful – especially if the bot doesn’t use Natural Language Understanding to figure out what the user means. 

In fact, research suggests that many of the challenges people identify with using chatbots are related to the conversational aspects of this tech. This includes “too many unhelpful responses” and “unnecessary pleasantries.”

study of chatbot challenges from helpshift 2018

There’s an art to producing chatbot scripts that are short, well-constructed, helpful, and minimize effort for human users to find the answers they need. In short, providing a positive user experience requires some thought.

A well-functioning bot is a strong asset

As a busy professional, you might wonder why you should spend time and effort optimizing chatbot scripts when so many other things need your attention. Surely, simple sentences would do? 

Well, research shows that there’s a lot of value in doing all you can to provide a good experience via chatbots. Consider, for example, that a positive experience with a chatbot or virtual assistant resulted in 73 percent of users sharing their experience with friends and family, helping the brand grow. Also, according to research, users expect chatbots to work in ways that address common frustrations with online services, thus streamlining their online experience.

So, making sure your chatbot speaks well and is helpful will have an impact on business success. 

Let’s take a look at how businesses can build chatbot scripts that are helpful to customers.

The key is conversational design

Conversational design is all about shaping interactions between humans and machines to resemble an actual conversation. It’s not just creating an exchange of questions and answers, it’s creating dialogues that could happen between humans, too.

This means, first and foremost, that chatbots and virtual assistants need to be trained to understand the requests they might receive. You need to appreciate user intent and how they’d ask for what they want (and think about multiple alternatives). 

Mitsuku bot example
Screenshot of the entertaining bot “Mitsuku” (source: AI Multiple

The other important part is to add personality to your script for a chatbot. “All agents are currently unavailable, please type your request in the field” sounds too robotic. “My human colleagues seem really busy right now, but they’ll be with you very soon. Meanwhile, can I help you with anything?” may sound more personable.

Usually, this is the job of a dedicated conversational designer with knowledge of both user experience and copywriting. But if you can’t get one right now, consider these next steps to apply conversational design yourself (keep in mind that some of the steps could overlap):

1. Understand the purpose

What will your chatbot be doing? Will it provide support to customers, help them place orders, or ensure they can navigate your website? Perhaps all of the above? It pays to be clear about your chatbot’s field of expertise. This will help you predict dialogues the chatbot might have with customers.

For this step, involve colleagues in customer-facing roles, like customer service agents, salespeople, customer support, and more. For example, ask them which questions are asked most often since these are the ones that can usually be handled by a chatbot script. If you have also developed buyer personas before, you have one more asset to personalize communication via your chatbot by understanding ho exactly you’re speaking to.

Here are a few ways a chatbot can help customers:

  • Pull a knowledge base article
  • Direct users to pricing or demo pages
  • Answer questions about the company and its products
  • Place and track an order for the customer
  • Help users retrieve information or credentials
  • Register updates in user profiles
  • Book interviews/demos/calls

Try to make these scenarios specific to use cases for your company. For example, if you have lots of people asking about a particular product feature, you should anticipate a scenario where the user asks the chatbot about it.

Consider this step as the outline building phase that answers the questions “what exactly do I need to write and for who?”

Discuss personality

During this initial phase, you can also start shaping your bot’s personality. What will be its tone? Will it be sympathetic or firm? How will it use humor? Think about the aspects of your chatbot’s attitude and behavior in relation to your brand and your bot’s purpose. 

You can also assign demographics and interests if you want your bot to be a completely separate entity instead of a pop-up on your website.

It might be worth studying the voice of other chatbots, especially ones in your industry.

2. Consider user sentiments for each situation

For each scenario, it’s worth jotting down how the user might feel. Consider the following situations and the corresponding feelings:

SituationFeelingUser is trying to retrieve their passwordFrustratedUser wants to order a new laptopExcitedUser is asking about software pricingCurious, interested

This step will help later when you’re crafting chatbot responses. If you expect the user to be frustrated, avoid being cheeky. Instead, reassure them and help them resolve the issue in a straightforward way. If you expect the user to be excited, or at least not frustrated, the chatbot’s responses can be more lighthearted to drive engagement.

Here’s a fun visual of the relationship between user sentiment and chatbot personality. It shows how conversations we love to have leave more room for chatbot personality as opposed to conversations we hate:

Sentiment vs bot personality diagram
Screenshot taken from Chatbots Magazine (

3. Flesh out the sequences

This is arguably the most arduous part: building out conversation flows (or dialogue trees) between users and chatbots. 

Think about the end goal of the user – for instance, booking a hotel room. Now, how would the user get there? They could start with asking for prices during the month of May, or ask about room availability first. Then, one user might continue with booking directly, while the other might request hotel reviews. Even easier scenarios like asking for FAQs may unfold differently among different users. You can think of this process like the 2018 Black Mirror film “Bandersnatch” or a “choose-your-own-adventure” book.

The most common user stories need to be accounted for. Start with the ‘trigger’ event: what question/request/button click will trigger a particular sequence and chatbot greeting? Then, continue building the outlines of the dialogues. For example, from “question about pricing”, you could go to “Book a demo” or “See feature list”.

Also, the bot's answers could differ depending on what has come before. This might result in complex diagrams, so try to start small. 

Acquire's chatbot workflow example
Acquire’s chatbot helps you build the workflows you need.

You can use software like, Google Drawings, and Microsoft Visio to help you build sequences and inform the chatbot script you want to write.

4. Brainstorm and determine user requests

It takes two to communicate. Anticipating what the user could say in specific situations is important to address their needs. Without knowing which dialogues to expect, you won’t be able to write an effective chatbot script. So take the flows you’ve collected above and flesh out the type of requests or remarks the chatbot might handle. In this step, you could discover more situations that may arise because of what the user says. For example:

SituationPossible remarkUser asking about your product’s pricingHow much does your product cost?User says the prices are too highThis is too expensive for me.User forgot their passwordI want to reset my password.User has a complaintI’m really pissed at you.

The key here is to also consider alternative ways of phrasing utterances. Different users may use different words. While you should think about the concept of the question, you should also think about the possible sentences. Conversational Intelligence Manager Maggie Lerch says in one of her blog posts:

“A Conversation Designer needs to break down the situations to find out what a user will want. The more precisely you describe the situation, the easier it is to write what the user would say at that moment. We also need to think of alternative phrases like “I want to get a coffee”, “Could you get me a coffee please?”, or “Do you have coffee?”.”

So, create your lists of situations-questions with alternative phrasing (you could use a spreadsheet to start). Also, consider abbreviations, slang or commonly misspelled words if possible.

5. Build specific chatbot scripts

First, pay attention to the chatbot’s greetings. First impressions count with bots, too, and you want to make sure you start off on the right foot with users. While building greetings, stay on brand and use friendliness to draw the user in. Same goes for goodbyes – leave the user on a positive note and with an invitation to come back. Note that your greetings shouldn’t trick the user into thinking the chatbot is a human. For example, be careful with greetings such as “I’m Julie, how can I help you?”

Then, you need to craft the responses to the questions you’ve identified looking at the flows and additional questions that have come up. Alternative questions will often have the same response, so the response should cover multiple phrasings. If that’s not possible, craft the individual responses for each of the alternatives.

Here are a few tips to consider along with chatbot script examples:

  • Speak directly to the user (and use their name, if possible). “How can I be of service?” is less personable than “How can I help you, Tom?”
  • Avoid passive voice unless necessary. “To retrieve a password, some questions need to be answered” is less impactful than “Please answer these two questions so you can retrieve your password.”
  • Match sentiment. If you expect a user to be frustrated, avoid answers like “You got it, pal! There’s nothing I’d rather do than to help you” (yes, we exaggerated for effect).
  • Keep it short and sweet. Avoid long-winded sentences and cut words that aren’t absolutely necessary. If you have to write more, break your sentences into separate back-to-back responses.
  • Experiment with GIFs and emojis. When appropriate, of course. Don’t use a smiley emoji when users say they might have been hacked.
  • Sound familiar. Don’t be afraid to occasionally use words people actually use when talking, like “umm” and “hmm”.
  • Be humble. If the bot doesn’t have the answer or doesn’t understand what’s being said, program it to take responsibility. For instance, it should say “I’m sorry, I’m not able to understand you” rather than “Your question is confusing.” This will help ensure the user won’t abandon their chat with the clueless bot. 
  • Run the chatbot script by someone else. Preferably a professional writer/editor, but any other set of eyes can be useful.

Another thing to look at is predefined inputs or “quick replies.” Bots will usually let you craft possible responses to present to users. So, instead of typing their own sentences, users can click on buttons and trigger specific sequences. Here’s an example from Acquire’s bot:

Acquire's chatbot quick replies function

This helps to minimize the risk of the bot not understanding the user and also keep flows simple. This is a good option for lead generation.

6. Analyze and refine

Your chatbot scripts will probably need to be updated depending on user questions. Check out analytics to see which questions were answered, which questions weren’t, leads generated, and more. Then, you can add new flows, alternative questions, or refine tone.

Often, there’s the option to enable the bot to learn on its own from interacting with users. This is artificial intelligence at work – but you still need to monitor the bot’s learning process.

Want to learn more about chatbots?

Get our complete guide to learn more about the nuts and bolts of chatbot technology, and how to implement successful chatbots.

Get the guide

Creating a chatbot script can be fun

This process may seem laborious, but it gives you freedom to play around with language and simulate conversations. Try to step into your customer’s shoes to determine what you’d like to hear in their place. Ensure your chatbot is personable and pleasant. 

And, another fun exercise would be to choose chatbot names. The name should be catchy and easy-to-remember. You could try a unisex human name (but remember what we advised above: your bot’s greetings shouldn't trick the user into thinking that an actual human is behind them). Or, you could try something more creative relevant to your bot’s functions. For example, if you want your bot to help users by pulling knowledge base articles, your bot’s name could be “Librarian Bot” or “WiseBot” (you can probably do better than us). Choose what works best for your brand and bot’s personality.

This will really help you and users connect with your robotic creation. In the end, users will be happy their questions are answered and you’ll get the satisfaction of seeing the bot work well.


Related Articles