When Bots Fail At Conversation

If there is any skepticism around conversational user experiences, it is due to a lack of confidence in the current state of artificial intelligence and natural language processing. Some skeptics suggest that software developers shouldn’t build a conversational experience, but rather shoehorn mini-interactive applications into an existing messaging interface to compensate for technology’s communication limitations. Regardless, if a text-based input field is the primary mode of interaction in the experience, it will be used, and users will expect to get back a response. Bot developers are in consensus that if you’re going to invite, or initiate a conversation, then you need to provide a response to any type of input you receive, even if your software can’t fulfill the request. Just like humans, honestly seems to be the best policy.

Oops! I didn’t get that

You’ve likely received generic responses to chatbot misunderstandings. “Oops! I didn’t get that” and variations of that are fallback messages to a request your bot doesn’t understand. This type of generic response though emphasizes weakness in conversational technologies. If your bot fails, consider diverting the user’s focus away from the failure event and restore some delight to the user’s experience. There are a number of strategies chatbot developers can already put to work today to sustain engagement with their users.

Get Creative With Fallback Messages

Consider multiple fallback messages and rotate them so that any misunderstanding doesn’t seem like messaging’s equivalent to an error 404. You, nor your users want to hit a dead end, but if your fallback responses are creative enough, then you might just delight users with the unexpected. Rotating responses is an easy strategy to execute if you’re building bots with platforms like Botkit. With Janis.ai, we log every misunderstanding and use historical data to tailor our responses to users. Platforms like Api.ai even handle multiple fallback responses. They also provide a “chit chat” conversation model that you can plug in to handle off-topic small talk.

The fist statement is true. Janis knows this.

Gracefully Refocus Users

If your communication breakdown with users occurs in the middle of a conversation and you’re able to maintain context states, you can serve up two messages in succession. The first is the fallback message to the misunderstanding and the second is a reminder of the context. In this sense, you’re able to move the focus back to your goals and not let the misunderstanding become a distraction in your user experience.

Tastefully Redirect Users

A good strategy is to tell the user right at the beginning of a conversation that if they get stuck they can always just ask for help. You’re giving them an escape path right away that is universally understood. When your bot receives a request it doesn’t understand, you can serve up your creative fallback message, followed by a second reminder that help is one input away.

If your messaging channnel supports buttons, then you don’t need the second message in text, just display a help button. Although be mindful that this is a conversational user experience, a habitual interaction pattern that users are already comfortable with. Visual calls-to-action like buttons may be easy to digest and act on, but if bots do have a high conversational fail rate, then a high frequency of a visual cue labelled “Help” might work against your goals and emphasize the conversational limitations of your bot.

Ultimately, the goal for business should be to automate many customer interactions with the help of a messaging bot, scaling service delivery at a lower cost. Just because the bot fails at providing a response though, it doesn’t mean a response can’t be provided to the user. Another redirection strategy is to ask the user if they would like the bot to escalate the request. and if they concur, you’re able to funnel the user into another response channel and minimize the risk of losing them:

At this point, you can redirect the user’s input to your customer service software of choice and follow up through that software vendor’s connectors to your conversational experience. 360 customer service makes a lot of sense whereby your bot-powered UX can be part of a larger CRM strategy to re-engage users and close the loop when a bot can’t effectively deliver on the user’s request the first time.

If a combination of bot and human response is mission critical to your messaging strategy, when bots fail to respond to a user’s request you can even intercept the bot and take the place of the bot with live chat. Keep in mind though that while this is a nice feature to have in your conversational UX toolkit, it does still require live agents to monitor those conversations and be able to respond very quickly, almost as quickly as the bot does, otherwise the pace of your messaging may be an awkward mix of instant bot responses and delayed human response.

Be Upfront

One school of thought suggests that bot developers should limit the scope of their interactions to a fixed set of capabilities and train users to interact with their bots. I am personally from the school of thought that if we’re building experiences that are intended to communicate naturally within a conversational paradigm, then we should strive to have bots adapt to users and the way they want to communicate. That said, it’s a good practice to be upfront about your bot’s capabilities when you first initiate conversation and include gentle reminders when the conversation takes an unexpected turn and without sounding too robotic.

Collaborative Optimization

Before we dismiss the conversation UX as not ready for primetime, I think there are many ways we can work together to turn bot misunderstandings into opportunity. I’d like to see more data relationships between software providers. Wikipedia is a very deep but also well structured data source and it’s well maintained. If your bot receives a question it can’t answer, you can tap into this data for your chatbot and provide an intelligent answer. News sources also provide well structured and even more timely data that chatbots can tap into and use a headline as a response followed by a call-to-action.

If users are going to naturally make off topic, or irrelevant requests anyways, these little details can be delightful. Your users will know it’s a bot, but might be impressed with it’s depth and your attention to details.

Data sources can extend to other bots too. When your bot does’t have a response to provide and a data connection exists on your backend to a bot that could service the response, your bot can refer the user to another bot. In this case, you’re not only able to reduce the chance of failure, you provide a value added service, and by serving as a lead generator for other bots can monetize misunderstandings and turn failure into a revenue opportunity. Keep in mind though that this is a strategy that would be prohibited by Facebook Messenger as cross promotion is against their policies.

Collaborative Optimization can start by working together to learn and improve. I’d love to see a community-driven website where bot developers share examples of failed conversations (anonymously) and other developers can annotate and learn together to improve. A “Rap Genius For Chatbots”.

It’s still early innings but the technology behind AI and NLP is already impressive and while it may take us years still using vast amounts of historical data for AI to converse without a hitch, chatbots can already be programmed to process the exceptions creatively and learn where to improve from the data. I’m personally very excited about our progress as an industry and what the future holds for conversational user experiences.

It gives me 🔋 to write knowing people find value in it. Follow me if you want to read more pieces just like this one.