AI Chatbot & Automation

Scenarios (Pre-Prepared Conversation Flows)

A pre-written conversation blueprint that guides how a chatbot responds to users and performs actions to achieve specific business goals.

scenario chatbot automation conversation flow AI
Created: December 18, 2025

What Are Scenarios?

A scenario (also called a chatbot script, bot story, or conversation flow) is a pre-prepared, structured sequence of interactions between a user and an AI-powered automation system. Scenarios define the complete path of a conversation, including the logic, branching, data collection, and actions that guide how a chatbot responds to user input and executes operations to achieve specific outcomes.

Scenarios are the operational backbone of modern chatbot and automation platforms, translating business requirements into executable conversation flows. They are constructed using visual or code-based workflow builders where modular blocks—representing events, actions, conditions, and exits—are connected to create dynamic, context-aware experiences across digital channels including web chat, mobile apps, messaging platforms, and voice interfaces.

Scenarios vs. User Stories vs. Use Cases

Understanding the relationship between these related concepts is essential for effective scenario design:

AspectScenarioUser StoryUse Case
DefinitionExecutable conversation flow with specific steps, logic, and actionsBrief feature description from user perspective (Agile format)Comprehensive specification of all system interactions
FormatVisual workflow or flowchart with blocks, branches, conditionsText card: “As a [user], I want [goal], so that [benefit]”Detailed text with main/alternate flows and error handling
Detail LevelStep-by-step implementation with specific actions and responsesHigh-level, abstractComprehensive, covering all variations
PurposeGuide actual automated conversation or process executionCapture requirement or feature to implementSpecify complete system requirements
FocusUser behavior and system automation in practiceUser need and desired outcomeSystem behavior and responses
AudienceChatbot builders, automation engineersProduct owners, development teamsSystem analysts, developers, QA
GranularityOperational (what actually happens)Strategic (what should be built)Tactical (how system should behave)

Example Comparison:

User Story:

As a new visitor, I want to get product support
so that I can resolve my issue quickly.

Use Case:

Title: Get Product Support
Actor: New Visitor
Main Flow:
1. User requests support
2. System identifies issue category
3. System provides solution
4. User confirms resolution
Alternate Flows:
- 2a. Category unclear → Ask clarifying questions
- 3a. Solution not available → Escalate to agent

Scenario:

[Entry Gate]
→ [Event: New User Message]
→ [Send Message: "How can I help you today?"]
→ [Event: Button/Input Action]
→ [Condition: Intent = "Product Support"]
  → If True: [AI Action: Search Knowledge Base]
  → [Send Message: Solution + "Did this help?"]
  → [Event: Button Click]
    → If "Yes": [Send Message: "Great! Anything else?"]
    → If "No": [Action: Assign to Agent]

Scenario Structure: Building Blocks

Scenarios are composed of interconnected blocks, each representing a discrete function:

Block Type Overview

Block TypePurposeKey Characteristics
Entry GateMarks scenario starting pointRequired for scenario activation
Event BlocksListen for triggers to pause/resume flowUser messages, button clicks, data updates
Action BlocksExecute operationsSend messages, update data, call APIs
Condition BlocksEvaluate data to branch flowIf-then logic, data comparisons
Exit BlocksEnd or hand off scenarioStop or launch another scenario

Entry Gate

Function: Defines the beginning of a scenario flow.

Critical rule: Every executable scenario must begin with an Entry Gate. Without it, the scenario cannot be activated or executed.

Visual representation: Typically shown as a distinctive icon or shape at the top of the workflow canvas.

Event Blocks: Triggers and Listeners

Event blocks pause scenario execution and wait for specific triggers:

Event TypeTriggerCommon Use
New User MessageAny incoming message (text, image, file)Universal message handler
User Message MatchesKeyword/phrase/intent patternsTopic-specific flows
Button/Input ActionUser clicks button or submits inputForm submissions, choices
Conversation State ChangedStatus update (pending, resolved, etc.)Workflow state management
User Profile UpdatedChanges to user data fieldsPersonalization triggers
Custom Data UpdatedSpecific backend field changesData-driven automation
Segments UpdatedUser/conversation segment changesAudience targeting
URL Change DetectedNavigation to specific pageContextual assistance
New Crisp EventProgrammatic trigger via SDK/APIIntegration events
Awaiting OperatorUnread message timeoutEscalation scenarios

