Recently, I got an opportunity to design a chatbot for GameOn Technology, a pioneer in building intelligent chatbots for world's largest enterprises. After two months of intensive research (although limited resources available online), great feedback from GameOn, multiple design iterations and critique sessions, I present my usability findings in the form of UX practices that can help you design better bot experiences.
I understand that designing a conversational UI for the first time can be overwhelming. Some of the key points mentioned below can help you get started quickly in the right direction.
Most blogs suggest to add a personality to your bot and I'd agree.
Personality captures the heart.
Since words are the only way of going about it in conversational UIs, use your words wisely. For example: A professor bot can have an authoritative personality, while an assistant bot might sound rude with a similar tone.
Beauty attracts you, Personality makes you stay.
Without a personality, a chatbot is just an online form with higher usability issues. I'd rather fill that form.
Sometimes people ignore minor flaws if you have a great personality. This applies to our design too. More trust and retention is possible if your script makes your user want to stay.
This diagram can greatly help in bringing the anxiety down. It scopes down what seems like infinite possible interactions to a finite number of features the bot can offer. I would suggest building on this diagram as you progress in your design process. It helps you record your features, interactions, script, and flow for all possible scenarios.
An introduction should be as small as an elevator pitch — People don't like to read long passages. Also, it must include what the bot can do (think of it as avoiding the initial awkwardness/small talks).
Note: Things that do one thing well are more helpful than things that do multiple things poorly — Remote control is a good example.
First impressions influence overall opinions.
Making it clear that the user is chatting with a bot and not a human is very important. We want to design smart conversation, as human-like as possible but wait until Artificial Intelligence is more advanced or pay the trust tax. Trust tax says one undesired interaction with the device loses 3 times the trust that can be achieved by 1 desired interaction.
We want to reduce the TRUST TAX.
Once the trust is restored, the users will give a second chance to your brand (if not the bot).
Introduction should be as small as an elevator pitch but also include what the bot can do. And things that do one thing well are more helpful than things that do multiple things poorly — Remote control is a good example.
Communication is a two-way street — Listen before you speak!
We don't want the user to feel the bot is forcing its offerings on them. At most points, the user should feel in command of the conversation and should be able to direct the conversation according to his needs.
A good balance between the bot suggestions and user inputs is essential.
As we all know, people don't like to read long passages. Using simple language and short messages always help. But something else that can help but is not implemented yet is a visual hierarchy. We can learn a lot from typography here — Emphasizing the text, highlighting your point, and fonts can help portray emotion and context.
Every interaction with your bot does not have to be conversational. Designing text interactions — Keywords are not just links but are the new buttons that perform the required tasks.
As they say, you should learn from your failures. Let your users learn from it too. Chatbots have limited scope and will FAIL for out of context conversations (unless linguistics and natural language learning capabilities come into the picture).
How you handle those scenarios and bring the user back to what the bot has to offer is designing for failure. This can be a point where you lose your users and hence designing for these use-cases is important.
I have found these points very helpful while designing for conversational UIs. It improved the success rates of tasks and increased satisfaction among the users as gauged from the user tests. Once you have everything figured out, I would highly encourage prototyping and testing your design with real users to find more insights in your context.
Also, as a learner, I'd love to hear what variations or new concepts helped you in your design. Leave your questions and comments below.