Blog

Chatbot Design Canvas

(First published in Chatbot’s Life in Jun 2017)

 

What is a chatbot?

The answer to this question will depend on who you ask. My take on it is that, chatbots encompass a wide variety of conversational computer programs. And for the same reason it is difficult to figure out the parameters of a chatbot that we set out to build for a given problem. Are you nodding along? If yes, you might find the following tool very useful.

Chatbot Design Canvas

Chatbot Design Canvas is a tool that can used for high-level design of a chatbot. The canvas prods you to ask certain questions in a certain order with the aim of figuring out the necessary parameters even before you get into conversational design and development.

The canvas above is colour coded with green (for value proposition) where you start, red (all user related parameters), blue (for all chatbot design parameters) and yellow (for all chatbot development and deployment parameters).

Download PDF here.

Let’s get started!

Value Proposition

This is where you start. And this is the most important question you need to ask! What value does the chatbot provide to its users. What customer pain point is it going to address? Is it going to talk to them about weather? Share prices? Forex prices? Help them in online shopping? Or help them troubleshoot a product?

If you are working for a business client, you may be developing a chatbot to help ease their customer contact issues. The bot may be used to market a product range, sell them online, help resolve customer issues alongside the human team. Whatever it is, clearly understand the value the bot is providing to its users. You may want to consider all users: end-users as well as power users (admin, live agents, etc who work with the chatbot to serve the end-user).

Users

Who are the users exactly? Who are you building it for? In case of business bots, it could be employees and in case of consumer facing bots, it could be, well, consumers. Here is where you could drill it down a bit to detail. What is the age group of your users? Gender? Geographic location? And so on. What about the language they speak? The language aspect is important, because chatbots are designed to have conversations and therefore need to reflect the kind of language that users use to get adopted. You may also want to look critically at the user group in terms of their values and interests.

Again, do not forget the power users. These are people who will interact with the chatbot at a meta level seeking reports on performance, or configuring it and so on.

Devices

Having figured out who your users are, try to figure out the kind of devices they own or have access to. There are variety of devices that can be used to access chatbots: smartphones, tablets, laptops and desktops. Which of these devices do your users have or use the most?

While largely ignored, traditional devices like landline phones and simple feature phones can also be used to access chatbots. These devices do not depend on Internet data and therefore could be considered an option for users located remotely where data connections are faulty or unavailable. However, traditional devices have their limitations. Landline phone can only be used for voice based chatbots and feature phones can additionally interact using SMS (text messaging service).

Other emerging devices for automated chat are Amazon Echo and Google Home. If your chatbot is addressing problems in the user’s living room or in the kitchen perhaps, then these devices could be on your list.

Deployment Platforms

Chatbots can be deployed on a variety of platforms and devices. So it is important to understand which of these would be beneficial to your users.

Popular platforms for chatbots include Facebook Messenger, Skype, Slack, etc. There are more messaging platforms that have been opened up to chatbots. There are ones that popular in few regions only (for instance, Telegram is hugely popular in Russia but you won’t find a lot people using it in the UK). You may want to figure out which ones are the best for your target user group. These are messaging platforms that you can access via mobile apps, or websites.

It is also possible to build chatbots using more traditional platforms like text messaging (SMS), voice calls, email and social platforms like Twitter, which is not considered by many as a messaging platform. Traditional platforms are good for user groups that are not very tech savvy or live in regions where ICT penetration is fairly low.

You need to also think about the idea of sharing data with these platforms. Everything your user types into a Facebook Messenger chatbot is shared with Facebook. Are you happy with that? Think about it! If not, you can always build chatbots that can be plugged into a website.

Lastly, think about how different these platforms are in terms of what they offer the chatbot developer. Some like Facebook Messenger have great GUI elements like Cards and Carousels when others don’t. This could be important depending on what you want the chatbot to do.

If your chatbots are designed for devices like Amazon Echo or Google Home, then these devices come with their own platforms: Amazon Alexa and Google Assistant. Chatbots can be deployed as skills or actions on these platforms to augment the capabilities of assistants residing within these devices.

Modalities

What are the modalities of communication for the chatbot? Most simple chatbots use button based communication. User’s options are presented as an array of buttons and the user can communicate by pressing them. Going one step further, the chatbot could support natural language inputs. Users can type in textual utterances to request for information or respond to questions. Further ahead, the chatbot could support speech based interaction by processing incoming user speech and synthesising its own utterances. These options relate back to the choice of deployment platforms as well. Finally, you may also want to figure out if the bot needs to understand images (GIFs, emoticons, etc).

Personality