Pattern Matching:

  • Exact match: “reset password” (precise phrase)
  • Wildcard:refund” (contains word anywhere)
  • Multiple patterns: “help|assist|support” (any variant)

Critical Note: After collecting user input (Field Input, Button Picker), always place an Event Block to capture the response and store the value. Without this, the scenario cannot properly pause, resume, and process user input.

Action Blocks: Executing Operations

Action blocks perform specific operations within scenarios:

Action CategoryBlock TypesPurpose
Send MessageText, Button Picker, Field Input, File, Animation, Carousel, NoteDisplay content to user
Update UserEmail, Name, Phone, Custom Fields, SegmentsModify user profile data
Conversation ControlChange State, Assign Operator, Block UserManage conversation lifecycle
IntegrationRun Webhook, HTTP Request, Custom APIConnect to external systems
AI OperationsIntent Analysis, Knowledge Base Search, Dynamic ReplyLeverage AI capabilities
Flow ControlDelay, Wait, Set VariableManage timing and data

Send Message Types:

Text Message:

Plain text or formatted content with variables:
"Hello {{user_name}}, your order #{{order_id}} has shipped!"

Button Picker:

Message: "How would you like to proceed?"
Buttons: 
  - "Check Order Status"
  - "Speak to Agent"
  - "Browse FAQs"

Field Input:

Type: Email
Label: "Please provide your email address"
Required: Yes
Validation: Email format
Store in: user.email

Carousel:

Display multiple cards with images, text, and buttons
Use case: Product showcase, feature comparison

Condition Blocks: Branching Logic

Condition blocks evaluate data or context to direct flow:

Condition TypeEvaluationBranch Logic
Conversation StatusNew, pending, resolvedRoute by state
Time-BasedTime passed since eventDelay-triggered actions
User DataEmail set, name exists, segment membershipPersonalization paths
Custom DataAny custom field valueBusiness logic branching
Message IntentAI-detected user intentIntent-based routing
API ResponseHTTP status, response valuesIntegration-driven flow
User MetadataLocation, language, device, time of dayContext-aware branching

Example Condition Structure:

[Condition: User Email is Set]
  → If TRUE:
    [Send Message: "Thanks {{user_name}}, we'll follow up at {{user_email}}"]
  → If FALSE:
    [Send Message: "Please provide your email"]
    [Field Input: Email]

Exit Blocks: Ending or Transitioning

Exit blocks control how scenarios conclude:

Stop Scenario:

  • Terminates current flow completely
  • Returns control to main chat system
  • Use when objective achieved or error encountered

Run Scenario:

  • Launches another scenario
  • Enables modular, reusable flows
  • Supports scenario chaining for complex workflows

Example Modular Design:

Scenario A: Lead Qualification
  → [Exit: Run Scenario B "Email Collection"]
  
Scenario B: Email Collection
  → [Collect email, validate, store]
  → [Exit: Run Scenario C "Meeting Scheduler"]

Scenario Creation Process

Step-by-Step Methodology

PhaseActivitiesDeliverables
1. Define ObjectiveClarify goal, audience, success criteriaObjective statement, requirements
2. Map User JourneyDocument steps, decision points, edge casesFlow diagram, user personas
3. Build StructureAdd Entry Gate, Events, Actions, Conditions, ExitsVisual workflow
4. Configure BlocksSet parameters, patterns, variables, conditionsDetailed block configuration
5. Test ThoroughlySimulate all paths, edge cases, error handlingTest results, bug reports
6. Iterate and RefineGather feedback, optimize performanceUpdated scenario

Configuration Best Practices

Event Configuration:

  • Set appropriate message origins (channels)
  • Use specific patterns for better matching
  • Enable memorization to store collected data
  • Consider multilingual requirements

Action Configuration:

  • Use variables for personalization: {{user_name}}
  • Set clear button labels and actions
  • Validate input fields (email format, phone number)
  • Provide helpful error messages

Condition Configuration:

  • Keep logic simple and readable
  • Plan for all possible outcomes
  • Handle edge cases (missing data, invalid input)
  • Document complex condition reasoning

Integration Configuration:

  • Securely store API credentials
  • Handle timeouts and errors gracefully
  • Log integration calls for debugging
  • Test with real data and endpoints

Practical Examples and Use Cases

Example 1: Email Collection Scenario

Objective: Capture user email during conversation

Flow:

