Containment Rate vs Resolution Rate vs Deflection Rate
Containment counts conversations that never reached a person; resolution counts problems solved; deflection counts contacts that never happened. Here are the formulas and why they disagree.
Containment rate is the share of bot conversations that ended without a person, resolution rate is the share where the customer's problem was actually solved, and deflection rate is the share of self-service sessions that did not turn into a ticket, chat or call. They measure different things, so a bot can score 80% on one and around 50% on another in the same month, and the gap between containment and resolution is often where the problems are.
Below are the formulas, how one vendor's billing unit relates to them, why the three disagree, and what to put on the dashboard.
The three formulas
Definitions
Three rates, three different questions
Write down which conversations count in the top and bottom of each before you report it.
| Rate | Formula | What it answers |
|---|---|---|
| Containment | Bot conversations that ended without a handoff to a person ÷ all bot conversations | How often the bot kept the conversation |
| Resolution | Bot conversations where the problem was solved ÷ all bot conversations | How often the bot fixed the problem |
| Deflection | Self-service sessions with no ticket, chat or call on the same issue within a set window ÷ all self-service sessions | How often self-service kept a contact out of the human queue |
Each rate has a choice hidden in its formula. For containment, decide whether a customer who closed the window after one bad answer counts as contained (in many bot logs, they do). For resolution, decide what proves a problem was solved: the customer saying so, no repeat contact within a set number of days, or a reviewer reading the transcript. For deflection, decide the window. Seven days and 30 days give different numbers from the same data.
How AI agents are billed
Some vendors bill AI agents per result rather than per seat, which makes the definition of a result a billing question as well as a reporting one. Intercom's pricing page prices Fin AI Agent at from $0.99 per outcome on every plan, and says an outcome is counted when "A customer confirms their issue is resolved", or "They don't ask for more help after Fin responds", or "Fin completes a workflow (Procedure), including handoffs". The same page says you pay nothing "If Fin can't answer or fails to perform an action, or if at any point the customer asks to speak to a human", and that an outcome is refunded if the conversation is later reopened.
From Intercom's pricing page
How one vendor bills its AI agent: per outcome, at most once per conversation
Fin AI Agent pricing on intercom.com/pricing, read 2026-10-26.
Read against the formulas above, an outcome on that page is its own unit. A customer confirming the fix is a resolution in anyone's terms. A customer who does not ask for more help may have been helped, or may have given up and phoned. A completed workflow that ends in a handoff is neither contained nor resolved by our definitions. That is a reasonable contract term, and it means the number on the invoice and your own resolution rate should be tracked separately and compared, rather than assumed to be the same.
Why the three disagree
Containment counts every conversation that did not reach a person, so it includes the customers who left without an answer and the ones who got a wrong one. Resolution removes them. In the illustrative example below, the bot contains 82.0% of 1,000 conversations but resolves 52.0%: 300 of the 820 contained conversations ended without the problem solved.
Illustrative data
Containment 82%, resolution 52%: the difference is customers who left or got a wrong answer
1,000 bot conversations, from all of them down to the ones the bot resolved. The two rust steps count as contained but were not resolved (300 conversations).
The same pattern appears in our sample chatbot report, run on synthetic data for a fictional cinema chain: 83.0% of the conversations where the customer wrote something stayed with the bot, while 43.5% of the 4,961 customer needs raised in them were not met (partly met needs count half). The two figures use different units, conversations and needs, which is itself a reason to report them side by side rather than as one number.
Illustrative and synthetic data
In both examples the bot kept more than 80% of conversations and helped with little more than half
Left bar: share of conversations that stayed with the bot. Right bar: share of conversations resolved (illustrative example) or of customer needs met, partial answers counting half (sample report). The units differ, which is why they belong side by side.
Stayed with the botResolved, or need met
Deflection disagrees with both for a different reason: its denominator is self-service sessions, many of which never touch the bot. A help-center article that answers the question counts toward deflection and toward neither of the other two. A rise in deflection can also mean the contact button got harder to find, which is why it needs the follow-up window and a check on repeat contacts in other channels.
What to track
Illustrative data
Report the gap as a count: 300 conversations the bot kept but did not help
The same 1,000 illustrative conversations: how many the bot contained, how many it resolved, and the difference.
Containment and resolution together, every week. The gap between them is the number of customers the bot kept but did not help. Report it as a count as well as a rate.
Resolution checked by sampling. Read a random sample of "resolved" conversations each month and score them against a written rubric. We explain how in how to check whether your AI agent really resolved conversations.
Repeat contacts within seven days. A customer who comes back on the same issue, in any channel, was not resolved the first time. This catches what the transcript cannot.
All three by topic. A bot can resolve password resets almost every time and fail most refund requests, and the average hides both. Splitting handoffs by topic and cause is covered in how to measure why customers escalate from a chatbot.
Billed outcomes next to your own resolution rate. If you pay per outcome, compare the invoice count with your audited resolutions each month.
For the rest of the bot metrics (engagement, fallback rate, satisfaction), see chatbot analytics: 13 metrics to track.
FAQ
Is a high containment rate good?
Only if resolution is close behind it. High containment with low resolution means customers are staying with the bot without getting help, which often shows up later as repeat contacts or bad reviews.
Is deflection the same as containment?
No. Containment is measured inside bot conversations. Deflection is measured across self-service, including help-center visits that never reach the bot, and depends on a follow-up window you choose.
Which rate should go in the board report?
Resolution, checked by sampling, with containment beside it. If the two are far apart, say why, by topic.
Dimension Labs reads every bot and AI agent conversation, labels how each one ended and why, and joins the results to repeat contacts, refunds, cancellations and revenue, so containment, resolution and the cost of the gap come from the same data. The agent builds the reports and alerts on a schedule. See AI agent analytics, or start with one file of transcripts. Plans start at $299 a month, with no demo or sales call needed.