Does a chatbot need a personality? This is a question with many answers. Due to the nature of interaction (i.e. conversational), users invariably assign personalities to chatbots. So it is better for designers to figure out the chatbots personality before users do. So ask these questions: Do you want to give your chatbot a name? And may be a face? Is it going to be an extrovert? How formal or casual will its utterances be? Is it going to do small talk? Perhaps even tell jokes and limericks?

Conversational tasks

Having identified the value proposition, users and platforms, lets move on to identifying the specifics. What tasks do you envisage your chatbot doing? At this point, we need to break down the value statement into conversational topics and break topics further down into tasks. For instance, in a retail environment, the chatbot could provide value to end-users (i.e. consumers) by answering customer questions round the clock. Now the topics of conversation as such would be about delivery issues, returns and refunds, troubleshooting, etc.

By further dividing the topics into tasks in this regard, one may come with tasks such as getting delivery rates (e.g. a conversation where the chatbot can ask delivery address details and calculate delivery rates and options), returns checker (e.g. a conversation where the chatbot asks questions to check whether the product can be returned without any hassle or not), etc.

Backend tasks

A chatbot is not just for making conversations. It needs to carry out tasks in the background at the same time it is chatting with the user. For instance, a ticket booking chatbot, will need to access the tickets database to check for availability and book tickets as part of the conversation. For chatbots providing access to information such as weather, share prices, etc, the backend tasks may be simple. On the other hand, chatbots assisting online shopping may have to access the back-end Content Management Systems (CMS) like Magento, Shopify, etc to search, get product information, create carts, take payments and delivery information and to finally checkout. Likewise, chatbots providing marketing services should be able to talk to the CRM systems like SalesForce, HubSpot, etc. Such interactions can include a variety of tasks like creating a lead, recording an enquiry, etc. Other simple tasks would include sending information via email or SMS to the user.

The idea here is to create a list of back-end tasks and map them to conversation tasks to visualise how the conversation may need to be amended so that back-end systems are accommodated robustly.

Third party services

There are a lot of third party services that are available that already do what chatbots need to do in a modular fashion. These services can be harnessed in order to not reinvent the wheel every time we build a new chatbot.

One of the key features for a chatbot is its ability to understand natural language (Please note that not all chatbots are designed to process language). But this need not be built from the scratch. There are services like API.AI, LUIS, IBM Watson, WIT.AI, and LEX (Amazon) that can do this for you. All you need to do is to build a language model to the conversational tasks that your chatbot needs to handle. These services will translate a string of words into user intents and parameters with which your chatbot can handle the conversation. If you decide to build a voice bot, you will need to process users’ speech inputs. You could do this using Amazon LEX, Google Speech API, etc.

Development platform

Having figured out conversational tasks, backend tasks, third party libraries to use, it is time we move on to another important question: the development platform. There are several options here:

  1. Web based visual platforms: ChatfuelFlowXO, Motion.ai, etc are for non-coders who can build a chatbot quickly once the conversational flow has been figured. They are visual in the sense that implementing conversational flow is by playing around (create, drag, connect) with conversational blocks. These are best for simple bots that do not rely overly on processing natural language inputs from users. These platform are becoming more sophisticated allowing chatbot users to talk to liveagents, connect to third party information services through webhooks, etc. They also allow developer to seamlessly integrate the chatbot with one or many deployment platforms.
  2. NLU based platforms: Tools like API.AI not only process natural language utterances, but also allow developers to create full fledged chatbots. Thes tools are suited very much for NL based chatbots (read voice bots on Google Home). They allow developers to hook in their web apps as webhooks to allow the bot to do back end processing of users’ requests.
  3. Conversational toolkits: There are tools like Microsoft BotBuilder SDK which can be used to build chatbots quickly. The SDK provide a library of tools to create conversational flows with ready made conversational engine in Node.JS, .Net and REST. Other similar toolkits include BotKit, BotPress, etc.
  4. SDKs from deployment platforms: Every deployment platform we have discussed above have their own set of SDKs to help developers integrate their chatbots into the platforms. These SDKs specify message formats that need to be adhered to by the chatbot. In this case, you will be building the conversation engine and flow yourself and integrate it with platform SDK.

In case of options 3 and 4, you will also need to host the chatbot yourself in a cloud platforms like Heroku, Amazon AWS, MS Azure, etc.

Analytics

Analytics is for post development. Analytics helps understand how the chatbot is used, where it fails and what the users think. Analytics is about collecting data to infer answers to these and many other questions about how the chatbot is actually doing post deployment. Some development and deployment platforms have their own analytics suite: Chatfuel, Facebook, etc. On the other hand, there are several toolkits you could use: Dashboard.io,BotAnalyticsDialogAnalytics, etc. Very recently, Google has released its own analytics platform called Chatbase.

