Related Articles
Customer Journeys - Overview
Overview
Customer Journeys are the central orchestration system in brayv.ai that ensure the right AI agent chats with the right contact at the right time. A journey is a structured workflow that guides contacts from their first interaction through to your desired outcome (like booking an appointment, making a purchase, or completing a consultation).
Journeys automate the entire lead lifecycle - from initial contact through follow-up, qualification, goal achievement, and post-goal nurturing.
What Customer Journeys Do
Customer Journeys:
- Automate lead flow from lead sources directly into the right workflow
- Assign the correct AI agent at each stage of the customer relationship (or turn off AI at a particular stage, eg when goal stage is reached)
- Trigger stage transitions automatically based on actions (appointments booked, completed, etc.)
- Track opportunities and conversion through each stage
- Send initial outreach messages when contacts enter stages
- Handle duplicate leads gracefully when someone re-enters
- Orchestrate email campaigns and automation at each stage
Why You Need Journeys
Without journeys, you'd need to manually:
- Assign the right AI agent to each contact
- Switch agents when the contact's situation changes
- Track which stage each lead is in
- Remember to follow up at the right times
- Know which leads need what kind of engagement
Journeys do all of this automatically, ensuring no lead falls through the cracks and every contact gets the right experience.
Journey Types
When creating a journey, you choose a template that determines its structure:
Appointment-Based Journeys
Use for: Businesses that book appointments/consultations as their first goal for new leads.
Examples: Home services, professional services, healthcare, real estate showings
Structure:
- Starting Line - Contact added to journey
- Active Stages (optional) - Pre-qualification, information gathering
- Appointment Scheduled (Goal) - Primary goal achieved
- Appointment Ended (Auto-created) - Post-appointment follow-up
- Post-Goal Stages (optional) - Additional nurturing, upsells, reviews
Key Feature: Automatically transitions contacts between stages based on appointment events (created, completed, cancelled, no-show).
Non-Appointment Journeys
Use for: Goals that don't involve scheduling appointments.
Examples: Asking customers for feedback/reviews, service requests, lead qualification without booking, etc.
Structure:
- Starting Line - Contact added to journey
- Active Stages (optional) - Nurturing, qualification
- Qualified (Goal) - Primary goal achieved
- Post-Goal Stages (optional) - Additional nurturing
Key Feature: More flexible - transitions happen based on the AI achieving its configured goal (eg, the user has provided certain requested info), manual updates.
Journey Stages Explained
Every journey is made up of stages. Each stage represents a phase in the customer's journey and can have its own AI agent, automation, and triggers.
Stage Types
Starting Line Stage
Purpose: The entry point where contacts begin their journey.
What happens here:
- Contact is enrolled in the journey (automatically from lead source or manually)
- Opportunity is created with status "open"
- AI agent assigned to this stage takes over the conversation
- Initial outreach messages sent (if configured) (recommended)
- Agent begins gathering information, qualifying, and working toward the goal
Configuration:
- AI Agent: Almost always required - this is your lead engagement agent
- Initial Outreach: Optional message sent immediately when contact enters (recommended)
- Follow-up Sequences: Configured in the AI agent to re-engage unresponsive leads (recommended - you choose frequency and tone/content)
Typical Agent Instructions:
- Gather service details
- Confirm/collect address
- Qualify the lead
- Book an appointment (for appointment journeys)
Active Stages
Purpose: Optional intermediate stages between Starting Line and the Goal.
Use cases:
- Typically only one, to show leads that have been responsive, but have not yet reached the goal
- Advanced use case: you want to group certain leads that have responded a certain way, even though all leads in the journey are pushing for the same goal. Can move opportunities to these stages manually without altering the goal the agent is pushing for.
What happens here:
- Recommended: DON'T switch agent configuration in active stages (keep same agent - starting line agent is still assigned, still working)
- Different campaigns can be triggered
- Used for complex workflows that need more than just "start → goal"
Note: Most journeys don't need multiple active stages. Only add them if you have a clear intermediate step.
Goal Stages
Purpose: The primary objective of the journey.
Types:
-
Appointment Created Goal (Appointment journeys)
- Automatically triggered when appointment is booked
- Contact moves here the moment appointment is created
- AI agent at this stage handles pre-appointment questions
- Be SURE to add calendar triggers (appointment created) for EACH calendar your starting line agent can book into, otherwise leads booked into those calendars will not automatically move to this stage
- Highly Recommended: Configure an agent at this stage that understands the appointment has been booked, and does not have follow ups. If you keep the starting line agent (you dont change agent configuration at this stage) you will likely experience suboptimal conversation results. (eg, agent attempting to book again, even though an appointment has already been booked). If a new (properly configured) agent takes over at this stage you will not experience that issue. Alternatively you can configure the settings to completely turn off AI at this stage.
- You can easily add a properly configured agent by clicking the Add Text Agent button. At this stage it will create an agent that has instructions relevant to the stage. You can adjust as necessary. (give it access to the appointment details only, instead of the appointment details AND reschedule links if you dont want contacts to be able to reschedule, etc.)
-
Qualification Goal (Qualification/Non-appointment journeys)
- You define what constitutes success
- Transition triggered by AI executing goal achieved tool or manual update
- Example: "Contact provided xyz information"
What happens here:
- Opportunity status is automatically marked as "completed"
- Configure stage to transition to new agent without follow up, but can still answer question, or turn off AI.
- Contact has achieved what you wanted them to achieve
Configuration:
- Is Primary Goal: Mark this stage as the main goal
- Calendar Trigger: (Appointment journeys only) Specify which calendar triggers this stage
Post-Goal Stages
Purpose: What happens after the primary goal is achieved.
Common uses:
-
Appointment Ended (Auto-created for appointment journeys)
- Contact automatically moves here when appointment time passes
- If no other post goal stages, opportunity automatically marked as "completed"
- Opportunity can still be manually be marked "won" or "lost"
-
Custom Post-Goal Stages
- Upsell opportunities
- Request reviews/testimonials
- Schedule follow-up services
- Long-term nurturing
What happens here:
- Journey's 'Primary Goal' has been achieved but contact can still be nurtured toward a 'secondary goal'
- Recommended: Make AI agents here less persistent (primary goal already achieved)
- Focus shifts to retention, reviews, and additional opportunities
Stage Configuration Options
When configuring any stage, you can set:
Basic Settings:
- Name: Clear, descriptive name for the stage (certain stages are auto-named and cannot be changed)
- Description: Internal notes about what this stage represents
AI Agent Assignment: Three options:
- Assign Specific Agent: Select or create an AI agent for this stage
- Remove AI Agent: Turn off AI when contact enters this stage
- Keep Previous Agent: Don't change the agent (maintain continuity)
Campaign Assignment:
- Optionally enroll contact in an email campaign when they enter this stage
- Or remove from all campaigns
Initial Outreach:
- Send 1 message immediately when contact enters this stage (if new contact another 'compliance' message will send. eg. 'you can reply STOP to unsubscribe'. This is automatic, mandatory, and cannot be changed)
- Useful for immediately engaging your leads.
- Recommended for all new lead journeys.
Calendar Triggers (Appointment Journeys):
- Automatically move contacts to this stage when calendar events occur
- Available triggers:
- Appointment Created - When appointment is booked (by AI, through the calendar widget, or by a team member inside brayv.ai)
- Appointment Completed - Marked complete in calendar (by a team member)
- Appointment Time Passed - System automatically detects appointment time has passed (this stage type is automatically added when a journey is saved with an Appointment Scheduled stage)
- Appointment Cancelled - Appointment cancelled
- Appointment No-Show - Contact didn't show up (triggered on a team member marking the appointment status as no-show)
How Contacts Flow Through Journeys
Enrollment (Getting Into a Journey)
Contacts enter journeys through:
1. Lead Sources (Automatic) Most common method. Configure your lead sources to automatically add contacts to journeys:
- Forms: Web forms can have journey enrollment rules
- Webhooks: External systems can add contacts via webhook lead sources
- Facebook Lead Forms: Automatically add FB leads to journeys
- Chat Widgets: Conversations are initially handled by Global default agent for your account, can add to journey when relevant.
2. Conditional Tools (Automatic) AI agents can add contacts to journeys:
- Global agent detects interest: can add to journey (via conditional tool execution)
- One journey agent hands off to another journey (via conditional tool execution)
- Example: Conditional Tool Trigger Condition "the user indicates they need an HVAC repair or replacement", Action: "add to HVAC Journey"
3. Bulk Enrollment (Manual) From the Contacts page:
- Select multiple contacts
- Choose "Bulk Add to Journey"
- Select the journey
- All selected contacts enter at the Starting Line stage
- Useful for reactivation pushes for old lead lists, specific promotions/sales
- Highly recommended to create separate journeys for bulk lead additions so you have better data and insights onto conversion rates etc.
- Bulk Journey enrollments are only available in accounts that have been actively texting live leads for at least 30 days and are not on a free trial.
4. Individual Enrollment (Manual) From a single contact's detail page:
- Click "Add to Journey"
- Select the journey
- Contact enters at Starting Line
Stage Transitions (Moving Through Stages)
Contacts move between stages via:
1. Calendar Triggers (Automatic - Appointment Journeys)
- Appointment booked → Moves to "Appointment Scheduled" stage
- Appointment time passes → Moves to "Appointment Ended" stage (no calendar trigger needs to be added to this stage. This is automatically tracked because it is paired to the appointment scheduled stage preceeding it)
- Appointment cancelled → Can move to specific stage (if configured)
- Appointment no-show → Can move to specific stage (if configured)
2. AI Goals (Automatic) AI agents can move to goal stage for a configured, "completion" goal.
3. Manual Updates From the contact's opportunity card:
- From the "opportunities" view on the Journeys page, drag the opportunity card to the desired stage.
- Certain trigger based stages should not or cannot be reached with this method. I.e. if you want to move an opportunity to an appointment scheduled stage, book an appointment in the relevant calendar for that contact and the stage transition will happen automatically. Do not drag the opportunity there without booking, or the rest of the journey won't work properly (there's no connected appointment for it to pay attention to)
4. Time-Based (Advanced) For non-appointment goals, you can configure time-based transitions, though this is less common. This is a Beta feature and not yet available in all accounts.
What Happens When a Contact Transitions
When moving from Stage A to Stage B:
-
Current stage actions complete
- Current AI agent's follow-up sequence stops
-
Contact moves to new stage
- Opportunity updates to new stage
-
New stage actions begin
- New AI agent is assigned, or AI is turned off (depending on configuration)
- Initial outreach messages sent (if configured, only applicable on Starting Line stages)
- Campaign enrollment happens (if configured)
- New AI agent's follow-up sequence begins (if enabled)
-
Contact continues
- Conversation continuity is maintained
- Contact sees seamless handoff
- New agent has full context and conversation history
Journey Opportunities
Every time a contact enters a journey, an Opportunity is created. Opportunities track the contact's progress and outcome.
Opportunity Statuses
Open
- Contact is actively moving through the journey
- AI agent is engaging, following up
- Goal not yet achieved
- This is the default status when journey starts
Completed
- Last configured Goal in Journey was achieved (for qualification/non-appointment goals), Or Last configured Goal in Journey was achieved AND the appointment end time has passed (for appointment goals)
- Indicates successful completion of the entire journey
- Set automatically. Agnostic of (win/loss status that could be added later)
Won
- Contact successfully converted (conversion/win = whatever you want it to depending on how you track success)
- Deal closed, sale made, or positive outcome achieved
- This is not added by the AI, this is a manual option for you to track win percentage (ie, things that happen after the AI is done interacting with the lead)
- Marking an opportunity as won before the AI has reached its goal, will supersede the AI and end the journey and any scheduled followups.
Lost
- Contact is no longer interested or viable
- Mark with a lost reason (not interested, out of service area, went with competitor, etc.)
- Journey ends, AI turns off, follow-ups stop
- You can configure conditional tools in AI agents to mark opportunities as lost
Ended
- Journey is over, followups will stop
- You can configure conditional tools in AI agents to mark opportunities as ended
- When an agent reaches the end of its followup sequence for a contact without the contact already reaching the goal or already being removed from the journey, the AI will mark the opportunity as "ended"
- Can still later be marked as "won" or "lost"
- Only used by AI/journey automations. You can achieve the same result by updating an opportunity to "lost" status.
Marking Opportunities
From Contact Detail Page:
- View the Opportunities section
- Click on the current opportunity (or past opportunity if you want to update the status)
- Update status to Won, Lost
- Provide lost reason if applicable
From Conversations Page:
- View the Opportunities section (right of the chat, below the appointments)
- Click on the current opportunity (or past opportunity if you want to update the status)
- Update status to Won, Lost
- Provide lost reason if applicable
Via Conditional Tools: AI can automatically end journeys:
- "Not Interested" tool → Ends journey with status "ended"
- Can be configured to mark as "lost" with specific reason
- You can specify any condition for the AI to execute a tool with an End Journey action
Manual Journey Management: From Journeys page > Opportunities tab:
- See all open opportunities
- Drag between status columns (Kanban view)
- Click on a particular opportunity card to update the status (won/lost)
- opportunities that are "open", "lost", "ended", or "completed" can be marked as "won"
- opportunities that are "open", "ended" or "completed" can be marked as "lost"
- opportunities that are "won" cannot be marked as "lost"
Duplicate Lead Handling
What happens when a contact who's already been in a journey gets added again?
If no "open" open opportunities exist, a new opportunity will automatically be created.
If there is an open opportunity in a different journey, that opportunity will be marked as "ended" and a new opportunity will be created in the correct journey.
Options when open opportunity exists in the same journey
Notify Only
- System notifies you that the contact is a duplicate
- Does NOT add them to the journey again
- Does NOT send them any messages
- Preserves their current status
Send Continuation Message (Default)
- Recommended
- System recognizes returning contact
- Sends a "continuation message" acknowledging their return (configure this in journey settings)
- Does NOT restart the journey
- Example: "Hi {contact.first_name}, I see you reached back out to us through {contact.friendly_source}! Is there anything else I can help with regarding {contact.hook}?"
Very useful for:
- Multiple touchpoints (saw your ad again, forgot they reached out)
- Leads from lead aggregators (e.g. they reached out to you through your website, and the next day submitted a form on Angi's and Angi sent you the lead)
Configure in: Journey settings when creating/editing journey
Journey Management
Creating a Journey
Step 1: Go to Journeys page
Step 2: Click "Create Journey"
Step 3: Choose a template:
- Appointment-Based: For businesses that book consultations/appointments
- Non-Appointment: For other goal types
- From Scratch: Build completely custom journey
Step 4: (If appointment-based) Select which calendar triggers the goal stage
Step 5: Configure journey details:
- Name (e.g., "New Pool Build Leads", "HVAC Service Requests")
- Description
- Duplicate lead handling preference
Step 6: Configure each stage:
- Add/remove stages as needed
- Assign AI agents
- Be sure to configure followups and booking options for agents at the starting line stage
- Set up calendar triggers
- Configure initial outreach
- Customize stage names
Step 7: Save the journey
Editing a Journey
From Journeys Page:
- Click the Edit icon on any journey card
- Opens the Journey Builder
- Modify stages, agents, triggers, etc.
- Save changes
Changes take effect:
- Immediately for new contacts entering the journey
- For existing contacts, changes apply when they move to the next stage
- Active AI agents change as soon as you make changes to them.
- Deleting an agent from a stage that still has contacts assigned to it will leave orphaned opportunities. Consider creating a different journey for your new use-case or simply updating the existing agent's configuration/instructions.
Deleting a Journey
Warning:
- Cannot be done for journeys with existing opportunties
- Cannot be undone
To delete:
- Go to Journeys page
- Click delete icon on journey card
- Confirm deletion
Setting a Default Journey
You can mark one journey as your default journey. This journey:
- Is suggested first when manually adding contacts to journeys
- May be used by integrations as a default destination
- Displays a star icon in the journey list
To set:
- Click the star icon on any journey card
- Only one journey can be default at a time
Journey Broadcasts
You can send a one-off message to all contacts in a given Journey who have open opportunities and have not yet reached the goal stage
- Click the megaphone icon on any journey card
- Enter your message (you can use variables like
contact.first_nameby typing the{key) - Click
Send Broadcast - Your broadcast will be queued up. Messages will only send between 8AM - 6PM in your account timezone
- Contacts who are in active conversations (sent an inbound message in the last hour) or have text AI disabled will be temporarily skipped, but will be rechecked for sending viability 2 more times
- Contacts with any closed status (ended, lost, completed, won) will not be included at all
- Contacts with DND SMS enabled will be skipped with no retry
this feature can come in handy when you are running a bulk promotion to old leads, and you want your fresh leads to also be made aware of it. Old leads should be added in bulk to a dedicated journey, but you can also quickly shoot off a message to open fresh leads. We would still recommend updating your agents' instructions in your new leads journey with something brief to make it aware of the generalities of the current promotion.
The Typical Journey Setup
For Most Home Services Businesses
Journey Name: "New Service Requests" (or specific service type)
Stages:
-
Starting Line - "New Lead"
- AI Agent: Configured with:
- Gather service description
- Confirm address
- Book consultation appointment
- Follow-up sequence (10 messages over 60 days)
- Conditional tools for "not interested" and "bad contact info" and any notifications you may want to receive about particular things the contact mentions
- AI Agent: Configured with:
-
Appointment Scheduled (Goal)
- Trigger: Calendar - Appointment Created
- AI Agent: Configured with:
- Answer pre-appointment questions
- Provide reschedule/cancel links
- No follow-up sequence
-
Appointment Ended (Auto-created)
- Trigger: Calendar - Appointment Time Passed (automatic)
- AI Agent: Typically no configuration needed unless you have post goal stages. If no secondary goals are configured, journey will end here, no more proactive AI followups, if contact texts back in later, they will be handled by global default agent for your account. If you do configure secondary goals, add an agent here to start pursuing that goal.
Lead Sources Connected:
- Website form → Auto-add to this journey
- Facebook lead forms → Auto-add to this journey
- Webhooks (leads from other form providers, automation tools like Zapier, or lead aggregators) → Auto-add to this journey
- Chat widget → Global agent hands off to this journey when appropriate
Result: Fully automated lead engagement from first contact through post-service follow-up.
For Professional Services (Consultations, Coaching, etc.)
Journey Name: "New Client Onboarding"
Stages:
-
Starting Line - "Initial Inquiry"
- AI Agent gathers information about their needs
- Follow-up sequence
- Books consultation call
-
Consultation Scheduled (Goal)
- Pre-call preparation
- Reminder messages (configured in calendar settings)
-
Appointment Ended (Auto-created)
- Trigger: Calendar - Appointment Time Passed (automatic)
- AI Agent: Typically no configuration needed unless you have post goal stages. If no secondary goals are configured, journey will end here, no more proactive AI followups, if contact texts back in later, they will be handled by global default agent for your account. If you do configure secondary goals, add an agent here to start pursuing that goal.
Journey Analytics & Monitoring
Opportunities Board (Kanban View)
Location: Journeys page > Opportunities tab
What you see:
- All opportunities organized by status (Open, Won, Lost, Ended, Completed)
- Drag opportunities between columns to update stage (where applicable)
- Filter by journey
- See contact names, journey names, and time in stage
Use for:
- Quick overview of pipeline
- Manual status updates
- Identifying stalled opportunities
- Tracking conversion rates
Journey Metrics
See your general journey metrics on the main Dashboard
- New opportunities
- Opportunity percentage that reaches primary goal
- Opportunities by source
- More in depth reporting is planned
Best Practices
Keep Journeys Simple
Do:
- Start with the basic template structure
- Only add stages when there's a clear reason
- Most businesses only need 2-4 stages total
Don't:
- Create complex multi-branch journeys
- Add stages "just in case"
- Overthink the structure
Name Stages Clearly
Use names that describe what's happening:
- ✅ "Appointment Scheduled", "Awaiting Proposal Response", "Post-Service Follow-up"
- ❌ "Stage 2", "Middle", "After"
Configure AI Agents at Key Stages
Always configure:
- Starting Line stage (your lead engagement agent)
- Goal stage (appointment scheduled / qualified)
Consider configuring:
- Post-goal stages if you want specific follow-up that is working towards a defined 'secondary goal'
Usually skip:
- Active stages most often don't need their own agent (keep previous agent)
Use Initial Outreach Wisely
Good uses:
- "Thanks for reaching out! Can I ask you a couple questions?..."
- "Welcome! I'm Alex, I'll be helping you with your [hook] request. Got a moment to chat?"
Avoid:
- Long messages that ask for too much or provide too much info
- Messages that dont have a direct CTA (you should ask an easy question for the contact to respond to)
Human conversations
- If you manually interact with your leads, and dont reach any outcome, just make sure you turn the AI back on and it will keep pushing for the goal
- If you determine the lead is not a fit/not interested etc., update the opportunity to "lost" so the AI will stop reaching out
- If you want to book an appointment with the lead, book it in brayv.ai so the opportunity will automatically move to the correct journey stage
- Marking the opportunity as "won" will also end the journey, use when appropriate.
Connect Lead Sources
Manually adding contacts to journeys works, but automation is better:
- Configure forms to auto-enroll
- Set up webhooks from other systems
- Configure Facebook lead forms
- Let global agent hand off via conditional tools
This ensures no lead is missed and response time is instant.
Use Duplicate Lead Handling Thoughtfully
Choose "Notify Only" if:
- You don't want to re-engage contacts who already went through
- You have high-value deals and want manual control
Choose "Send Continuation Message" if:
- For most use cases: lets the contact know that you got their request/inquiry and reminds them that they've already been in communication with you and you're ready to help.
Troubleshooting
Problem: Contact not moving to next stage
Solution:
- Appointment journeys: Verify calendar trigger is configured correctly
- Check that the calendar trigger is set on the appointment scheduled stage for that particular calendar
- Verify the appointment was created in the correct calendar
Problem: AI agent not assigned when contact enters stage
Solution:
- Open stage configuration
- Verify AI agent is selected (not "Remove AI" or "Keep Previous")
- Check that AI agent still exists (wasn't deleted)
- Save the stage again
Problem: Initial outreach messages not sending
Solution:
- Verify initial outreach is enabled on the stage
- Ensure account A2P status is "approved"
- Check contact's DND status
Problem: Opportunity stuck in old stage after transition
Solution:
- Check that you are looking at the contact's "open" opportunity
- Opportunities with any other status do not automatically change stages
- Check the stage trigger, ie you think an opportunity should have moved to the appointment scheduled stage, but it didn't. Does the appointment scheduled stage have a trigger for the calendar the appointment was created in?
- Contact support if issue persists
Problem: Can't delete a stage
Solution:
- Some stages can't be deleted:
- Starting Line stage (required)
- Primary Goal stage (required)
- Stages that are part of appointment pairs (scheduled/ended)
- Convert goal stage to non-goal stage first, then delete
- Or delete the entire journey and start over
Problem: AI follow-ups continuing after marking opportunity "won"
Solution:
- Verify opportunity status was actually saved
- Check that there are no other "open" opportunities for the contact and mark as 'won' or 'lost' as needed
- Manually turn off text AI for the contact if needed
- Check contact Activity History - contact may have filled out another form and re-entered the journey (creating a new 'open' opportunity after you marked the previous one as 'won' or 'lost')
Related Features
- AI Text Agents - Configure agents for each journey stage
- AI Voice Agents - Configure outbound voice AI for new leads
- Forms - Automatically add form leads to journeys
- Webhooks - Automatically add webhook leads to journeys
- Calendars - Set up calendar triggers for appointment journeys
- Conditional Tools - Automate stage transitions and actions
- Managing Contacts - Manual journey enrollment and management