The importance of UX when designing chatbots / voice user interfaces
When designing for a conversational interface, it is important to remember you’re still dealing with a user interface, just not a visual one. Conversational interfaces, whether chatbots or voice systems, are like any other platform we perform research on and design for.
It all comes down to understanding the intended audience – their needs, behaviours, anxieties, blockers and motivators – so that design and communications can be optimised, on whichever platform you interact with your customers.
Applying UX guidelines
1. When to design a chatbot or voice user interface
People make conscious compromises when deciding to use a conversational interface over traditional interfaces. For example:
- they need answers quickly – I was in a rush meeting a friend and needed to find out where to park, so I didn’t have time to browse a website for information, and instead grabbed my phone and asked, “OK Google, where can I park near Lussmans in Hertford?”
- they need to keep their eyes on something else – when I’m playing with my toddler I often remember an errand I need to run: “Ok Google, set reminder for 8am to post present”
- they have their hands full – I might want to make a mental note of something whilst driving, or often when I’m cooking at home, I’ll want to set the timer without getting floury hands on my phone: “OK google, set timer for 12 minutes”
- they want quick technical help or guidance – a colleague of mine used a bot when deciding on a new mobile phone handset and contract: “they helped me understand my options better and it was a super quick and pleasant experience as the person at the other end made me feel like I had friend telling me what to do and how to go about doing it. It was easier to use this service as I often find tech specifications complicated to understand”
Quick but useful actions that require familiar input, such as basic user information, locations, times, and dates lend themselves well to conversational interfaces. For example, looking up answers, doing quick calculations, logging information – anything that avoids you pulling out your phone or finding a piece of paper. It is important to identify a true need for a chatbot or voice user interface, otherwise bots will bomb.
2. Creating a Persona for your bot
We instinctively apply personality to digital speech, whether spoken or text, thereby forming a mental image of the speaker. For example, my SatNav is called Jim, because he sounds exactly like Jim Robinson from Neighbours (yep, child of the 80s here!)
The right persona will reflect your unique brand identity and personality, and importantly it will inform conversations – voice, tone, choice of words, syntax and structure.
When figuring out your conversational interface’s personality, consider the following:
- Who are you designing for? Do your users require more of a companion or an assistant? What would the user want to discuss with it? Ensure the persona represents someone your users would want to interact with.
Customer research is key to creating a bot persona, as highlighted in Google’s design guidelines:
“Many people feel foolish or awkward interacting with devices that don’t seem to share their level of conversational experience. And because of the intimate, personal nature of human language, we generally won’t use a conversational UI that offers no clear advantage over other modes of communication. UI design should be tailored to a person’s mental model of the assistant (or any other character taking on the manufactured role in the conversation). User research will lead the way to understanding that model. So we need to design for people, and let the devices follow”.
- Does the persona reflect your brand identity? You can start off by marking where your interface should be on a personality spectrum, e.g.
- Josh Bocanegra, the creator of many celebrity bots, sums up the key to creating a great persona as:
“First and foremost, you have to respect the relationship each celebrity has with their fans. You have to really understand why fans love that particular celebrity before you can design a truly great experience in the bot.I think of making great bots as making great art. Every choice of word used in bot matters. The amount of time the bot spends typing to the user matters…I suppose when it comes to creating a persona, it’s fair to say that I’m obsessed with accuracy and pay very close attention to detail. I always joke about the time I spent 2 hours debating if I should add a period at the end of each sentence or not.”
- Consistency is crucial. Maintaining the persona throughout the conversation ensures users experience a smooth dialog from what they perceive to be a single personality.
- Content plays a role in informing tone of voice. For example, a news reader bot may want to take on a serious tone.
3. Designing the conversation
How do you build a user experience that’s modeled after natural human conversation?
Conversational rules, or conversational maxims, should be considered.
i.e. people should be:
- only as informative as is required, so you don’t end up with overly chatty bots;
- relevant, as users want to do what they want to do, not what you want them to do;
- clear, jargon free and with information organised cleanly to ensure the IA (if applicable) is intuitive.
Conversation flow needs to be logical
- Start off by creating high level “happy path” conversation scripts.
- Begin conversations with an open-ended question in order to identify the user’s needs, then lead the user down one of your dialog paths, e.g.
- Hello, how can I help you today? [broad open-ended question]
- I’m having a problem with my phone
- Oh dear, what seems to be the problem?
- I can’t get on the internet
- [narrow down to identify problem] Let’s see if I can help. Is this about the Samsung Galaxy S7 Edge that you have with us?
- OK, let’s check your settings – is Flight Mode turned on?[start troubleshooting]
- I don’t know
- Now worries. Swipe downwards from the top of the screen…
- Next consider additional paths users might take to come to the same ending as the “happy path”. This might be a variation of the happy path, where the user gives all the information upfront, such as:
- Hello, how can I help you today?
- I can’t get on the internet on my Samsung galaxy. Can you talk me through the settings?
- Sure! Can I confirm this is about the Galaxy S7 Edge that you have with us?
- Take turns – remember that a good conversation partner gives the right cues
- Give users enough context to respond when you yield a return
- Ask a question or prompt that turns the conversation over to them
- Avoid making ambiguous statements and then waiting for a response
- Don’t keep speaking after answering a question.
Error recovery is required for when the user goes off topic
Varied user responses are opportunities for more natural interactions.
- Prevent errors by ensuring the system supports variations of typical responses. Have a large base of natural language utterances behind it.
- For example, don’t just accept “yes”, but also “yeah”, “sure”, “it does”, “of course”, “yep”, “definitely”, “it sure does”.
- For chatbots, support written acronyms, e.g. “IDK” and misspellings.
- If asking the user to choose between two options – “Would you like X or Y?” – you need to account for all legitimate responses e.g. “yes”, “both” etc. Think of it more like a text box response than a binary choice.
- Suitable prompts are needed in order to elicit expected responses – it’s important to figure out how to craft these prompts, or how to pivot to another question, to get a user response that the system will understand. Put a general catch in place to get to get all of those utterances that you don’t understand and include them in the error recovery prompt.
- Be prepared to help at any time, either by reprompting the user if the information required is essential (“I didn’t quite catch that – could you say it again?”) or by offering an explicit help dialogue. Respond to input such as “what?”, “repeat”, “say that again”, “?”, “eh?”
- If the user doesn’t provide a response or one that the system can’t recognise after 2 or 3 tries, fail gracefully by exiting with an appropriate, forgiving message.
- To prevent chatbots getting stuck in a loop when responses are not understood, ensure error recovery options allow a total reset as well as resetting at a specific point in the conversation.
- End conversations appropriately, and take into account user responses to confirm the end of the conversation. In this example, when using the BBC Earth Real Happiness Project bot, I wrote “bye”, but the system didn’t understand that as a continuation of the last conversation, but the start of the next:
4. User test
Test your IA
- Some conversational interfaces are very flat, some have progression. Where there is an IA, you may want to do a card sort to inform / test the Information Architecture.
- Written English is very different from spoken English – read out your dialogs to test how they sound. Are they awkward?
- Adjust your dialogs to make sure it is something that a person would say and has been written with voice in mind rather than as a copy of an app or website.
- It is beneficial to read aloud both written dialogs and those that are meant to be voiced – they both still need to be processed sequentially.
Wizard of Oz testing
- Where a person behind the scenes is running the prototype as the user interacts with it – you can set it up so you take the voice recognition out of the equation and just look at the design, meaning you don’t have to build / code straight off.
- Services such as Google Home Web Simulator and Say Wizard speak dialogs back to you.
- This type of testing allows you to collect words and synonyms that people use and build upon your library of natural language utterances.
5. Analyse & iterate
Is it usable?
- Was the test participant able to understand the bot and complete the task(s)?
- Was your system able to handle different utterances and paths which strayed from your scripted dialog paths?
- Could any options be made clearer?
Is it desirable?
- What, if any, emotional responses did you observe from the participant?
- Did the participant feel it was easier to complete the task using the bot make compared to a traditional user interface, such as a website?
Iterate your conversation design
- Collect all of the participants’ utterances and build these into future iterations of your script.
- This will ensure the system recognises related phrases, e.g. “book me a cab” = “get me a taxi”, “an hour and a half” = “90 minutes”.
- Responses should mirror the language your users naturally tend to use.
Conversational interfaces, when designed with users in mind, mean devices don’t take up lots of our attention, thereby freeing us up to people and things around us. They integrate seamlessly with what we’re doing.
Want to learn more?
If you would like to talk to us about your chatbot project, we would love to hear from you!