Analytics platforms provide us with insightful information on how the chatbots are being used. These include the total number of users, daily new users, user retention stats, popular inputs, inputs from users that the chatbot did not understand, etc. It also gives intelligence for our marketing efforts such as the source of the user: Facebook, Twitter, etc.

Marketing

What marketing techniques do you plan to use? This might seem like a question irrelevant to the development team. But it is not. Marketing approaches set the expectations on what a chatbot can and cannot do. Users very first interaction with the chatbot may be fuelled by those expectations. So it is necessary to understand how the chatbot will be marketed.

Facebook Adverts with a direct link to the chatbot via Send Message button is one way of getting users to start with in case of Facebook chatbots. Chatbot URLs can be marketed on other social media channels like Twitter, Instagram, etc. And it is always a good idea to tell users how to get started with the chatbot during marketing campaigns: say ‘hi’ to our chatbot, and in case of trouble say ‘help’.

These in turn should guide conversational tasks design as discussed above. You should think about whether the first time conversation with the chatbot is going to be different from subsequent ones for a user in order to facilitate onboarding.

So there you go! 12 questions that provide you a holistic bird’s eye view of the chatbot you are thinking to build.

Happy Chatbotting!

I am eager to hear your stories about how you used this canvas and other tools to identify the parameters of your new chatbot. Please feel free to comment.

Try my new book on Chatbots and Conversational User Interfaces Development!

Advertisements

The Paradox of Conversational Design

(First published on ChatbotsLife in July 2017)
Chatbots are evolving at a rapid pace. Their evolution is fuelled by the huge amount of interest in getting them to be used as buddies, assistants, companions, and what not (probably even adversaries) in various conversational settings. However as we embark on the development process, what stares us in our faces is the paradox of conversational design.

Conversational design is the art of designing templates for conversations that the chatbot is designed to have with its users. This is very much a part of the great user experience (UX) that we promise users along their journey with your organisation.

Conversation design includes templates for ideal conversations between the chatbot and its users. But that’s not enough, it needs to also tell the chatbot how to handle exceptions: what if the conversation derails due to some reason. Take a very simple future conversation between your chatbot and a user. Figure out all the points in the conversation where things can go in unexpected ways.

For instance, if the user seeks information (e.g. flights between a and b) and the database where this information is stored is not contactable. Another instance would be when the user’s request is ambiguous. Yet another would be, when the user misunderstands a chatbot response.

You are now beginning to realise the overwhelming number of non-ideal conversations that can happen between the chatbot and its users. How do we actually brainstorm all the possibilities at each point of the conversation? It may be technically possible to enumerate the paths that the chatbot might have to take (say due to database and other technical problems, etc) but to gauge the user’s possible responses at each step is definitely not a trivial task.

One way to address this problem would be to look at data of how users behaved and reacted in previous conversations and derive the best strategies from experience. However, does such data exist? Human-human conversations between users and live human operators/agents/advisors are not really well suited for this exercise as a human capability to understand the nuances of natural language conversation is much far ahead of chatbots.

To learn the rules of engagement from live human agents and to mimic it in chatbots is not easy. We may be ok to consider a subset of that conversation, but even to separate the simple mimic-able exchanges from the rest is a difficult task. To gather data, we therefore need to dumb down a human operator to the level of a chatbot and make them have conversations with users. Such data, by implication, cannot come from the past. Its in the future.

Another way of doing this would be to build a chatbot with the expertise we have got and have them chat with users. By doing this we can collect data and have a look at where the chatbot has failed to do a great job. This will lead to iterative improvements in the chatbot’s conversational capability. However, the risk is that you will disappoint a lot of early users with a chatbot with mediocre conversational strategies.

Therefore the paradox is:

We need data to learn great conversational strategies. But to generate such data we need to build a chatbot with great conversational strategies.

The question is, how we get past this paradox to create great conversational experiences to chatbot users?! Please do share your valuable thoughts below. 🙂

Try my new book on Chatbots and Conversational User Interfaces Development!

How to make your chatbots intelligent?

(First published in Chatbots Magazine in Oct 2016)

Chatbots are computer programs that can have a conversational interaction with human users. By default, a chatbot need not be intelligent. What it needs to be is useful and usable. For instance, a chatbot whose task is to collect information from users, will simply ask users questions and provide them an easy touch and swipe style response mechanism using buttons and carousels. While it does the task it is designed to perform, it cannot be counted as an intelligent chatbot.

