Yeah, you still need to worry about UI/UX for your chatbot.
I recently watched a presentation of a new law-related chatbot. It was a fine concept, but I was thrown off a bit when I heard the presenter talk about how great the interface was. I realized that the creator was talking about the actual chat window, which, sure, are usually pretty clean. But the actual conversation the bot prompted was lengthy and difficult to follow.
When we’re building chatbots, the actual words and conversation become our interface, and they need to be approached in the same way we do visual interfaces. No passes allowed on this one — like any product, if your interface is cumbersome and frustrating, users won’t stick with you. Words and conversations present some particular challenges.
Here I’m compiling some of the chatbot UI principles and best practices in the hopes it helps would-be bot developers in the legal space. I wanted to get this out there, but I consider this post a work in progress. I’ll keep this updated as we experiment with different UI concepts to further inform some of these principles. Don’t hesitate to contribute additional thoughts in the comments below.
There ARE visual design elements — be sure to think about them.
While you can use pre-made bot templates if you’re creating a widget on a site, most programs that provide the front-end offer the ability for you to customize. When you’re thinking about the visual design of the bot (the container, the avatars, the speech bubbles, the way response options are displayed, hover states and animations, etc.), make sure it’s overall consistent with the product’s branding and purposes.
You can make a chatbot more playful through to use of bright colors and more rounded buttons and a range of good sans serif font choices, or you can convey are more stoic brand to impress the import of the issue through straighter lines, more muted and warmer colors, and more serious-looking fonts. These are all small design choices, but then can help convey an overall message about the experience a user is about to have. Think about your goals for the bot, and design accordingly.
Be deliberate with your conversation flow.
There are a lot of tips for appropriately setting expectations for your user and how to organize the conversation. Each concept could be the subject of it’s own post, but I’ll run down some important ones in summary fashion here:
- Set a clear value up front. The first communication with your user should indicate what value the bot can offer them. If it’s not compelling, the user won’t be invested and put in the time. (Related: it’s helpful to tell the user how long it will take them to get to whatever the value is. This tends to be more applicable in legal products than in other bot use cases).
- Orient the user. With a visual interface, we can use visual cues that help orient the user. With a conversational UI, you need to let the user know up front what they can do with the bot and how to do it. This avoids frustration down the line which leads to drop off.
- Be careful with the kinds of questions you ask. The best bots have a narrow subject matter, and therefore can easily ask more closed-ended questions. Avoiding open-ended questions creates less opportunity for bot confusion which necessarily leads to user frustration.
- Give the user escape valves. The user needs to be able to start over and undo/cancel responses. This should be easy and intuitive to accomplish.
- Confirm! For the trickier, more important aspects of your bot, confirm the understanding with the user. Ask the user if you’ve got it right, otherwise you’re going to send them down a whole path they don’t want to be on, which again will cause them to quit.
- Please, for the love of god, explain legal concepts in as few words as possible. Think very carefully about what information to give the user. Prioritize the most important information, and give them ways to dig deeper outside the chatbot experience. No jargon! Plain language! This goes for every product we build, but is especially true for bots. And finally, avoid lengthy paragraphs of text!
Don’t forget about Non-verbal communication.
If only there were a way to communicate emotions via a text conversation….
Emojis are your friends. They are a commonly understood, familiar design element that users are used to experiencing in a text conversation with friends. It can be very difficult to be engaging over chat without non-verbal cues, but emojis provide us a compliment to our words to convey meaning. I know a lot of you probably are concerned about using something as informal as emojis in something as serious as a conversation about legal issues, but remember the goal of any interface: To get the user to the product’s value with the least amount of friction. Emojis don’t need to cheapen the experience, they can be an ally in creating an enjoyable experience so users stick with it to get to the value.
Your bot’s avatar can also express feelings about a conversation and express empathy. “My neighbor broke my window” — insert angry face avatar. “My child is struggling in school due to a disability” — insert concerned face avatar. These emotive changes can actually help the words to read differently to further create a natural conversation experience. If you told someone “my kid is struggling in school due to a disability” and they tell you “oh, that’s terrible, I’m so sorry” with a giant smile on their face, you’d assume they were either schizo or just a complete jerk, and you’d probably stop talking to the person about the issue. There’s no reason a text conversation can’t express empathy.
Personality adds delight.
Of course your bot can’t replicate a human-to-human interaction, but there’s something really amusing and delightful when it tries. If your bot is a little sarcastic, it’s engaging not because it’s replicating a sarcastic human, but because you know it’s a bot and you want to see what it’s been programmed to do (just watch a kid try get Alexa to say weird things for hours).
There are some other tricks along these lines. You can add some um’s and uh’s into the mix to make the bot feel more imperfect. The bot can be self-deprecating if it’s appropriate. The bot can admit mistakes.
One warning: be careful with rhetorical questions. They can be engaging, but the user WILL respond to them, and the bot should be able to reply, which can be tricky.
Don’t skip testing. You’ll need to run the application with a lot of people for training purposes assuming you’re using natural language processing, but you should be sure to run testing sessions specifically for usability as well as you would with a visual product. Be sure to test every interface you’re using for your bot, as the experiences will be vastly different via SMS, a web application, or a chatbot widget.