Assignment & escalation
A conversation has three lives: bot-handled, single-agent, and multi-agent. Knowing how each transition works lets you design a queue your team won’t drown in.
In this guide:
- When the bot escalates
- Auto-escalation triggers
- Manual escalation by the user
- Assignment patterns
- Reassignment
When the bot escalates
The bot hands off in three situations:
- Confidence too low. The bot’s response confidence dropped below the escalation threshold you configured. Tune that threshold to find your sweet spot — too low and the bot sticks too long; too high and humans get spammed.
- Explicit user request. Phrases like “talk to a human”, “agent please”, “this isn’t helping” trigger immediate escalation. The trigger phrases are configurable in Behavior.
- Action failure. A required AI Action failed and the bot couldn’t recover. Better to hand off than guess.
In all three cases, the conversation moves from bot-only to Unassigned in the agent dashboard.
Auto-escalation triggers
Beyond the basic “low confidence” trigger, configure additional rules in Behavior → Escalation triggers:
- Sentiment — escalate if the user shows frustration (configurable thresholds).
- VIP customer — verified-identity users on a specific tier get fast-tracked.
- Specific topics — keyword-based (“refund”, “complaint”, “cancel my account”).
- Conversation length — escalate after N user messages without resolution.
Manual escalation by the user
Even without trigger phrases, users can manually escalate:
- A “Talk to a human” button in the widget (if enabled in Appearance).
- A reply containing the words you’ve configured (“agent”, “human”, “support”).
Assignment patterns
When a conversation lands in Unassigned, three common patterns:
- Free-for-all — any agent can pick from Unassigned.
- Round-robin — auto-assign to the next available agent. Configure in Settings → Routing.
- Skill-based — route by tag, channel, or chatbot. Conversations from
#refundsgo to the refunds team.
For larger teams, mix: round-robin within skill groups.
Step: Reassignment
Anyone with conversations.assign permission can reassign:
- Open the conversation.
- Click the assignee dropdown.
- Pick a teammate (or Unassign to put it back in the queue).
- Add a note (“Reassigning — they own this account”).
Screenshot: The assign-to-teammate dropdown in a conversation.
The reassigned agent gets a notification.
SLAs and timers
For plans that support it:
- Each conversation has an SLA timer (first-response and full-resolution).
- Conversations approaching their SLA show a yellow indicator; past-SLA show red.
- SLA misses are tracked in Performance analytics.
Configure SLAs in Settings → SLAs.
Pause / snooze
For conversations waiting on the customer:
- Snooze for N hours/days. The conversation drops out of your active queue and re-appears when the snooze expires (or sooner if the customer replies).
- This keeps your My conversations queue clean without losing track.
Tips
- Pick a single assignment pattern. Mixed patterns confuse agents.
- Document tag conventions. “#vip” should mean the same thing org-wide.
- Tune the escalation threshold weekly for the first month — your data will tell you when the bot is being too aggressive.
Troubleshooting
- Conversations sit in Unassigned forever. No one’s watching the queue. Set up Slack notifications via the Slack channel integration.
- Agents complain about too many escalations. Lower the escalation threshold and review which queries shouldn’t have escalated.
- Round-robin assigns to inactive agents. Only assign to agents who are “online” — toggle in Settings → Routing.