But this is not to say that Chatbots need not be intelligent at all. As the task carried out by the chatbot becomes more complex, the need for it to be intelligent increases. It is intelligence that makes a complex conversation easy and effortless. Here are three dimensions that you could pay attention to if you want your chatbot to be an intelligent one.

1. Perception

Perception is the part where the chatbot gets to know what the user wants. On platforms like Facebook Messenger, chatbots can present users with a set of buttons to get their input. This is an easy and robust approach to getting user inputs. However, this approach lacks the fluidity of human conversation. For instance, imagine a user searching for comedy shows and he is being asked to enter the date information. He is given a list and is asked to pick one. However, he would probably like say “any Wednesday in the next three weeks”. A chatbot that can understand this will be perceived as more intelligent than one that cannot.

Another example and a source of user frustration is when the user wants to say “is it available in yellow?” when offered the other options like “red” and “blue”. While the chatbot has made it clear that the product is not available in yellow by not giving him/her an option, the user might still ask the question with an expectation of getting a favourable response (e.g. the product is currently out of stock and will be available in yellow in the near future).

Red or blue?

In order to keep the design complexity low, you could try to do this in two steps.

Step 1: Keep it local. Get the meaning of the user’s utterance that are in response to the chatbot’s question and ignore proactive user utterances.This reduces the number of responses users might have in a given context and thereby reduce design and programming effort.

Step 2: Once your chatbot can sense natural language locally in response to questions, try sensing NL utterances of the user when he/she is proactive and takes the initiative. There are a number of toolkits that you can use to add NL capability to your chatbot such as API.aiIBM WatsonWit.ai, etc.

Intelligent perception also involves understanding other forms of input like emoticons, emojis, gifs and images. Intelligent chatbot must make sense of the user’s intentions based on images and respond appropriately.

//ws-eu.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&OneJS=1&Operation=GetAdHtml&MarketPlace=GB&source=ac&ref=tf_til&ad_type=product_link&tracking_id=srinivasancj-21&marketplace=amazon&region=GB&placement=1788294661&asins=1788294661&linkId=16df5aa1336afa3092f038530525d1d0&show_border=true&link_opens_in_new_window=true&price_color=333333&title_color=0066c0&bg_color=ffffff

2. Learning

Another trait of intelligence that your chatbot can have is learning. Does your chatbot learn? Does it learn to improve its performance over time? Individual modules of your chatbot such as NL understanding and user modelling modules can learn to perform better over time using machine learning (ML) algorithms in tandem with human supervisors. A number of ML techniques are available: supervised, unsupervised, and reinforcement learning. Each of these can be realised using a variety of algorithms. For tasks like classifying user intents from user utterances, supervised learning can be used. For finding clusters of users based on their conversational behaviours, unsupervised clustering algorithms can be used. And for learning efficient and optimal conversation behaviours (i.e. what should the bot say now?), reinforcement learning algorithms can be used.

There are many ways to say the same thing (i.e. user intent). Let us assume that your chatbot recognises N different user intents. Each intent can be expressed in a number of ways. However, the initial version of a chatbot may not include all of them. And therefore it will fail to understand the user’s utterance even though it is capable of responding to the user intent expressed by the utterance. Such instances can be logged, annotated and fed into a ML module. By iterating over missed expressions using machine learning, your chatbot can learn to understand users better over time.

However, one crucial thing that you need to remember is that machine learning algorithms learn from data and experience that is made available to them. And therefore quality of such data and experience is very important. It would be a good idea to first collect enough data using a system that is hand crafted and then use machine learning algorithms to improve its performance. Some toolkits that you can use to perform ML tasks are Weka, Google’s TensorFlow.

3. Planning

The third dimension to intelligent behaviour is planning. Planning is an internal task done by chatbot to decide how to carry out the task the user has requested. For simple tasks like user surveys, there is not a lot of planning required. The bot needs to move on from one question to the next until it is all over. However, if the bot is supposed to to carry out a complex task then it needs to have the capability of finding the sequence of actions that will lead to goal set by the user. Such a sequence of actions is called a plan. These plans would also include conversational actions such as asking, informing, acknowledging, etc.

Currently, tasks are decomposed by developers themselves and ready-made plans are fed to chatbots. However if a chatbot is to multitask, then it should be able to come up with it own plans. This would save chatbot designers and developers the efforts to map every step in the potential conversational flow between users and chatbots.

To put this in perspective, a chatbot with planning capabilities will be able to come up with a sequence of actions to achieve the goal set by a user. So, if the user is asking to know about the status of a delayed delivery, the chatbot (working for a retail business) would be able to figure out which database or API to query. Once it has figured out where the information is, it will then figure out if it has all the required parameters to make such a query. It will question the user to get the missing parameters, query the database and return the information about the delayed delivery. More importantly, it will replan its action sequence if the user does not behave as it expected.

