Ledger entryNo. 010708
Containment Rate
Also called: Bot containment rate · Self-service containment · Bot resolution rate
- Bots, flows & AI
- Practitioner
- Support teams
- Business owners
- Definition
- The share of conversations a bot resolves without a human taking over — measured honestly, it excludes abandoned chats and customers who come back.
Bots, flows & AI
Mode · formula
Work it out
Recalculate containment the honest way
The formula
Ended without handoff12,600minusAbandoned mid-flow2,100minusRepeat contacts within 48 h1,500divided byConversations entering the bot18,000equalsHonest containment rate50.0%
Honest containment rate
50.0%
Shown as a percentage (the ratio × 100).
Worked left to right
- 12,600minus2,100equals10,500
- 10,500minus1,500equals9,000
- 9,000divided by18,000equals0.5→ 50.0%
Illustrative month of 18,000 bot conversations. The honest rate is 50%, not the 70% a naive count reports.
Honest containment rate = 50.0%.
What is containment rate?
Containment rate is the percentage of conversations that a chatbot or AI agent handles from start to finish without a human handoff. If 10,000 customers start a conversation with your WhatsApp bot and 6,200 never reach an agent, the naive containment rate is 62%. It is the headline efficiency metric for bot projects, because every contained conversation is one an agent did not have to handle.
The naive number flatters the bot. A customer who gives up mid-flow never reaches an agent, so they count as contained; a customer whose problem was not solved and who messages again the next day can count as contained twice. An honest containment rate removes both: take conversations that ended without handoff, subtract those abandoned before a resolving answer and those followed by a repeat contact on the same issue within a set period (often 24–72 hours), and divide by all conversations that entered the bot.
Containment measures efficiency, not satisfaction. CSAT tells you whether the customer was happy, first-contact resolution whether the issue stayed solved, and deflection rate the wider share of demand absorbed by any self-service channel, including help articles. A high containment rate with falling CSAT usually means the bot is keeping customers away from people rather than helping them.
Key takeaways
- Containment rate is the share of conversations a chatbot or AI agent finishes without any human handoff.
- Honest containment = (conversations with no handoff − abandoned − repeat contacts) ÷ conversations that entered the bot.
- The naive rate counts customers who gave up, and repeat contacts, as successes, so it flatters a struggling bot.
- Containment measures efficiency, not satisfaction: always report it next to CSAT and first-contact resolution.
- Savings = honest contained conversations × cost per agent-handled conversation, minus bot costs including per-message WhatsApp charges.
The figures
Containment rate: key facts and limits
- Honest formula
- (No handoff − abandoned − repeat contacts) ÷ entered the bot
- Naive formula
- No handoff ÷ entered the bot
- Repeat-contact window
- Your choice, commonly 24–72 hours, same customer and intent
- Abandonment signal
- No reply to a bot question within a set time
- Report it with
- CSAT, first-contact resolution, handoff reasons
- Bot replies (India)
- Billed as service messages, ₹0.145 since 1 October 2026
How does containment rate work?
Define the denominator
Count conversations that actually entered the bot in the period. Exclude spam and test traffic, and decide up front whether replies to campaign templates are in scope.
Mark every handoff
Record each transfer to a human — explicit requests, fallback escalations and agents who join uninvited — with its reason, so you can see why containment failed.
Detect abandonment
Flag conversations where the customer stopped replying before the bot gave a resolving answer, for example no reply within 30 minutes of a bot question.
Detect repeat contacts
Link conversations from the same customer on the same intent within your window (say 48 hours). The first conversation was not really contained.
Calculate and segment
Honest containment = (no handoff − abandoned − repeat) ÷ entered. Break it down by intent, language, entry point and hour to find where it leaks.
Translate into savings
Multiply honest contained conversations by your cost per agent-handled conversation, then subtract platform fees, AI usage and the per-message WhatsApp charge for every bot reply.
Example: A Nagpur broadband provider's monthly review
The provider's WhatsApp bot handled 18,000 conversations in September, and 12,600 ended without an agent — a naive containment rate of 70%. The analyst found 2,100 conversations abandoned at the "enter your customer ID" step and 1,500 repeat contacts about the same outage within 48 hours. Honest containment was (12,600 − 2,100 − 1,500) ÷ 18,000 = 50%. Replacing the ID step with a list of connections linked to the customer's WhatsApp number lifted October's honest rate to 58%, and CSAT rose with it.
In code
Containment rate in code
-- Naive vs honest containment for September, by intent (PostgreSQL)WITH convo AS (SELECTc.id,c.intent,c.handed_off, -- true if any human took partc.resolved_by_bot, -- bot sent a resolving answer (or got a "solved" tap)EXISTS (SELECT 1 FROM conversations nWHERE n.customer_id = c.customer_idAND n.intent = c.intentAND n.started_at > c.started_atAND n.started_at <= c.started_at + INTERVAL '48 hours') AS repeat_contactFROM conversations cWHERE c.entered_botAND c.started_at >= DATE '2026-09-01'AND c.started_at < DATE '2026-10-01')SELECTintent,COUNT(*) AS entered,ROUND(100.0 * COUNT(*) FILTER (WHERE NOT handed_off) / COUNT(*), 1) AS naive_pct,ROUND(100.0 * COUNT(*) FILTER (WHERE NOT handed_off AND resolved_by_bot AND NOT repeat_contact) / COUNT(*), 1) AS honest_pctFROM convoGROUP BY intentORDER BY entered DESC;
Abandoned conversations fail the resolved_by_bot test; repeat contacts are found by looking 48 hours ahead for the same customer and intent.
Why does containment rate matter?
Containment is how a bot's business case is calculated: contained conversations multiplied by the cost of an agent-handled conversation, minus what the bot costs to run. Measured honestly, it shows where to invest — which intents leak to agents and which flows lose people halfway. Measured naively, it hides failure: a bot that frustrates customers into silence can report its best numbers ever, right up until complaints arrive through other channels.
Costly mistakes
Common mistakes with containment rate
Counting silence as success
A customer who leaves is not a resolved customer. Require a resolving bot answer — or a positive "that solved it" tap — before a conversation counts as contained.
Ignoring repeat contacts
If the same customer is back tomorrow with the same problem, yesterday's conversation failed. Link conversations by customer and intent over a fixed window.
Hiding the handoff to lift the number
Burying "talk to a person" raises containment and destroys trust — and WhatsApp's Business Messaging Policy expects a clear escalation path. Show CSAT beside containment so the trade-off is visible.
One blended number
A single rate hides the intents that leak. Report containment per intent, language and entry point, and set targets per journey.
Leaving bot costs out of the savings
Every bot reply is a billed WhatsApp message and AI models charge per token. Subtract both before claiming what the bot saved.
Best practices for containment rate
- Publish naive and honest containment side by side until everyone trusts the honest one.
- End bot journeys with a one-tap "Did this solve it?" — it cleanly separates resolved from abandoned.
- Read a random sample of contained conversations every week.
- Set targets per intent; complaints and disputes should rarely be contained at all.
Containment Rate FAQs
- What is a good chatbot containment rate?
- There is no universal benchmark; it depends on how routine your intents are. Order-status journeys can be contained far more often than billing disputes, so set targets per intent and track the trend in your honest rate.
- What is the difference between containment rate and deflection rate?
- Containment counts conversations a bot finishes without a human; deflection is the wider share of support demand absorbed by any self-service, including help articles and FAQs. Containment is measured inside the bot, deflection across channels.
- Does a high containment rate mean customers are happy?
- No. It means they did not reach a person, which can be because the bot helped or because they gave up. Check CSAT, abandonment and repeat contacts alongside it before celebrating.
- How do you turn containment into cost savings?
- Multiply honest contained conversations by your average cost per agent-handled conversation, then subtract the bot's running costs: platform fees, AI usage and the per-message WhatsApp charges for bot replies.
- Should agent-assisted chats count as contained?
- No. If a human took part, the conversation was not contained, even if AI drafted every reply. Measure agent assist separately through handling time and suggestion edit rates.
* Per-message rates for India, ex-GST: marketing, utility and authentication effective 1 July 2026; service messages ₹0.145 since 1 October 2026 (they were ₹0 until 30 September 2026). Volume commitments earn discounts — final rate is confirmed on your account; applicable GST extra. Rates for other countries differ (see the international rate table on /pricing).
Put Containment Rate to work
InfiQ is an official Meta Business Partner. Start a 7-day free trial — no card needed — and see this running on your own number.