[Entry Gate]
↓
[Send Message: "Welcome! May I have your email for follow-up?"]
↓
[Field Input: Email (required, validated)]
↓
[Event: Button/Input Action] ← Critical: captures the input
↓
[Update User: Set email field]
↓
[Condition: User Email is Set]
  → If TRUE:
    [Send Message: "Thank you! How may I assist you?"]
  → If FALSE:
    [Send Message: "Invalid email. Please try again."]
    [Loop back to Field Input]

Key Features:

  • Input validation
  • Data storage
  • Confirmation feedback
  • Error handling

Example 2: FAQ Resolution Scenario

Objective: Automatically answer common questions

Flow:

[Entry Gate]
↓
[Event: User Message Matches "*refund*|*return*"]
↓
[AI Action: Search Knowledge Base query="refund policy"]
↓
[Condition: Knowledge Base Result Found]
  → If TRUE:
    [Send Message: {{kb_answer}}]
    [Button Picker: "Did this help?" Options: Yes/No]
    [Event: Button Click]
      → If "Yes": [Send: "Great! Anything else?"]
      → If "No": [Action: Assign to Agent]
  → If FALSE:
    [Send Message: "Let me connect you with a specialist."]
    [Action: Assign to Agent queue="Customer Service"]

Key Features:

  • Pattern matching with wildcards
  • AI-powered knowledge retrieval
  • User satisfaction check
  • Escalation path

Example 3: Multichannel Welcome Scenario

Objective: Greet users differently based on channel

Flow:

[Entry Gate]
↓
[Event: New User Message]
↓
[Condition: Conversation is New]
  → If TRUE:
    [Condition: Current Channel]
      → If "WhatsApp":
        [Send: "👋 Welcome to our WhatsApp support!"]
      → If "Facebook":
        [Send: "Hi there! Thanks for messaging us on Facebook!"]
      → If "Website Chat":
        [Send: "Hello! How can we help you today?"]
      → Default:
        [Send: "Welcome! We're here to help."]
↓
[Event: User Message]
↓
[Continue to main conversation flow...]

Key Features:

  • Channel detection
  • Personalized greetings
  • Consistent user experience across platforms

Example 4: Lead Qualification and Routing

Objective: Qualify leads and route to appropriate sales team

Flow:

[Entry Gate]
↓
[Send: "What's your company size?"]
[Button Picker: "1-10", "11-50", "51-200", "201+"]
[Event: Button Click]
[Update User: Custom Field "company_size"]
↓
[Send: "What's your primary need?"]
[Button Picker: "Sales CRM", "Marketing Automation", "Customer Support"]
[Event: Button Click]
[Update User: Custom Field "primary_need"]
↓
[Condition: company_size AND primary_need]
  → If company_size IN ["51-200", "201+"] AND primary_need = "Sales CRM":
    [Update User: Add to Segment "Enterprise-Sales-Qualified"]
    [Action: Assign to Operator group="Enterprise Sales"]
  → If company_size IN ["1-10", "11-50"]:
    [Update User: Add to Segment "SMB-Qualified"]
    [Action: Assign to Operator group="SMB Sales"]
  → Default:
    [Send: "Thanks! A specialist will reach out within 24 hours."]

Key Features:

  • Progressive profiling
  • Segment assignment
  • Intelligent routing
  • Fallback handling

Best Practices for Scenario Design

User-Centric Design

PrincipleImplementationExample
Clear LanguageUse simple, conversational tone“What brings you here today?” vs. “State your inquiry purpose”
Minimal FrictionReduce steps, prefill when possibleAuto-detect location vs. ask for country/state/city
Error PreventionValidate input, provide examples“Email format: name@company.com
Graceful DegradationHandle unexpected inputCatch-all fallback: “I didn’t understand. Can you rephrase?”
AccessibilitySupport screen readers, keyboard navigationAlt text for images, button labels

Technical Best Practices

Modularity:

  • Create reusable scenario components
  • Use “Run Scenario” for common flows (email collection, authentication)
  • Maintain scenario library for quick deployment

Data Management:

  • Always use Event Blocks after input collection
  • Store data in appropriate fields (user profile, custom fields)
  • Validate data before storing
  • Clear temporary data when no longer needed

Error Handling:

  • Plan for invalid input
  • Handle API failures gracefully
  • Provide clear error messages
  • Log errors for debugging