If a chatbot can figure out the steps leading to the goal by itself, it will simplify the development process greatly. Developers may then be able to focus on what the chatbot needs to do than how to do it, because it can figure it out for itself. This very problem has been the focus of a strand of AI research called AI Planning. There aren’t any easy to use AI planning toolkit that is available (as far as I know). However, many AI planning algorithms are available (e.g. STRIPS, GraphPlan). Until now, very little has been explored about the use of AI planning to dynamically generate with conversational plans but, in my opinion, it holds so much promise for the future of intelligent chatbots.

To conclude, using natural language understanding, machine learning and AI planning algorithms, chatbots can be made more intelligent than they already are. This is not to say that all chatbots need to be intelligent. But as chatbots gear up to face more users and more user-centric tasks, making them more intelligent to be able to handle both the tasks and the natural conversations with users is not going to be optional.

Try my new book on Chatbots and Conversational User Interfaces Development!

Users’ guide to Chatbotics!

There are at least four questions that consumers should learn to ask about chatbots. They should also have a fair idea of what to expect in response to those questions. And this precisely is the purpose of this article.

(First posted in Apr 2017 on Chatbots Journal)

Well, its been an year since Mark Zukerberg famously announced the coming of chatbots on Facebook! One year hence, chatbots are still not commonplace. In the year 2009, the phrase ‘there is an app for that’ caught on and next year, ‘App’ was voted the word of the year. How long do we have to wait until the same happens for ‘chatbot’?

There are dozens of articles writing Chatbots off already. I think, we are probably over-reacting. We need to give the tech some more time to mature. With more consumers interacting with chatbots, designers and developers are working hard to improve the technology. This will eventually result in chatbots that consumers will find easy and interesting to use.

Parallely though, there is a huge need to educate consumers about what chatbots actually are. Why? Because most criticisms are due to the mismatch between consumer expectation on chatbots and what was eventually delivered to them.

At the fundamental level, Chatbots are computer programs that have a conversational style of interaction. But they do have many other features that are not common to all chatbots. Some do learn to become better overtime. Some do understand natural language. But not everyone of them do. Such discrepancies in description cause mismatched expectations which then goes on to cause frustration in consumers who start to use chatbots.

There are at least four questions that consumers should learn to ask about chatbots. They should also have a fair idea of what to expect in response to those questions. And this precisely is the purpose of this article.

1. Where do I find your chatbot?

When a brand introduces its new chatbot to you, you need to know where to find it. What does that even mean? Imagine I told you, I have built an app. What would you say? You’d ask me in return if it is available on Android or AppStore. Wouldn’t you? You have a very good idea of where to find apps. Don’t you? But where do you find chatbots?

Most chatbots reside on a messaging platform. Unline apps, chatbots need not be downloaded. There may be exceptions where a chatbot is embedded within an app, which means you need to download the app in order to talk to the chatbot. Another exception would be that it is embedded in a website, so you could access it on the website using a web browser.

Where is the chatbot?

Messaging platforms are platforms such as Facebook Messenger, Whatsapp, Skype, etc that allow us to chat with our friends and family. Many messaging platforms now host chatbots. So if your chatbot is available on one of them, say Facebook Messenger, you could open the FB Messenger app on your mobile phone and search for it. And when you find the chatbot you are looking for, click on it and say ‘hi’. This is how you get started.

Messaging apps on smartphones (many host chatbots)

FB Messenger is one of the popular platforms for chatbots. Other platforms where you can find them are Skype, Telegram, Kik, WeChat, Slack, etc. Most of these platforms can be accessed using their apps or websites. For instance, FB Messenger is accessible via mobile apps (Android, iOS, etc) as well as its own dedicated website. So, once you have the app on your phone or visit the website, you can access all the chatbots that are available on the platform.

Voice chatbots are also becoming popular. These are available on platforms like Amazon Echo and Google Home. On these platforms, chatbots become skills. 🙂 For instance, Uber’s chatbot (or skill) on Amazon Echo can be accessed by saying, “Alexa ask Uber for a ride”. What happens here is your first invoke Alexa, the assistant residing within Echo and then activate the skill by saying ‘ask Uber’ and finally the natural language command for the skill (‘for a ride’). But to use a skill, you need to enable the required skill on Alexa. You can do this on the Alexa app or by visiting the Alexa skills store.

2. How do I interact with the chatbot?

