Skip to content
ub3r.io

Chatbot Conversation Architecture · Chapter 5 · 9 min

Evaluating conversation quality

Containment, completion, fallback rate and replay-based regression testing.

Core quality metrics

To understand how well your bot performs, you must track a few key metrics consistently over time. Completion rate measures the percentage of sessions that successfully reach a terminal success state, indicating that the user's goal was met. Fallback rate tracks the number of turns where the interpreter produced no recognized event, signaling areas where your NLU or keyword matching is weak. Containment rate, the percentage of sessions completed without human handoff, is also critical for measuring efficiency. These metrics provide the quantitative foundation for your bot's ongoing development.

Understanding containment

Be careful when using containment as a metric, as it can be misleading on its own if not interpreted correctly. A bot that refuses to escalate will have a perfect containment score, but it will also likely have a terrible customer satisfaction score. Always view containment alongside completion metrics to ensure you are truly helping the user rather than just avoiding human interaction. The relationship between these two metrics tells the real story of your bot's effectiveness and its impact on the user experience.

json
{
  "metrics": {
    "completion_rate": 0.85,
    "fallback_rate": 0.05,
    "containment_rate": 0.70,
    "avg_turns": 4.2
  }
}

Analyzing and automating reviews

Regularly sample and review transcripts to understand how users are interacting with your bot in the real world. Stratify your samples by outcome to see where the conversation breaks down, and prioritize reading the failures first to identify the most critical issues. You will find that most of your system improvements come from identifying and addressing a small handful of common user phrasings that your current interpreter failed to anticipate. Deep dives into real user data are the best way to uncover hidden issues and improve your bot's performance.

Analyzing large volumes of transcripts manually is time-consuming and often impractical for growing systems. You should look for ways to automate the identification of problematic conversations using machine learning or advanced keyword searches. By flagging these sessions for human review, you can focus your team's efforts on the interactions that will provide the most valuable insights. This balanced approach to transcript analysis ensures that you are always learning and improving without being overwhelmed by data.

Regression testing and evolution

Anonymize real-world transcripts and use them to create regression tests for future versions of your bot. Instead of asserting on the exact reply text, assert on the sequence of states, which makes your test suite resilient to minor copy changes. This allows you to improve your bot's messaging without the risk of accidentally breaking the underlying logic. A strong regression suite is essential for maintaining stability in a fast-moving development environment and ensuring a consistent experience for all users.

Evaluating your bot's quality is an ongoing commitment to the user experience that requires both time and dedication. By combining quantitative metrics like fallback rates with qualitative transcript reviews, you can continuously evolve your system and meet the changing needs of your users. This balanced approach ensures your bot stays reliable and helpful as the number of users and the complexity of their requests grow. The final goal is a system that consistently exceeds user expectations while remaining technically sound and easy to maintain.

Discussion (3)

AT
Aiko Tanaka · 2026-10-05

Clear and opinionated. One nit: worth mentioning clock skew between producer and consumer when choosing the tolerance window.

ue
ub3r editors · 2026-10-12

Good point — we're adding a short section on this in the next revision.

SO
Samuel Okafor · 2026-10-06

The callout about alerting on queue age instead of depth changed how we page people. Thank you.