Bot Dialog
A Bot Dialog in Salesforce Einstein Bots and Agentforce is the conversation tree node that defines what the bot says and does in response to a specific user intent.
Definition
A Bot Dialog in Salesforce Einstein Bots and Agentforce is the conversation tree node that defines what the bot says and does in response to a specific user intent. Each dialog has a name, a triggering intent (or set of intents), and a sequence of steps: message steps (the bot says something), question steps (the bot asks for input and stores the answer), rule steps (decision branches), action steps (calls a Flow, Apex, lookup, transfer), and navigation steps (jumps to another dialog). The dialog is the unit of conversation design; the bot is the collection of dialogs plus the intent model that routes user input to the right one.
Bot Dialogs are configured inside Einstein Bot Builder. Designers structure dialogs to handle distinct customer intents (Check Order Status, Reset Password, Book Appointment), each one capturing the necessary context, doing the work through Bot Actions, and routing the conversation forward. A typical production bot has dozens of dialogs that interconnect through Navigate actions. Agentforce evolves the dialog model into Topics and Actions inside a reasoning engine, but the conceptual primitives (steps, variables, decisions, actions) carry across. Most of the design effort in any bot project is dialog design: how the conversation flows, what context it captures, and when it hands off.
How Bot Dialogs structure bot conversations
The step types inside a dialog
Dialogs are sequences of step types: Message (the bot speaks), Question (the bot asks and captures a variable), Rule (a branch based on conditions), Action (Flow, Apex, lookup, transfer), and Navigate (jump to another dialog). Most production dialogs interleave these to model the back-and-forth of a real conversation.
Intent matching and dialog selection
Each dialog typically has one or more intents that route user input to it. When the user types something, the bot's NLP model classifies it to an intent; the matching dialog fires. Intents are trained with utterances (example user phrasings); robust training catches the variety of ways customers express the same idea.
Variables and context capture
Dialogs capture variables through Question steps. The variable persists for the rest of the session and can be referenced in later messages (You said order 12345) and in Bot Actions (look up that order). Variable hygiene is the difference between a bot that feels conversational and one that asks the same question twice.
Branching with Rule steps
Rule steps split the dialog based on captured variables, CRM context, or external conditions. A Reset Password dialog might branch on whether the user has multi-factor enabled. Branches keep the conversation flowing without forcing the user to answer the same question multiple times.
Navigating between dialogs
Navigate steps jump from one dialog to another, preserving captured variables. The pattern lets common subroutines (Verify Identity, Confirm Email) be defined once and called from multiple dialogs. Without Navigate, dialogs grow into unmaintainable monoliths.
Dialog reusability and best practice
Healthy bot designs use small focused dialogs that compose. Identity Verification, Email Confirmation, Schedule Selection, Knowledge Lookup each as their own dialog, called from main intent dialogs. The pattern keeps each dialog under twenty steps and the bot's maintenance cost manageable.
Agentforce equivalent
Agentforce moves from dialog trees to Topics and Actions inside a reasoning engine. A Topic is the rough equivalent of a dialog; Actions are the bound work. The reasoning engine decides Topic activation rather than relying on a strict tree. Existing dialog logic migrates by mapping dialogs to Topics and steps to Actions.
Common pitfalls
Three patterns recur. Monolithic dialogs that try to handle everything become impossible to maintain. Weak intent training leaves the bot guessing; users end up in the wrong dialog. And missing Transfer to Agent at the end of every dialog produces customer frustration when the bot cannot resolve. Each is addressable with dialog discipline.
How to design effective Bot Dialogs
Dialog design is most of the bot's value. Step structure, intent training, and variable capture all influence how the bot feels to customers.
- Identify the intent the dialog handles
Each dialog corresponds to a specific customer goal. Write the goal in plain language; vague intents lead to dialogs that overlap and confuse.
- Sketch the conversation flow
Before opening Bot Builder, draft the conversation: bot greeting, what it asks, what it answers, what it does, what it confirms. The sketch becomes the dialog skeleton.
- Add intent training utterances
Provide 20 or more example phrasings per intent. Real customer language varies more than designers expect; thin training data produces brittle intent recognition.
- Build steps inside the dialog
Add Message, Question, Rule, Action, and Navigate steps in the order the conversation flows. Reuse common sub-dialogs through Navigate.
- Add Transfer to Agent fallback
Every dialog should end (or branch) with Transfer to Agent for cases the bot cannot resolve. The fallback is the difference between graceful handoff and customer frustration.
The customer goal that routes user input to this dialog.
The ordered Messages, Questions, Rules, Actions, and Navigate steps.
Context captured through Question steps and referenced later.
The work-doing steps (Flow, Apex, lookup, transfer) inside the dialog.
The fallback escalation when the bot cannot resolve.
- Monolithic dialogs become impossible to maintain. Break into small focused dialogs that compose through Navigate steps.
- Weak intent training (5 utterances per intent) produces brittle recognition. Provide 20 or more example phrasings per intent.
- Missing Transfer to Agent at the end of dialogs traps customers in dead-end conversations. Always design the escalation path.
- Repeated Question steps for the same variable produce a clunky bot. Capture once, reuse the variable everywhere downstream.
Trust & references
Cross-checked against the following references.
- Bot DialogsSalesforce Help
- Einstein Bots OverviewSalesforce Help
Straight from the source - Salesforce's reference material on Bot Dialog.
- Build Bot DialogsSalesforce Help
About the Author
Dipojjal Chakrabarti is a B2C Solution Architect with 29 Salesforce certifications and over 13 years in the Salesforce ecosystem. He runs salesforcedictionary.com to help admins, developers, architects, and cert/interview candidates sharpen their fundamentals. More about Dipojjal.
Test your knowledge
Q1. What is a Bot Dialog in Einstein Bots?
Q2. Can a Bot Dialog call another Bot Dialog?
Q3. What is the best practice for dialog design?
Discussion
Loading discussion…