Drive to Reimagine

9 exclusive tips to writing the perfect chatbot script!

Engati Team
last edited on
October 25, 2023
10-11 mins

Table of contents

Automate your business at $5/day with Engati

Switch to Engati: Smarter choice for WhatsApp Campaigns 🚀
Exclusive tips to writing the perfect chatbot script!

In December 2018, sci-fi series Black Mirror released Bandersnatch. Much like the choose-your-adventures books we’ve grown up with, Bandersnatch was an interactive film where viewers make decisions for the main character, Stefan- who is designing his own interactive game. We start to see the framework of how to create a game in this genre. Starting from the pages of decision trees to the decision fatigue of having to come up with every alternative for each option.

Choose-your-own-adventure genres of media are an elementary, low-tech version of interactivity, long before today's complex open-world games were available. We now live in an environment where interactive interfaces are everywhere. Phones, laptops, smart watches, tablets, chatbots, and televisions are integral parts of our daily lives. Each decision we make, every channel we flip, every button we press, is a choice, and each choice needs to have an outcome, because dead-ends aren’t pleasant for anyone. 

What all types of interfaces have in common, is that they are used, in part or entirely, by humans. That’s why we call them User Interfaces, and with it came User eXperience, to focus on how their experience when using and designing an interface. 

The rise of the interfaces

Since these interfaces play an integral role in our everyday lives, it has to be easy to use. Imagine how frustrating it would be if one day, all of your applications stopped working- The television always reverting to “channel not found,” your voice assistant giving you 1,000 options before the one you wanted, and your phone shutting down every time it didn’t understand you. Wouldn’t that be the most frustrating day ever? 

Now, here’s the issue- there are many, many chatbots that continue to provide service like this. So, why aren’t you designing more easy-to-use interfaces? 

We need to remember that one of the most important ways that humans are taught to interact with the world is through conversations. And conversational UI is all about making information accessible.

Information drives technology and culture, and we can’t get enough of it. It’s the reason the internet age has so radically transformed us: for the first time the individual’s access to information is almost infinite. As a species, the primary questions no longer center around how to obtain and share information, but how to consume, prioritize, and contextualize it now that it’s at our fingertips.

The most natural way for us to transfer our information, our culture, is by talking with each other and asking questions. And this is what Conversational UI strives to replicate at its core. If done correctly, Conversational UI can do something really incredible. While most of us shy away from asking questions to others, Conversational UI takes that barrier away and allows anyone to ask without judgment.

With Conversational UI, we get the comfort of a humanized interaction without this fear. This is such a transformative experience for information because it breaks down that barrier in a way that is especially accessible.

These interfaces are so powerful, yet to this day, we still see them being underutilized. The truth is, most chatbots simply aren’t trained to handle even the simplest of queries. While it’s easy to put all the blame on your chatbot, your brand reputation ultimately takes a hit. But fear not! Unlike the company Tuckersoft in Bandersnatch, we’re here to guide you through the process of perfecting your chatbot script.

How to design a chatbot script?

It is often said that the dialogue elements used, with the dialogue flow, can make or break your chatbot.
- Medium article on chatbot script.

Remember, designing a chatbot script is a lot like writing a script for a choose-your-own-adventure story. The past is our greatest teacher, so take a step back, and think about what they did. 

For example, Stefan from Bandersnatch, even R. L. Stine, the author of Goosebumps, made great use of using decision trees, but what led to Stefan’s downfall was that he didn’t have a cohesive story or a goal in mind. 

Designing a conversational interface is a lot like writing a script for a choose-your-own adventure game, filled with the decision trees and that decision fatigue. So, let’s look at this step-by-step.


Step 1: Meet your characters

We meant it literally when we said, approach this like it’s a story. Before we set up our goals, we have to establish a few characters.

Think of your user as the protagonist of your story while the second character is your chatbot. Designing your user should be easy since you’ll have a history of previous interactions to refer to. Using this will help you define a persona for your protagonist. 

The real challenge is designing your chatbot’s character. The brand voice of your company should ideally be reflected in your chatbot’s character design. That’s when your sales, marketing, and support teams will come in handy. Use their insights to design your bot.


Step 2: Define goals

Now it’s time to dig deep into your analytics of your brand- Think about what your users would want to achieve after interacting with your chatbots