Once you know where to find them, you need to know how to interact with them. Some chatbots are designed to understand natural language, and others use plain old buttons. Some chatbots use both. In some chatbots, you can type in natural language text and get nothing but ‘Sorry I did not understand’ in return for even the simplest of phrases like ‘hi’, ‘yes’, ‘thanks’, etc. This is because they are simply not designed to deal with natural language. Knowing how to interact with a chatbot can reduce frustration.

Use buttons when they are available. Buttons are used to prime the user with available choices and facilitate seamless navigation through the conversation. The conversational capability of such chatbots may be limited. In most cases, your response must be made using buttons only. For some responses, like when asked for your name or address, you could type in text.

Many platforms still do not allow for button based responses. In such platforms, you will be expected to interact with the chatbot using text messages. Some of them offer a way to do it in a controlled fashion (e.g. numbered options) whereas others allow for free text input.

YourMD chatbot interacts using numbered options

While typing in free text, keep your text message simple and easy to understand. Use fewer words. Simple sentences. Common place words.

Hi Poncho bot responding to text input

Another interesting side question to ask is if the chabot will understand GIF, emojis and images. We do use emojis, emoticons, images, memes, GIFs and so on to express our emotions in a funny way when we chat with our friends and family. Can we still use them with a chatbot? Will the chatbot understand those messages? Even when the chatbot uses GIFs and other media types itself to express its emotions, it may not be able to understand them when they go the other way around. Beware!!

HiPoncho trying to figure out a GIF I sent!

3. What can the chatbot do?

Once you know where to find them, you need to know what they can do and cannot do. Chatbot is a computer program designed and developed for a specific purpose. As long as you understand the purpose of the chatbot and keep your conversation within that boundary, you could get a great experience!! Knowing what a chatbot is designed to do is important as it allows you to progress beyond the welcome message.

For instance, both Dominos and PizzaHut, have chatbots on FB Messenger to take food orders from customers. As long as you let the bots take the lead and order food, all is good. Although this is not what you would want, this is the current state of chatbots. Chatbots that can deal with clarifications, side chatter, smart conversation, etc are yet to come.

Unlike apps, chatbots do not have the visual elements to make their capabilities explicit. A well designed chatbot would introduce its capabilities in its welcome message so as to set the right expectations. And probably get you started with some buttons in the welcome message.

If the chatbot does not welcome you with a message, you could try starting the conversation with a ‘hi’ or ‘hello’ message. Most chatbots are designed to handle these greeting phrases and in return, they will introduce themselves and their purpose.

Dominos Pizza Bot responding to ‘hi’

Type ‘help’ if you need help. Most bots respond to request for help when you are stuck.

Dinner Ideas chatbot responding to ‘help’

4. Does it have a persona?

Finally, does the chatbot have a persona? By persona, I mean, having a name, a visual identity, personality traits and possibly a back story as well. Such chatbots could be entertaining to talk to as you could ask stuff like its name, age, gender, its favourite food, movie, etc. It would be able to answer some these questions with an interesting answer or two. Other chatbots that mean serious business, will stick to what their primary tasks are and will not really respond well when you ask them for a joke or a limerick.

Well, thats it guys! Four questions that you need answers to get started with any chatbot. Why don’t you have a go at the following chatbots and figure out answers to the above questions. 🙂

Well, thats it guys! Four questions that you need answers to get started with any chatbot. Why don’t you have a go at the following chatbots and figure out answers to the above questions. 🙂

DinnerIdeasBot

HiPoncho

TrumpChat

Swelly

Hipmunk

Please do share comments on your experience with chatbots below. 🙂

Try my new book on Chatbots and Conversational User Interfaces Development!

10 reasons why your business needs Chatbots

(First published in Sep 2016 on Chatbots Magazine.)

 

Chatbots are making news everyday. Businesses across various sectors are introducing chatbots for their customers to interact with them. Some the latest ones include TMY.GRL from Tommy Hilfiger, Hey Xero by Xero, and Coach by Just Eat. And yes, there are several already and there are several more to come.

Are you still wondering if your business needs a chatbot? Here are 10 reasons why your business should consider deploying a chatbot.

1. You are an international business.

Are you an international business with customers all over the globe? Well then, you surely are looking for a customer contact solution that is 24/7. Well guess what! Chatbots can work 24/7, 7 days a week, 365 days a year.

2. You want to scale.

Chatbots, being automated solutions, allows your business to handle more customers than before. If your existing customer contact solution was powered entirely by human agents, then it would limit your business to handle only a limited number of customers because live agents cannot handle more than 2 to 3 simultaneous web chats. However, by employing chatbot solutions that complements human agents, your business can scale up its operations to new markets without having to worry about multiplying incoming calls to be handled. So, if you are looking to scale, think about chatbots.

