Bot Dialog

15.12.2016 |

Episode #3 of the course Building your own Facebook Messenger bot by Carylyne Chan


In the last lesson, we covered how to choose the right use case for your bot. Today, we’ll look at how to bring your bot to life with believable and well-managed dialog flows.

What your bot says is the defining character of your bot’s usefulness and a key driver for ongoing engagement with users. I can’t emphasize enough the importance of planning and writing your bot dialog!


Bot personality

You may decide that your bot should have an independent identity. It could be in the form of a mascot name (like Trello’s mascot husky Taco) or just a name like Siri that acts as the face for your bot. Otherwise, you could stick with just your product or business name.

Whichever option you choose, this will determine the personality that your bot will speak with. Will your “bot brand” be formal/casual, excitable/calm, insulting/polite, and so on? Come up with a list of 5-10 adjectives that describe your bot, and write a little backstory on your bot’s character.

Another choice you may make here is how many emojis you want to use in your dialog. Your bot’s personality (as it fits with your target users) may frame this decision, so think it through.


Plot main uses

Now, open any mindmapping software or just grab a plain ol’ pencil and paper. You will now draw out all the potential ways that your bot will branch out. At this stage, focus on the features.

1. Your welcome greeting should set expectations about what your bot does.
2. You may choose to ask users to subscribe to your bot updates. (Use with caution—you need to be a news, productivity, or personal tracking bot to do this.)
3. Draw out the main descriptions of your menu. Will it have three or four menu cards? What is the function of each card? What buttons will be on each card? As an example, you may have “Top stories” for the first card, and the button options could be “Read now” and “Subscribe.”
4. Map out what happens after the user selects these button functions. Be exhaustive and plan out all the actions for each “branch” of this decision tree.
5. Now, fill out the map by actually writing the text that will accompany each action that the user takes.

With this, you will have a first draft of your bot’s functionalities and dialog. You should now test this draft with potential users and other stakeholders and see if they give you suggestions for what other features they would like to see and what they feel about the text and tone you’ve written for the bot.



Edge cases

Next, plan for the edge cases that users could confound your bot with. For example, you can consider writing responses for when people swear at the bot (which happens a lot), fallback when the bot doesn’t know (“I’m sorry, could you rephrase that? I know I didn’t understand you, but I’ll be sure to learn how to respond next time.”), and other variations of questions that you usually get from users on other channels, like email or other live chat systems.

Tomorrow, we’ll learn about the role of machine learning and natural language processing in improving the performance of your bot dialog.

We have a great resource for exploring other bot’s dialog flows. You can look at samples of over 200 bots to see what their dialogs start off with, then use that as a starting reference. Find it here:


Share with friends