Handle errors

When something goes wrong during a conversational user experience (CUX), you should offer ways to get the conversation back on track. Error handling is a form of fallback. Errors can occur in a user's interactions with the CUX and in the functioning of the CUX itself. Learn more in Design graceful fallbacks and handoffs.

Different types of errors require different messaging. Regardless of the cause, try to be as transparent as possible about what happened and how to fix it. The messaging might include details about the error. It must include information about what the user can do to get unstuck, or at least to understand why they're stuck.

Misrecognition errors

When your CUX doesn't understand the user's intent, ask for clarification. This step is especially important when the user's input is ambiguous or unclear. The user might not realize that their input was unclear, so it's up to your CUX to ask for clarification. Here are some examples of how to handle misrecognition errors.

Example 1: Ask the customer to rephrase their request.

Screenshot of a copilot asking the user to rephrase their question.

Example 2: Don't ask the user to repeat their request more than twice.

Screenshot of a copilot asking the user a question twice.

If the misunderstanding happens more than once, choose your responses carefully. If the first response asks the user to repeat or rephrase their request, offer specific options in the second response.

Example 3: Present the customer with specific options.

Screenshot of the copilot offering the user suggestions.

We don't recommend having the user repeat their request more than twice. If your CUX can't understand the user's intent in two turns, hand off to a human or other mitigation tactic, like email.

Execution errors

Execution errors result from misrecognition errors. The user asked for something, and your CUX either misunderstood the user's input or matched it incorrectly.

Example 1: Misunderstood input (two items added to list instead of one)

Screenshot of the user asking the agent to add ginger tea to their shopping list, but the agent incorrectly adds ginger and tea instead.

Example 2: Incorrect match for user's request (item added to wrong list)

Screenshot of the user asking the agent to add an item to their shopping list, but the agent incorrectly adds the item to their todo list.

When an execution error happens, provide a way for the user to go back and fix it.

  • Recognize secondary inputs. Users have an automatic impulse to immediately fix errors, and you can use that to your advantage. For example, a user might enter a phrase like "wrong list," "that's not right," or simply "no." From a technical standpoint, implementing this type of understanding can be challenging, especially if the interaction model is a question-and-answer design instead of a multi-turn conversation. However, taking the time to integrate these types of keyword phrases into your design for error handling can help make the user's experience much more natural.

  • Ask for confirmation before executing an action. Including a confirmation, such as "OK, I'll add ginger and tea to your grocery list. Is that correct?" gives the user an opportunity to correct the error before it happens. However, having to confirm every action can quickly become annoying, so use this approach with caution.

Input errors

Sometimes your conversational experience isn't to blame for an error. The user might say something that isn't an answer to the question the CUX asked or that it doesn't understand. In these cases, a simple "Sorry, I didn't get that. Can you say that again?" is acceptable.

Example 1: Unexpected user response

Screenshot of the user telling the copilot to set their alarm to 'apple.'

Example 2: Unintelligible input

Screenshot of the user sending an unintelligible message.

Technical errors

Other types of errors might cause the agent not to function correctly. These types of technical errors can include:

  • Errors with a solution. You're aware that something is wrong with the CUX. You have a workaround or fix for the user to try or you're actively working to fix the error.

  • Errors without a solution. You're aware that something is wrong with the CUX, but no workaround or fix is available.

  • Unknown errors. The CUX isn't working correctly and you don't know why.

If you include responses that handle technical errors, make sure to let users know that there's a problem with the experience.

Screenshot of the copilot telling the user that it's unable to do what was requested.

Screenshot of the copilot telling the user that something went wrong.

It's helpful to let the user know when they should try again, but only if trying the request again later is likely to succeed. If they try again and get the same response, it can lead to mistrust and frustration. If the error is either unknown or doesn't have a solution, be sure to direct the user somewhere else, like to a customer support representative, FAQ, or email or chat support.