Performance:

  • Avoid unnecessary API calls
  • Cache frequently accessed data
  • Limit scenario depth (avoid excessive chaining)
  • Monitor execution time

Common Pitfalls to Avoid

PitfallProblemSolution
Missing Event BlocksInput not captured or processedAlways add Event Block after Field Input or Button Picker
Neglecting BranchesDead ends, unhandled responsesPlan for all possible user responses
Over-ComplicationConfusing flow, hard to maintainKeep scenarios focused, use modular design
No Error HandlingBreaks on unexpected inputAdd catch-all conditions and error messages
Ignoring ContextGeneric, unhelpful responsesUse user data and conversation history
Poor DocumentationTeam can’t understand or modifyAdd notes, clear naming, documentation

Benefits of Scenarios

For End Users

Consistent Experience:

  • Predictable conversation flow
  • Reliable information delivery
  • Professional interaction quality

Personalization:

  • Responses adapted to user data
  • Context-aware recommendations
  • Relevant content and offers

Efficiency:

  • Fast resolution of common issues
  • No waiting for human agents
  • 24/7 availability

For Organizations

Scalability:

  • Handle unlimited concurrent conversations
  • Serve global audience without proportional headcount
  • Process high volumes consistently

Data Collection:

  • Structured information capture
  • Complete interaction history
  • Actionable insights and analytics

Quality Assurance:

  • Standardized processes
  • Compliance adherence
  • Audit trail for all interactions

Agility:

  • Rapid deployment of updates
  • A/B testing of flows
  • Quick response to business changes

Cost Efficiency:

  • Reduced support costs (30-70% typical)
  • Lower error rates
  • Optimized resource allocation

Integration with AI and Automation

Modern scenarios leverage AI capabilities:

AI FeatureScenario ApplicationBenefit
Natural Language UnderstandingIntent detection, entity extractionBetter conversation routing
Knowledge Base SearchAutomatic answer retrievalAccurate responses without manual rules
Sentiment AnalysisDetect frustration, satisfactionProactive escalation or satisfaction surveys
Generative AIDynamic response creationFlexible, natural conversations
Predictive AnalyticsNext-best-action recommendationsOptimized user journeys

Example AI-Enhanced Scenario:

[Event: User Message]
↓
[AI Action: Detect Intent and Extract Entities]
  → Intent: "cancel_subscription"
  → Entity: subscription_tier = "premium"
↓
[Condition: Intent = "cancel_subscription"]
  → [AI Action: Analyze Sentiment]
    → If sentiment = "frustrated":
      [Priority: High]
      [Action: Assign to Senior Agent]
    → If sentiment = "neutral":
      [Send: "I can help cancel your {{subscription_tier}} plan."]
      [Button Picker: "Confirm Cancel" | "Talk to Retention"]

Measuring Scenario Success

Key Performance Indicators

KPIDescriptionTarget
Completion Rate% of users who finish scenario>80%
Drop-off PointsWhere users abandon flowMinimize
Average DurationTime to complete scenarioMinimize while maintaining quality
User SatisfactionPost-interaction rating>4/5
Containment Rate% of issues resolved without escalation>70%
Error RateInvalid inputs, failed actions<5%

Optimization Strategies

Analyze Logs:

  • Identify common drop-off points
  • Review misunderstood inputs
  • Spot technical errors

A/B Testing:

  • Test different message phrasings
  • Compare button arrangements
  • Optimize input field placement

User Feedback:

  • Survey satisfaction
  • Collect improvement suggestions
  • Monitor social media mentions

Glossary of Key Terms

TermDefinition
ScenarioPre-prepared conversation flow built from modular blocks
BlockDiscrete unit of logic or function (Event, Action, Condition, Exit)
Entry GateStarting point of scenario flow
Event BlockTriggers that pause/resume scenario based on user or system events
Action BlockOperations executed within scenario (send message, update data, API call)
Condition BlockDecision points that branch scenario flow based on evaluated criteria
Exit BlockEnds scenario or transitions to another scenario
Pattern MatchingDetecting keywords or phrases in user messages
MemorizationStoring collected user data for later use in scenario
ChainingConnecting multiple scenarios in sequence
FallbackDefault action when no conditions match
EscalationTransferring conversation from bot to human agent

References

Related Terms

Chatbot

A computer program that simulates human conversation through text or voice, available 24/7 to automa...

×
Contact Us Contact