While you can’t control what your protagonist will say in each situation or their wants, you can always predict it. Ask yourself- What do your users expect from your bot? What do they want it to do? This can be as simple as just answering the most frequently asked questions or providing real-time recommendations while shopping. 

The types of questions will determine the sophistication of your chatbot. It’s easy to jump in on the technology hype cycle and use a chatbot that incorporates heavy NLP but sometimes that isn’t the need. 


Step 3: Basic must-haves

Remember, the dialogue of a good play both advances the plot and gives us a glimpse into the characters’ personalities. Likewise, your chatbot’s dialogue should both move users towards their goals and tell them about your brand. So let’s start writing.

  • Conversation startersYou only have one shot at making the first impression, so make your greeting as appealing as possible. And don’t forget to entice your users to write back.

At this stage, it can be a good idea to use buttons, quick replies, and carousels to illustrate different options users have for interacting with your chatbot.

  • Small talk fragmentsThey are great for simulating real conversations. Just keep the chatter to a minimum for utilitarian bots.

“How’re you doin’? Here’s a cat GIF to cheer you up.”

  • Objective-related fragmentsInteracting with a chatbot typically includes a number of questions that help you qualify the potential customer and make the conversion.

  • Conversation finishersAll you have to do after a user makes a conversion is to thank them for attention and remind them to come back if they ever need something.

Your last message is extremely important as it’s the first thing your users will see when they open the messenger. You can be specific, creative, or inciting, but never boring!

Write each fragment separately and then map them onto your chatbot conversation flows.

Strung together they’ll form countless dialogue paths.

Remember, users can only travel one path at a time. So make sure that each separate conversation has a good flow and makes perfect sense in and of itself.

9 Tips on How to Write a Perfect Chatbot Script


Introduce your chatbot

At the very beginning of the conversation, the chatbot must introduce itself to the user and list the services it can provide. The first message of your chatbot script may look like this one:

“Hi, Alex! My name is Unicorn chatbot. I can help you place an order, check the order status, and restore your password at the website.”

This way, your customers are aware that they’re interacting with a robot, and not a customer service representative. It will help you to avoid misunderstandings and improve overall customer satisfaction.


Provide guidelines

Once the chatbot has introduced itself, it needs to direct your customers to the next step. The bot should provide basic guidance to direct the conversation in the desired direction.

For example, here’s a snippet from a conversation with a travel chatbot assistant. It perfectly explains to the customer what to say to check for flight prices in December.

Travel Bot: Find the best flights. Hi! I’m Travel bot, your personal travel assistant. Want to check out some flights from Dubai to California? Just say something like “Flights from Dubai to California in December”  

The instructions are clear. If your customers want to book a flight from Paris to London, they will type a short message:

“Flights from Paris to Dubai in December”

Such a reply will allow the chatbot to keep the conversation going. The chatbot will process an incoming message fast and accurately.

Now imagine that the chatbot hasn’t provided any directions to the user. The chances are the user will write a message similar to this one:

“I would like to book a flight from Paris to Dubai. What are the cheapest options available for the end of the year?”

This message is wordy. Which means it’ll take chatbot more time to process the request and provide the answer. Besides, such wordiness may negatively affect the accuracy of the chatbot.

Yep. Clear guidelines are really important.


Suggest options

Another way to smooth the communication flow is to suggest the user with a couple of answers in your chatbot script.  

Here is how it works. You need to write a question along with a few relevant answers. The user will need to click a suitable answer instead of typing a message.

If you build your chatbot conversation flow this way, it will require less effort from your customer to interact with the chatbot. The conversation will become more ‘meaningful,’ and your customer will get a better experience.


Use conversational language

Do you want to make the most of your chatbot? Use conversational language – choose an active voice over passive voice. Make your customers feel like they’re talking not to a robot, but to their friends.

Here is an example of the use of passive voice:

“Your coupon code has been successfully activated”  

You can rewrite the sentence in the active voice:

“I’ve successfully activated your coupon code. You’re all set! Enjoy the discount!”  

By using conversational language, you engage your customers in conversations and make them feel more comfortable talking to the chatbot.  

For some people, chatbots are still a new thing. So it’s better to use an appropriate amount of chit-chat and an active voice to encourage interactions.


Add emotional appeal

Your chatbot should behave in the same way as your customer service representatives do. Your bot should be polite, friendly, and should express gratitude, empathy, compassion, and other feelings and emotions.