3. Your customers have questions about your business policies.

Do you receive a large volume of calls from loyal and potential customers asking questions about your business policies such as deliveries, returns, loyalty schemes, nearest stores for collection, operational hours, etc? Do your customer contact agents have to answer same repeated questions day in and day out? Although answering such questions are important to your business, your agents are going to feel bored when overwhelmed by such tasks. If you want to give them more meaningful tasks to do, you first need to take the task of answering repeated questions away from them. Chatbots fit in nicely to resolve this problem. By acting as the first point of contact, chatbots can screen calls from customers and only pass them on to human agents when necessary or requested.

4. Your customers may need help finding the right product or service.

Often times, your customers may require help figuring out the right product that fits their needs and constraints. This happens when they are buying something expensive, for the first time and the product domain is not his/her cup of tea. Imagine you have taken an interest in photography and you want to upgrade your camera from a point-and-shoot to an SLR. If you visit webstore selling cameras, you could get easily overwhelmed by the number of choices you get. You will now be looking for a sales assistant to ask for recommendation if it were a brick and mortar store. However, you are in a webstore! Chatbots can fill in this gap of providing knowledgeable assistance to shoppers at online stores helping them figure out the right products and services. A LivePerson survey states that 83% of online shoppers need support during shopping.

5. Your products/services are hard to understand.

Your products, services or business model may be complex to understand for many customers, especially first-timers. Chatbots can be used to simplify them. Chatbots can break down the jargon and help potential customers understand the benefits of your products/services in a conversational interaction adapted towards their needs, goals, constraints and preferences. Also, instead of giving customers small print user manuals, you can give them interactive chatbots that can make the onboarding experience easier. Another instance is, if you are a startup with a new and innovative business model, it could be confusing to many potential customers. Chatbots can explain it to them step by step and also answer any clarification questions that they might have.

6. Your target market is the millennials.

Millennials like chat channels more than any other customer contact channels. It is because of their love to chat and text. They do it all the time with their friends. This is one of the reasons why live chat (or web chat) has become a popular customer contact solution over the recent years. According to a survey by Software Advice, millennials prefer live chat over phone to contact a business. But wait! Millennials also like to self-serve. They don’t like waiting to be served. Another research by Aspect, a customer services company, suggests that 69% of millennials would like to solve customer contact issues by themselves without having to talk to anyone in customer service. These two millennial needs are satisfied by chatbots, for they are an automated self-service solution available on chat channels.

7. You want to keep your customers engaged with your brand.

Digital marketers are recommending businesses to keep their customers engaged with the brand. The more you engage your customer the more business they give you. It has been shown that companies actively engaging customers on social media platforms have increased customer spend by 20% to 40%. While social media channels allow for putting marketing material out there for consumers to view, chatbots can spice it up by making the engagement more interactive.

You may want to sell a new product or get reviews for an existing product. Whatever the conversation you want to have, you can dispatch a chatbot to do the conversation for you. If you are selling a financial product, send a bot to talk to a potential customer to see if he/she needs and q

ualifies for the product. The bot can ask the necessary questions, convince the user and generate a lead for you.

8. You are looking for a new engaging way to serve your customers.

Your primary channel of delivery of services or product may be online. Your customers may already be looking for products, placing orders, downloading material, etc from your website or via your mobile app. Would they be interested in a chatbot? Would a chatbot be able to provide your customers a better experience?

Chatbots better than apps and websites in unique ways. Chatbots live on chat platforms like Facebook Messenger and therefore need not be downloaded and installed like apps. And they aren’t as data intensive as websites are. And unlike apps and websites, chatbots are highly interactive, presenting adapted information to users.

However, it is not a good idea to replace every app and website with chatbots. But when a business has a step-by-step process (i.e. a structured conversation) to interact with users, that makes a strong case for chatbots. For instance, a website offering image search would ask a few questions to users before starting a search and more questions later to filter the results. Finally, once the images are selected, users are asked for payment information. Such a step-by-step process can be handled efficiently by a chatbot.

9. You need an efficient workplace.

Chatbots are not just for customer conversations. They can be used internally as well. Every successful business is powered by an efficient team behind the scenes. Having your employees do mundane and repetitive tasks tires them and at worst contributes to attrition. Make your workplace efficient by employing internal chatbots on platforms like Slack to help employees out with answers to questions they might have about your business processes. Automate parts of their work that are tedious, repetitive and boring. This will take away boring tasks from your employee leaving them with interesting and challenging tasks.

10. You are a leader.

