How to build a chatbot that people actually want to use

Working in the world of User Experience (UX), I see a lot of companies that want to experiment with chatbots. Some want a chatbot that helps their clients with frequently asked questions, others want to help their clients finding the right product in an automated conversational way. Working in the world of UX, I also can get really frustrated about how these chatbots almost never meet user needs and have a horrible user experience. They often miscomprehend the user or say things that aren’t relevant.

Over the last year and a half, I (Wout) have worked on quite some chatbot projects. I noticed that most of the time it’s the same few things that cause the chatbot’s bad user experience. In this article I would like to share how you can prevent your chatbot to make these mistakes and how to create a chatbot that people actually want to use.

Artificial intelligence

Chatbots are quite new and most people don’t really know how they actually work. The first problem is the misconception about the intelligence of chatbots. Artificial intelligence is a vague term for most people. This causes the users to have false expectations from chatbots.

Chatbots need a lot of training. You create a question, you formulate an answer to this question and subsequently you train your bot with all different kind of ways you can ask this question that needs the exact same answer. After entering enough (a lot) training questions the chatbot will find similarities in the phrases. If you ask a question that isn’t in the training data, but resembles to a specific group of training questions, the bot will respond with the answer for that group. In short, chatbots can match questions to answers. It can not create an answer. So don’t get your hopes up too high.

Image for post
Image for post

So how do I make a chatbot that people actually want to use?

Know your user

Just like every physical and digital product, it’s important to know who will be using your product before you start designing it. You don’t design a car for babies, and if you would do so, the car would look and function completely different from a normal car. The same goes for chatbots or any other digital product.

Find out who your different target groups are, what their user needs are and how you can reach them. You’ll probably have multiple target groups with different needs, that can be reached on different channels. Use the information gathered in the past, talk with people from customer support or set up some interviews with real (potential) clients.

Once you know what your (potential) clients want, it’s time to match them to your business needs. Whether you want to augment customer retention, increase sales or just show off with your new innovative product. If there isn’t any value to the user, you’re dead on arrival.

Why a chatbot?

So you know the user needs of your potential clients, you know what you want to achieve as a business and you came up with an awesome solution to help both. Please don’t jump to conclusions and scream: “Eureka! Let’s build a chatbot!”

Chatbots have a lot of pro’s and con’s. Depending on your customer and business needs, building a chatbot might be a good or bad idea. The type of content plays a big role in the channel you should choose to interact with users. In a conversational flow it is much more difficult to present big text blocks and visuals in a good way.

I’ve worked on several projects where companies have put a lot of effort in researching their business needs, but decided to use a chatbot without doing any research about wether a chatbot would be the best channel to achieve their goal.

One project I’ve worked on, the client did exactly what they should have done. They had a very innovative idea that would help their clients find the right clothing, that fits them perfectly by letting them measure themselves. They wanted to go trough this process in a conversational way, but weren’t sure this was the best way to serve their clients. We created a prototype of the chatbot and prototyped, in parallel, an app that takes you through the exact same proces. The prototypes were tested with real users. Result: the chatbot was perceived as more personal and safe. This was important information since we were dealing with personal data. By putting a little more effort into this project our client was assured that a chatbot was the best way to help their clients trough the measuring proces.

Defining the scope

Ok, so let’s say you did your research, you decided to build a chatbot. What now?

I’ve seen companies contacting a company specialized in chatbots, explain their idea during a two hour meeting and expects the chatbot company to know what to do. I’ve seen technical companies put a price on projects while they had no clue what was necessary to build a good bot. So at the end the client wasn’t satisfied neither the user of the chatbot. What I’m trying to say is, you need a middle man.

You guessed it! I was that middle man more than once.

I’ve learned that the solution is quite simple. Two workshops with the client, a UX strategist and a technical analist.

In a first workshop the client shares lots of project and business details. The UX strategist tries to learn as much as possible about the purpose and feasibility of the demand. Between the first and second workshop our UX team makes a detailed user flow of how one of the conversation could go. During the second workshop the same three parties go over the user flows, tone of voice, the chatbot persona and decides on the scope of the project.

Image for post
Image for post

Making a visual representation of how the chatbot should function, helps the client and technical company to get on the same page.

Building, training and testing

From a non-technical point of view I would say, train the shit out of your chatbot. Then test again and then train it even more.

After spending quite some time working on a chatbot project you know exactly what questions you can ask a chatbot, how to ask them and which answer you will receive.

Let some other people, who never worked on the project try out your bot. You’ll learn that people will phrase their questions completely different than you do. More important, you wil learn that you chatbot will probably not be able to answer them correctly. You should absolutely use this info to train your chatbot.

Once you’re quite confident about your chatbot, you should set up some user tests. Let real users with real problems try out you chatbot. Again you will see that problems will pop up. Again you should absolutely use this information to improve your chatbot.

Last thing you should know

I did quite a few user testing session for different chatbots and conversational UI’s and most problems occurred when users expected something the chatbot couldn’t realize. Users asked questions that were completely out of scope, or they asked multiple questions at the same time. Here are some tips that help you avoid problems.

Manage expectations

Most problems occur because users expect things of the chatbot it can’t realize. They ask questions that are completely out of scope, multiple questions at the same time or some times they just want to mess around.

Be clear about the purpose of the chatbot. Inform people about what the chatbot can and can not do. It’s also important to make it clear to people that they are talking to a robot with a limited amount of capabilities. By doing this people won’t have false expectations about the chatbot.

Guide your user

Let your chatbot be in control of the conversation. Guide your user in the right direction. By doing this you avoid the user to say things the chatbot can not process. A good way to do this is to add buttons in the conversation. Wether the user clicks them or not, it immediately gives an indication of what the possible answers or questions are.

Image for post
Image for post

Use clear language and the right tone of voice

Hire a copywriter to make sure the content is comprehensible for your target group. If people don’t understand what you’re talking about they will probably leave unsatisfied. Make sure as well the tone of voice of your chatbot fits your communication strategy.

Keep the conversation going

You don’t want to leave your user at a dead end. Not even if he successfully finished the conversation. You might want people to visit your website or maybe learn more about another topic. Inform the user and add some buttons this way he can decide wether to take action or not. Be careful though because you do not want to annoy people.

Image for post
Image for post


If you want to deliver a product that adds real value to your users and business, don’t cut back on the research. Find out user needs, define business needs that match these user needs and start thinking about solutions.

Don’t focus on what you want to create, focus on what you are trying to achieve. In some situations a chatbot will be your best solutions, in others it won’t. So don’t decide on wether you are creating a chatbot before you know what you want to achieve.

If you decide a chatbot is the best solution. Make sure you test it over and over again. Let different people try it out and keep improving until you’re satisfied.


Monkeyshot is an Antwerp based User Experience Design company, balancing between the art & science of UX design.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store