Imagine you are designing a script for an airline chatbot. And you crafting a reply to travelers who are complaining about the lost baggage. You have two choices:

You can write a standard, robot-like reply:

“Please, provide the reference number to file the complaint.”  

Or, you could write a more human-like response:

“Oh, no! I’m so sorry to hear that your bag hasn’t arrived on time. Let me help you fix this issue, so you can enjoy your trip to the fullest.”

Can you guess what will work better? The second choice. Travelers will be glad to get some empathy even though they know that they are talking to a robot, not a human.


Include the right level of personalization

Modern marketing is all about personalization. So, when you are writing a chatbot script, you should find a way to personalize your message.

The first thing you can do is to use a personalized greeting. If your customer has already provided you with their name (for instance, while filing a signup form), you can use it to your advantage.

Besides, you can personalize dialogue nodes using users’ date of birth, location, age, gender, and other personal information.  

Just make sure that you don’t cross that ‘creepy line.’  Try to be relevant and useful. Don’t overuse the personalization.  


Set the right tone of voice

Who your target audience is? What tone of voice do you use communicating with your customers on social media and via emails? You should keep your tone of voice consistent across all communication channels, and your chatbot is not an exception. Setting the right tone of readability is preferable for content optimization. Whenever the target audience lands on your chatbot the Tone of voice should be user friendly.

Let’s say your target audience is law students. Your tone of voice can be friendly and informal. Can you use internet slang, informal expressions, and emojis in your chatbot’s script? Definitely.

Now imagine that your target audience is qualified lawyers. Can you use the same tone of voice? No, you can’t. You need to make your chatbot’s messages sound more formal. You should get rid of emojis and informal words and add some legal words.


Proofread the text

Whichever chatbot scripting language you use, you can’t ignore grammar rules. You should proofread the messages and make sure that they are free from errors and typos.

Seriously. Don’t ignore the proofreading process. In a chat, every minor mistake will be visible. Make the text perfect in terms of grammar before display it to users.


Strive for simplicity

While trying to make your chatbot perfect, you might create too much content. So, once you build the main dialogue nodes, you need to simplify them. You should drop all the words and the chatbot phrases that don’t add meaning and rewrite the long sentences.

Keep your dialogue nodes short and sweet, and your chatbot will attract more users.

3x your revenue with Chatbots and Live Chat
Schedule a demo

Do’s and don'ts for chatbot scripts

Now that you know how to write a chatbot script, here are some Do's and Don'ts to keep in mind-


Do: Give Your Chatbot a Personality

“…Personality is the new user experience.”

That is, according to Ultan O’Broin from Chatbots Magazine.

Personality plays a huge role in engaging users. When a social messaging bot has an interesting personality, people want to stick around and continue chatting with the bot. When a customer support bot has a warm, inviting personality, they feel comfortable approaching it for assistance.

To help you create a well-written bot personality, answer these simple character development questions about your Chatbot:

  • Who might your brand be if it were a character? Would it be an animal or a human? How about a robot? Would it be male, female, or gender-neutral?
  • How might your brand’s character speak face-to-face with your customers? Would it be lively and positive? Helpful and warm? Straightforward and concise?
  • What attitude, tone, and style will resonate with your customers? Are your customers millennials, baby boomers, or both? How does your target demographic communicate, and how can you tap into that to make your bot relatable?
  • What is the primary function of your Chatbot? Is it to help customers with their issues? (If so, try a bot that is friendly but professional.) Is it to keep customers engaged? (If so, consider a bot that is lively and fun).

Don’t: Make Your Chatbot Too Cold – Or Too Hot

One of the reasons people like engaging with Chatbots is they’re light and fun. Cold or overly robotic Chatbots come off as too serious and transactional and don’t inspire continued use.

As human beings, we respond well to things that sound human, even if they’re not. By adding a kind, or mildly amusing air to your serious Chatbot, you will be able to prevent them from being too robotic.

While it pays to be friendly, don’t make your Chatbot too peppy, or you run the risk of making it obnoxious. You don’t want your Chatbot’s personality to outshine – or ruin – the service that you are providing.

Do: Use Buttons to Speed Conversations up

Buttons let users quickly choose an option instead of typing it out. This can come in handy for Chatbots – after all, it’s often faster and more convenient to engage with a single click rather than several typing clicks.

Buttons also are a great way to give customers options and show available bot offerings. They keep users on track, and within the realm of what the Chatbot knows.

