Skip to main contentCarbon Design System

Chatbots

Depending on the complexity of the use case and user needs, chatbots may require other interactions that supplement the conversational experience.

Note: This page documents some common chatbot scenarios in IBM products and their recommended best practices. Flows still under consideration are marked with “Experimental”.

Launching a bot

Bots should be launched from a button positioned at the bottom right of the screen, or from a button embedded within the UI. See Carbon Chatbot Add-on Design Kit for the appropriate variants.

Launching a bot

Multiple threads (Experimental)

When a bot cannot complete a request, the bot detects frustration, or the user would simply prefer interacting with a person, it becomes necessary to connect the user to a human agent.

User initiates change

Sometimes, a user indicates that they would like to chat with a human. Other times, this process can be suggested if a bot is repeatedly unsuccessful in answering a user’s question.

User initiates change

Notify the user

Use a toast notification bar to indicate when the user is in a new conversation context, or that a new user has joined the the chat. Call out any significant changes with in-conversation status messages.

Notify the user

Multiple users

Combining two or more human agents into the same thread is a common practice. Where necessary, call out significant changes in who the user is addressing (particularly if they have different purposes).

Multiple users

Incoming messages

For new messages appearing in another thread, be sure to use dots above the Threads icon to alert the user of new messages. Then, within the menu, indicate the amount of new messages on the specific thread. Visually distinguish threads with new messages.