Finally, you need to be thinking of chatbots if you are an industry leader and would like to be an early adopter of a customer contact technology with huge potential. In a few years down the line, chatbots will become the digital faces of your brand. And they will be your mascots engaging your customers in every phase of the business process.

In summary, Chatbots are not just for customer service. They can be used for other tasks as well such as marketing, sales and even internal tasks such as assisting employees do their reports. Chatbot is an idea whose time has come. An year ago, chatbots existed only on websites, but now many platforms have opened up for chatbots including Facebook Messenger, Slack, Skype, Telegram, etc. And many businesses have started experimenting with this new and exciting channel. For businesses wanting to expand its horizons and talk to its customers over new channels like messaging platforms, chatbots are the way to go forward.

Try my new book on Chatbots and Conversational User Interfaces Development!

How are chatbots different from other customer contact solutions?

You have no business without customers. Building customer loyalty is of paramount importance. Businesses try hard and invest a lot of money to deliver superior customer experience whenever and wherever they come in contact with the business’s brand as a means to improve customer loyalty. Customer engages with a business in many ways — when they look for information, when they want to carry out a transaction, when they use a recently purchased product or when they want to review a recent experience. These interactions can happen over a number of channels: face to face, phone, email, website, mobile app and web chat.

So why do we need to engage them at yet another channel? Will engaging them on messenger services via chatbots do any better? Chatbots can deliver best practices of business-customer interaction that other channels currently offer at a fraction of the costs. Chatbots can carry out a number of conversational tasks in business-customer interaction including:

  1. Product search and recommendations
  2. Appointment bookings
  3. Ordering food and services
  4. Customer surveys
  5. Product support (in place of a user manual)
  6. Handling inbound marketing calls

This brings us to the key question: what can chatbots do that other channels cannot? Chatbots takes the best of both worlds approach and brings together some of the best features of human powered channels such as face to face, phone chat and web chat and combines them with self-service channels like websites and mobile apps besides being 24×7 and a low-cost solution.

Some of the features that chatbots offer can be classified into two types.

1. Conversational features

Whatever the task be, transactional, information search or technical support, chatbots can turn them into a conversation. For instance, instead of providing the user with a search form, chatbots ask a few questions in a conversational manner allowing the user flexibility to ask clarification questions, if needed.

Chatbots can let the user move between topics. Usually when searching to buy a product, consumers leave the search midway to find out about delivery information. Such things can be naturally handled in a bot conversation. This stop users to leave midway to look for their answers before they can resume their tasks.

Search can be made flexible by use of colloquial reference to entities such as dates or times instead of formal references.

Search can be revised by the user piece by piece after initial results have been presented.

In addition, users can mention a range of acceptable options instead of just one entity. For instance, instead of searching for flights several times for a range of dates, user can simply tell the bot, “look for flights between 10th and 20th Sep”. And if the user is flexible about destination city, he/she could just say, for instance, “anywhere in Southern Europe” and not search for each destination separately.

Bots can be proactive and send messages unasked. Bots need not just answer questions and carry out instructions but can act proactively sending appropriate messages to the user.

2. Intelligent interaction

While the ability to speak and understand natural language does not automatically make a bot intelligent, many users assume they do. Therefore a bot should be able to carry out tasks it has been designed for in an intelligent manner taking advantage of the flexibility offered by its conversational nature.

For instance, the bot can ask for more or less search parameter values depending on the database hits. If there are too many hits, the bot could ask a few more filtering questions instead of presenting hundreds of matching products. And if the database does not have any hits, the bot can make recommendations based on similarities.

Bots should be able to remember user’s preferences and use them in future searches. This can be useful to personalise the conversation to the user. For instance, in food ordering, the menu can be redesigned dynamically to suit the user, showing user’s favorites first.

Chatbots can predict depending on the conversational context, what users may want next. If it is not certain what the user might want, it can always ask the user as part of the conversation.

While the above are not inherent features of just chatbots, we believe that chatbots are the best channel for delivering intelligent conversational interaction. Such interactions can make customer tasks easy and effortless.

So to answer the question, Chatbots have the potential to provide businesses with a low-cost intelligent conversational interface to interact with their new and loyal customers. But, chatbot technology is still evolving. Many features listed here are still on their way. And as the technology evolves, it will start engaging new generation of customers who are chat and tech savvy. While live chat is voted to be the best human-powered customer service channel on one hand, Facebook messenger boasts 900 million active users on the other hand. Chatbots bring the two together: a chat-based self-service customer engagement solution on messaging platforms. Brands and businesses, therefore, need to get their chatbot strategy ready to start engaging their customers to bolster customer loyalty using this new and exciting channel.

Try my new book on Chatbots and Conversational User Interfaces Development!