We’ve found that when Chatbots include buttons in conjunction with quick replies, users spend more time interacting and send more messages.

Don’t: Forget Text

Buttons may be easier for some functions, however, don’t disregard text responses.

Text can be more engaging for customers who like to mess with bots and test what they’re capable of. It can also prove faster and easier for users who just want to tell your bot what they’re looking for, rather than click through a maze of buttons.

While bots that use text can be a bit more time consuming to develop (their decision trees will be longer!), they become more portable and can grow far more advanced than their button-using counterparts overtime.

Many effective bots use a combination of text and buttons to keep customers engaged, and successfully fulfil their functions. 

This keeps the conversation with the bot flowing smoothly, while still allowing the user to give personalized responses.

Do: Be Upfront About Limitations

It doesn’t matter how many things a Chatbot is designed to do: every bot has its limitations.

Whether your chatbot finds its limitations in conversation or in functionality, it’s just as important to tell your customers what your bot can’t do, as it is to explain what it can do. When designing your bot, take the time to plan for the unknown.

The best way to tell users what your Chatbot can’t do is by reinforcing what your Chatbot does well. 

Don’t: Let Your Chatbot’s Limitations Dictate its Quality

Often, external limitations aren’t as much of a barrier to Chatbot success as they may seem.

While you certainly want your Chatbot provider to offer a robust set of features, the biggest deciding factor in the quality of your Chatbot isn’t what bells and whistles are available at the time of design – it’s the quality of your copy and your decision tree.

As User Experience Designer Vaibhav Verma writes, “…when it comes to Chatbots, copy is the new design. This is the ultimate mantra for designing a magical Chatbot.”

The better your copy, the more engaging and helpful your Chatbot. This is unconditionally true, no matter what external limitations exist. The more paths you add to your Chatbot’s journey map, the more powerful it will be. And, the more information and similar questions you add, the better your Chatbot will be able to assist your customers.

Do: Break Up Information as Needed

There are lots of ways for your Chatbot to push useful and engaging material. Depending on your Chatbot’s purpose and design, your Chatbot could send images, links, GIFs and emojis to break up information, and make the conversation more colorful.

Have your Chatbot break up information by mimicking the flow of regular human messaging conversations. That means having your Chatbot send users multiple short messages, instead of one long one.

For customer service Chatbots, your bot can push links to helpful content and knowledge base articles, or can even automatically redirect users to their desired page.

Don’t: Send Huge Blocks of Text

Don’t send your Chatbot users large blocks of text; they are difficult to read and may frustrate, discourage, and/or overwhelm users.

Don’t: Assume Conversations Will Always Move Linearly (or Smoothly!)

Users may want to change the topic of the conversation, or ask a follow up question. They might use sentence fragments, abbreviations, misspellings and region-specific jargon while expressing themselves.

Chatbots can be prone to misunderstanding these shifts, as well as the subtleties, complexities, and colloquialisms of regular speech patterns. 

Don’t forget to account for multiple word choices, phrasings, and start options when creating your bot’s journey map, or you will end up with a frustratingly inflexible Chatbot.

Do: Prepare for interruptions and misunderstandings

Chatbots have to be designed to handle every possible misunderstanding in any step. That means that a specific error message needs to be set just in case a misunderstanding happens. That would help us to get your users back to the scope without having to restart. 

You also need to allow these users to change their minds, ask another question, or switch from a serious conversation to simply messing with your bot. Keep your journey mapping flexible; train your chatbot to deal with interruptions, rather than pushing users down a rigid decision tree.

Program your Chatbot to deal proactively with any ambiguities and misunderstandings. If your bot detects various keywords and is unsure of a response, have it clarify with your customer before offering them an answer. Related questions are a great way to suggest a possible next step and remedy misunderstandings. That way, if your Chatbot’s answer wasn’t satisfactory, your users will have several other questions to choose from that might be.

By responding to vague questions with multiple clickable solutions – and asking users to rephrase queries that the bot does not understand – you can manage to keep the conversation on track, and satisfy your users.

Misunderstanding-proofing your Chatbot is a tricky task, and will likely require several attempts. Be sure to look back over Chatbot data and response history to constantly create better fallback responses.

Don’t: Rush Chatbot Design

Some Chatbot software makes bots so easy to set up, you may find yourself wanting to rush through configuration to get it live already.

