How to build a successful ChatBot

Photo of Alessandro Toscano, Solution Architect Written by Alessandro Toscano, Solution Architect,   Mar 27, 2019

Why chatbots?

It is all about visual appeal, fonts, colours and layout when we build web pages and mobile applications. However, when it comes to chatbots, the focus is different. The majority of chatbots run on Facebook messenger, WhatsApp, Alexa or other social platforms with the focus centred around the bot's personality and its tone of voice. In other words, it is all about your audience, and how to build your chatbot around their needs.

The first things you should consider is your customers and the most common scenarios of their interaction with your site. Ask yourself what real benefits your bot could provide and problems it could solve, and how your products and/or service fit into these scenarios. "5 Questions to Ask Yourself Before Building a Chatbot" article by Travis Nelson talks in details about the main questions you should answer before proceeding with the chatbot build.

Getting started

If your customer-facing website already has a webchat, this may be the perfect place to start collecting data on what your customer wants and, the kind of phrases they use to ask for it. If available, web-chat transcripts can be a great starting point!

The key is to start simple, focusing on a small set of cases for users to test. Your users' feedback and analytics will help you to evaluate the bot's effectiveness and see how it could be enhanced further. It is very important to repeat this process. The better the product can be adapted interactively, the more likely you are to get it right and keep it focused on your users' needs. By ongoing monitoring of users' interaction with the bot you will be able to grow your backlog of use cases, continuously improving along the way.


A quick and powerful tip to support your initial use cases is to bring your customers' Frequently Asked Questions (FAQs) into your chatbot. You probably already have FAQs on your customer website anyway, and most chatbot tools on the market make it easy to load them into your bot.

Gathering user requirements

One of the biggest challenges of building a chatbot is gathering user requirements. How do you go about it? Based on our experience the best way is to run a workshop/s with your business/end users. This typically starts with an entire day dedicated to business goals reviews, defining user personas, channels, user journeys. You should also establish which systems have the data required to support the dialogue. At the end of the session (s), your reward will be some great dialogue design - your first use case foundation. We have successfully run similar workshops for many of our customers and achieved excellent results. We would be happy to support you with planning and/or running these sessions, please get in touch with us at

 Chatbot - gathering requirements

Insights and Best practices

Here are some tips on best practices for designing a conversational Chatbot.

The majority of the chatbot solutions out on the market are Artificial intelligence (AI) powered. One point to consider is what common phrases to use for training your bot. When it comes to gathering user phrases coming onto your website, the more the better! One suggestion is to try and avoid using every single one during the training phase. We suggest using 80% for that and leaving around 20% for later testing.  It is also good practice to partition your data - if you have too many similar or overlapping phrases, you might end up confusing your bot - and that's the last thing you want!

When someone uses your bot, it should be clear that they are interacting with a machine, not a real person. That said, you should also build in a way to hand off the conversation to a human person, for those times a bot just can't answer what the user is asking or after the bot has collected initial information from the user.

You know when you find yourself waffling, and not really getting to the point? That's how you want your bot not to be. Here are some tips for making your chatbot the right level of chatty:

    • Try to limit text to 3 lines - more than that usually leads to tl;dr (Too long; didn't read)
    • Try to keep messages within 90 characters
    • The best thing is if you keep it under 63 characters
    • If your bot is sending multiple messages, they shouldn't add up to more than ~140 characters

Asking users too many questions is not always the best way for your bot to collect information, for example, submitting credit card or passport details requires users to enter specific information (and enter it precisely). Web forms rendered inside your bot would be a much better choice. The form's input fields with labels, options, choices, check boxes, data fields, and other UI elements will guide and help users to enter this type of information easier.

Finally, you want to decide which platform to make your bot available on. You may start with just one or make your bot more ubiquitous across many. Remember which platform you will choose depends on your audience! 

We’d love to hear your opinion on this post