Skip to content
Product
PlatformPricingDimensionsIntegrationsSecurityCompare
Solutions · by use case
Customer, guest and fan experienceProduct feedback and prioritizationRevenue, churn and retentionAgenciesContact center performanceAI agent and chatbot analyticsMulti-location performanceReviews and competitive benchmarking
Solutions · by industry
Hotels and hospitalityRestaurants and food serviceFitness and leisureRetail and e-commerceSports and live entertainmentInsuranceBanking and financial servicesSoftware and SaaSAutomotiveConsumer products and CPGContact centers and BPOsPublic sector and nonprofitReal estateGaming and betting
Learn
Artifacts GalleryCustomer storiesResearchBlogThought leadershipLessons Log in Start now
Blog

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.

RateFormulaWhat it answers
ContainmentBot conversations that ended without a handoff to a person ÷ all bot conversationsHow often the bot kept the conversation
ResolutionBot conversations where the problem was solved ÷ all bot conversationsHow often the bot fixed the problem
DeflectionSelf-service sessions with no ticket, chat or call on the same issue within a set window ÷ all self-service sessionsHow often self-service kept a contact out of the human queue
Definitions as we use them. Vendors and teams vary, especially on deflection, so the useful part is stating yours.

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.

$0.99per Fin outcome, on every planIntercom pricing
$1.99per voice outcome for Fin Voice, via salesIntercom pricing
1outcome per conversation at most, refunded if the conversation is reopenedIntercom pricing
Source: intercom.com/pricing, read 2026-10-26. Prices can change; check the page.

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).

1,000
All bot conversations
-180
Handed to a person
-170
Left without an answer
-130
Wrong or partial answer
520
Resolved by the bot
Illustrative numbers written for this post, not customer data. Containment = 820 / 1,000 = 82.0%; resolution = 520 / 1,000 = 52.0%.

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

Illustrative example1,000 conversations
82.0%52.0%
Sample cinema report4,074 conversations, 4,961 needs
83.0%56.5%
Illustrative numbers from this post, and the headline of a Dimension Labs chatbot report run on synthetic data for a fictional cinema chain; the chain and its figures are invented. Needs met = 100% minus the 43.5% not 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.

Containedended without a person
820
Resolvedproblem solved by the bot
520
Kept, not helpedleft, or a wrong or partial answer
300
0250500750
Illustrative numbers written for this post, not customer data: 820 contained minus 520 resolved = 300 (170 left without an answer, 130 got a wrong or partial answer).
  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

Dimension Labs/Start with one file From $299 a month

Stop reporting. Start understanding.

Start with one file. Ask why a number moved. Plans from $299 a month, no demo and no contract on monthly plans.