Before you rush through Chatbot design, think about the negative effects that an ill-equipped Chatbot can have on your user experience. For example, a rushed customer support Chatbot might result in reduced customer satisfaction, more customers calling in for support, and a growing number of users who will do anything to avoid using your Chatbot a second time.

Do: Edit your chatbot before, during, and after it’s live

Test your Chatbot internally before letting your customers have at it. This will help you work out any kinks before it reaches customers. By asking users within your company to test the Chatbot, you will be able to catch early on where conversation flow is breaking.

Once your Chatbot has gone live, review transcripts and continue editing it. Give customers the option to rate how helpful the bot was to help you learn what is working and what isn’t.

Ensure that you don’t have any loose ends, and that the branches of your decision tree work well together.

Don’t forget to test your Chatbot on mobile devices to make sure that it is ready to meet a mobile audience.

Can you create sales funnels using chatbot scripts?

The most important thing which you need to understand is that chatbots are built for effective filtration and not for closing sales for your business.

Your initial conversation can create an MQL for your business which can later be passed on to an agent to convert them into your customer. Integrating Live chat platforms with your chatbot can be effective in this process.


The Awareness Phase

The awareness stage consists of your launch message.

Here's a good chatbot example:

  • Hi there, can I guide you in the right direction/destination? (Display your options to choose from)
  • Are you looking for assistance in sales or support? (options for Sales or Support)
  • Won’t you love to have some savings on your monthly bills? (options with a Yes, No, I prefer paying more).

The Consideration Phase

Once you complete your first stage, the next task is to break down the conversations from the options chosen above. You now need to create an individual chat flow for all the available options. Try going deeper to solve your customer's problem.

You can include questions like:

  • Great! When are you planning on reviewing your existing package? (Options - Right now, next month, after 6 months).
  • That sounds perfect. I'll now get our agent into this conversation to help you better! (Let your agent handle it from here, they can probably convert your MQL into an SQL).
  • Amazing! Here's a link to get more information on the following topic (the link). If you need any additional support feel free to come back again.
  • I hope this helped! Is there anything else you want me to assist you with? (Add a Yes or NO option).

The Decision Phase

The last and final stage is the Decision phase. The last phase of the script can have 2 endings:

a. Either they would connect with your agent, OR

b. They would like to know more information before progressing ahead.


Creating a flow can help create an effective navigation channel. You can either have:

(i) A custom landing page with free downloads,  OR

(ii) Obtain leads and nurture them through the mail.


Here's the list of response you can add:

  • That's Amazing! Here's what I'd suggest... (Landing page/Download now/CTA, etc)
  • Perfect! Please help me with your email id so I can get in touch with you. (Your response once they submit their email address, could be - Thank you, we will connect with you over mail soon!)
  • Oops! Looks like all our agents are tied up at the moment. Would you like to wait or provide us with your email so that we can get in touch with you?

Wrapping up

If you want people to interact with your chatbot, you should write a script that makes sense and flows smoothly.

There is no magic wand that would help you to create a perfect chatbot script overnight. So, get ready to work hard. Analyze your target audience, define common questions and answers, and outline the basic conversation scenarios. Make your chatbot more human, and you will achieve success.

3x your revenue with Chatbots and Live Chat
Schedule a demo

Engati Team

At the forefront for digital customer experience, Engati helps you reimagine the customer journey through engagement-first solutions, spanning automation and live chat.

Close Icon
Request a Demo!
Get started on Engati with the help of a personalised demo.
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
*only for sharing demo link on WhatsApp
Thanks for the information.
We will be shortly getting in touch with you.
Oops! something went wrong!
For any query reach out to us on
Close Icon
Congratulations! Your demo is recorded.

Select an option on how Engati can help you.

I am looking for a conversational AI engagement solution for the web and other channels.

I would like for a conversational AI engagement solution for WhatsApp as the primary channel

I am an e-commerce store with Shopify. I am looking for a conversational AI engagement solution for my business

I am looking to partner with Engati to build conversational AI solutions for other businesses

Close Icon
You're a step away from building your Al chatbot

How many customers do you expect to engage in a month?

Less Than 2000


More than 5000

Close Icon
Thanks for the information.

We will be shortly getting in touch with you.

Close Icon

Contact Us

Please fill in your details and we will contact you shortly.

This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Thanks for the information.
We will be shortly getting in touch with you.
Oops! Looks like there is a problem.
Never mind, drop us a mail at