customer-support-chat changedabout-claude/use-case-guides/customer-support-chat
Nearest release: v2.1.307, published an hour after this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
Recorded here
Lines+42added
Lines−42removed
From line
21
where the diff opens
First seen
14 Aug 2026
this site's first read of the page
Recorded edits12to this page, all time
The whole hunk
from line 21, old and new numbered
/
from line 21
2121
2222### Decide whether to use Claude for support chat
2323
24Here are some key indicators that you should employ an LLM like Claude to automate portions of your customer support process:
24Here are some key indicators that you should employ an LLM such as Claude to automate portions of your customer support process:
2525
2626<AccordionGroup>
2727 <Accordion title="High volume of repetitive queries">
from line 29
2929 </Accordion>
3030
3131 <Accordion title="Need for quick information synthesis">
32 Claude can quickly retrieve, process, and combine information from vast knowledge bases, while human agents may need time to research or consult multiple sources.
32 Claude can quickly retrieve, process, and combine information from vast knowledge bases, whereas human agents might need time to research or consult multiple sources.
3333 </Accordion>
3434
3535 <Accordion title="24/7 availability requirement">
36 Claude can provide round-the-clock support without fatigue, whereas staffing human agents for continuous coverage can be costly and challenging.
36 Claude can provide support at all hours without fatigue, whereas staffing human agents for continuous coverage can be costly and challenging.
3737 </Accordion>
3838
3939 <Accordion title="Rapid scaling during peak periods">
from line 41
4141 </Accordion>
4242
4343 <Accordion title="Consistent brand voice">
44 You can instruct Claude to consistently represent your brand's tone and values, whereas human agents may vary in their communication styles.
44 You can instruct Claude to consistently represent your brand's tone and values, whereas human agents might vary in their communication styles.
4545 </Accordion>
4646</AccordionGroup>
4747
from line 48
4848Some considerations for choosing Claude over other LLMs:
4949
5050* You prioritize natural, nuanced conversation: Claude's sophisticated language understanding allows for more natural, context-aware conversations that feel more human-like than chats with other LLMs.
51* You often receive complex and open-ended queries: Claude can handle a wide range of topics and inquiries without generating canned responses or requiring extensive programming of permutations of user utterances.
51* You often receive complex and open-ended queries: Claude can handle a wide range of topics and inquiries without generating scripted responses or requiring extensive programming of permutations of user utterances.
5252* You need scalable multilingual support: Claude's multilingual capabilities allow it to engage in conversations in over 200 languages without the need for separate chatbots or extensive translation processes for each supported language.
5353
5454### Define your ideal chat interaction
from line 63
6363* **Customer:** Asks about insurance for their new electric car
6464 * **Claude:** Provides relevant information about electric vehicle coverage
6565
66* **Customer:** Asks questions related to unique needs for electric vehicle insurances
66* **Customer:** Asks questions related to unique needs for electric vehicle insurance
6767 * **Claude:** Responds with accurate and informative answers and provides links to the sources
6868
6969* **Customer:** Asks off-topic questions unrelated to insurance or cars
from line 71
7171
7272* **Customer:** Expresses interest in an insurance quote
7373
74 * **Claude:** Ask a set of questions to determine the appropriate quote, adapting to their responses
74 * **Claude:** Asks a set of questions to determine the appropriate quote, adapting to their responses
7575 * **Claude:** Sends a request to use the quote generation API tool along with necessary information collected from the user
7676 * **Claude:** Receives the response information from the API tool use, synthesizes the information into a natural response, and presents the provided quote to the user
7777
78* **Customer:** Asks follow up questions
78* **Customer:** Asks follow-up questions
7979
80 * **Claude:** Answers follow up questions as needed
80 * **Claude:** Answers follow-up questions as needed
8181 * **Claude:** Guides the customer to the next steps in the insurance process and closes out the conversation
8282
8383<Tip>
84 In the real example that you write for your own use case, you might find it useful to write out the actual words in this interaction so that you can also get a sense of the ideal tone, response length, and level of detail you want Claude to have.
84 In the real example that you write for your own use case, you might find it useful to write the actual words in this interaction so that you can also get a sense of the ideal tone, response length, and level of detail you want Claude to have.
8585</Tip>
8686
8787### Break the interaction into unique tasks
from line 133
133133
134134<AccordionGroup>
135135 <Accordion title="Query comprehension accuracy">
136 This metric evaluates how accurately Claude understands customer inquiries across various topics. Measure this by reviewing a sample of conversations and assessing whether Claude has the correct interpretation of customer intent, critical next steps, what successful resolution looks like, and more. Aim for a comprehension accuracy of 95% or higher.
136 This metric evaluates how accurately Claude interprets customer inquiries across various topics. Measure this by reviewing a sample of conversations and assessing whether Claude has the correct interpretation of customer intent, critical next steps, what successful resolution looks like, and more. Aim for a comprehension accuracy of 95 percent or higher.
137137 </Accordion>
138138
139139 <Accordion title="Response relevance">
140 This assesses how well Claude's response addresses the customer's specific question or issue. Evaluate a set of conversations and rate the relevance of each response (using LLM-based grading for scale). Target a relevance score of 90% or above.
140 This assesses how well Claude's response addresses the customer's specific question or issue. Evaluate a set of conversations and rate the relevance of each response (using LLM-based grading for scale). Target a relevance score of 90 percent or above.
141141 </Accordion>
142142
143143 <Accordion title="Response accuracy">
144 Assess the correctness of general company and product information provided to the user, based on the information provided to Claude in context. Target 100% accuracy in this introductory information.
144 Assess the correctness of general company and product information provided to the user, based on the information provided to Claude in context. Target 100 percent accuracy in this introductory information.
145145 </Accordion>
146146
147147 <Accordion title="Citation provision relevance">
148 Track the frequency and relevance of links or sources offered. Target providing relevant sources in 80% of interactions where additional information could be beneficial.
148 Track the frequency and relevance of links or sources offered. Target providing relevant sources in 80 percent of interactions where additional information could be beneficial.
149149 </Accordion>
150150
151151 <Accordion title="Topic adherence">
152 Measure how well Claude stays on topic, such as the topic of car insurance in the example implementation. Aim for 95% of responses to be directly related to car insurance or the customer's specific query.
152 Measure how well Claude stays on topic, such as the topic of car insurance in the example implementation. Aim for 95 percent of responses to be directly related to car insurance or the customer's specific query.
153153 </Accordion>
154154
155155 <Accordion title="Content generation effectiveness">
156 Measure how successful Claude is at determining when to generate informational content and how relevant that content is. For example, in this implementation, you would be determining how well Claude understands when to generate a quote and how accurate that quote is. Target 100% accuracy, as this is vital information for a successful customer interaction.
156 Measure how successful Claude is at determining when to generate informational content and how relevant that content is. For example, in this implementation, you would be determining how well Claude identifies when to generate a quote and how accurate that quote is. Target 100 percent accuracy, as this is vital information for a successful customer interaction.
157157 </Accordion>
158158
159159 <Accordion title="Escalation efficiency">
160 This measures Claude's ability to recognize when a query needs human intervention and escalate appropriately. Track the percentage of correctly escalated conversations versus those that should have been escalated but weren't. Aim for an escalation accuracy of 95% or higher.
160 This measures Claude's ability to recognize when a query needs human intervention and escalate appropriately. Track the percentage of correctly escalated conversations versus those that should have been escalated but weren't. Aim for an escalation accuracy of 95 percent or higher.
161161 </Accordion>
162162</AccordionGroup>
163163
from line 165
165165
166166<AccordionGroup>
167167 <Accordion title="Sentiment maintenance">
168 This assesses Claude's ability to maintain or improve customer sentiment throughout the conversation. Use sentiment analysis tools to measure sentiment at the beginning and end of each conversation. Aim for maintained or improved sentiment in 90% of interactions.
168 This assesses Claude's ability to maintain or improve customer sentiment throughout the conversation. Use sentiment analysis tools to measure sentiment at the beginning and end of each conversation. Aim for maintained or improved sentiment in 90 percent of interactions.
169169 </Accordion>
170170
171171 <Accordion title="Deflection rate">
172 The percentage of customer inquiries successfully handled by the chatbot without human intervention. Typically aim for 70-80% deflection rate, depending on the complexity of inquiries.
172 The percentage of customer inquiries successfully handled by the chatbot without human intervention. Typically aim for a 70–80 percent deflection rate, depending on the complexity of inquiries.
173173 </Accordion>
174174
175175 <Accordion title="Customer satisfaction score">
from line 185
185185
186186### Choose the right Claude model
187187
188The choice of model depends on the trade-offs between cost, accuracy, and response time.
188The choice of model depends on the trade-offs among cost, accuracy, and response time.
189189
190For customer support chat, Claude Opus 5.5 is well suited to balance intelligence, latency, and cost, including the most complex support scenarios that require deep reasoning across long, multi-step conversations. However, for instances where you have conversation flow with multiple prompts including RAG, tool use, or long-context prompts, Claude Haiku 5.5 may be more suitable to optimize for latency. [Effort](https://platform.claude.com/docs/en/build-with-claude/effort) is its main control for speed: `low` is the fastest level, suited to chat and short tool tasks.
190For customer support chat, Claude Opus 5.5 is well suited to balance intelligence, latency, and cost, including the most complex support scenarios that require deep reasoning across long, multistep conversations. However, for instances where you have conversation flow with multiple prompts including RAG, tool use, or long-context prompts, Claude Haiku 5.5 might be more suitable to optimize for latency. [Effort](https://platform.claude.com/docs/en/build-with-claude/effort) is its main control for speed: `low` is the fastest level, suited to chat and short tool tasks.
191191
192192### Build a strong prompt
193193
from line 203
203203```
204204
205205<Tip>
206 While you may be tempted to put all your information inside a system prompt as a way to separate instructions from the user conversation, Claude actually works best with the bulk of its prompt content written inside the first
206 Although you might be tempted to put all your information inside a system prompt as a way to separate instructions from the user conversation, Claude actually works best with the bulk of its prompt content written inside the first
207207
208208 `User`
209209
from line 280
280280"""
281281```
282282
283Now that you have your static content, add at least 4-5 sample "good" interactions to guide Claude's responses. These examples should be representative of your ideal customer interaction and can include elements such as guardrails and tool calls.
283Now that you have your static content, add at least 4–5 sample "good" interactions to guide Claude's responses. These examples should be representative of your ideal customer interaction and can include elements such as guardrails and tool calls.
284284
285285```python
286286EXAMPLES = """
from line 349
349349"""
350350```
351351
352You will also want to include any important instructions outlining dos and don'ts for how Claude should interact with the customer. This may draw from brand guardrails or support policies.
352You will also want to include any important instructions outlining dos and don'ts for how Claude should interact with the customer. This might draw from brand guardrails or support policies.
353353
354354```python
355355ADDITIONAL_GUARDRAILS = """Please adhere to the following guardrails:
from line 384
384384For this example, start with one tool for calculating the quote.
385385
386386<Tip>
387 As a reminder, this tool will not perform the actual calculation, it will just signal to the application that a tool should be used with whatever arguments specified.
387 As a reminder, this tool does not perform the actual calculation; it just signals to the application that a tool should be used with whatever arguments specified.
388388</Tip>
389389
390390Add the model name, the tool definition, and a stub implementation to `config.py`:
from line 424
424424
425425def get_quote(make, model, year, mileage, driver_age):
426426 """Returns the premium per month in USD"""
427 # You can call an http endpoint or a database to get the quote.
428 # Here, we simulate a delay of 1 seconds and return a fixed quote of 100.
427 # You can call an HTTP endpoint or a database to get the quote.
428 # This example simulates a delay of 1 second and returns a fixed quote of 100.
429429 time.sleep(1)
430430 return 100
431431```
from line 1075
10751075
10761076### Build your user interface
10771077
1078Test deploying this code with Streamlit using a main method. This `main()` function sets up a Streamlit-based chat interface. Streamlit is a Python framework, so this part of the walkthrough is shown in Python only; the ChatBot class above is the piece you can port to any language.
1078Test deploying this code with Streamlit using a main method. This `main()` function sets up a Streamlit-based chat interface. Streamlit is a Python framework, so this part of the walkthrough is shown in Python only; the ChatBot class shown earlier is the piece you can port to any language.
10791079
1080Do this in a file called `app.py`
1080Do this in a file called `app.py`:
10811081
10821082```python
10831083import streamlit as st
from line 1129
11291129
11301130### Improve performance
11311131
1132In complex scenarios, it may be helpful to consider additional strategies to improve performance beyond standard [prompt engineering techniques](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/overview) & [guardrail implementation strategies](https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/reduce-hallucinations). Here are some common scenarios:
1132In complex scenarios, it might be helpful to consider additional strategies to improve performance beyond standard [prompt engineering techniques](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/overview) and [guardrail implementation strategies](https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/reduce-hallucinations). Here are some common scenarios:
11331133
11341134#### Reduce long context latency with RAG
11351135
from line 1143
11431143
11441144When dealing with queries that require real-time information, such as account balances or policy details, embedding-based RAG approaches are not sufficient. Instead, tool use can enhance your chatbot's ability to provide accurate, real-time responses. For example, you can use tool use to look up customer information, retrieve order details, and cancel orders on behalf of the customer.
11451145
1146This approach, [outlined in the tool use: customer service agent recipe](https://platform.claude.com/cookbook/tool-use-customer-service-agent), lets you integrate live data into Claude's responses and provide a more personalized and efficient customer experience.
1146This approach, outlined in the [tool use: customer service agent recipe](https://platform.claude.com/cookbook/tool-use-customer-service-agent), lets you integrate live data into Claude's responses and provide a more personalized and efficient customer experience.
11471147
11481148#### Strengthen input and output guardrails
11491149
1150When deploying a chatbot, especially in customer service scenarios, it's important to prevent risks associated with misuse, out-of-scope queries, and inappropriate responses. While Claude is inherently resilient to such scenarios, here are additional steps to strengthen your chatbot guardrails:
1150When deploying a chatbot, especially in customer service scenarios, it's important to prevent risks associated with misuse, out-of-scope queries, and inappropriate responses. Although Claude is inherently resilient to such scenarios, here are additional steps to strengthen your chatbot guardrails:
11511151
11521152* [Reduce hallucination](https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/reduce-hallucinations): Implement fact-checking mechanisms and [citations](https://platform.claude.com/cookbook/misc-using-citations) to ground responses in provided information.
11531153* Cross-check information: Verify that the agent's responses align with your company's policies and known facts.
11541154* Avoid contractual commitments: Ensure the agent doesn't make promises or enter into agreements it's not authorized to make.
1155* [Mitigate jailbreaks](https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/mitigate-jailbreaks): Use methods like harmlessness screens and input validation to prevent users from exploiting model vulnerabilities, aiming to generate inappropriate content.
1155* [Mitigate jailbreaks](https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/mitigate-jailbreaks): Use methods such as harmlessness screens and input validation to prevent users from exploiting model vulnerabilities, aiming to generate inappropriate content.
11561156* Avoid mentioning competitors: Implement a competitor mention filter to maintain brand focus and not mention any competitor's products or services.
11571157* [Increase output consistency](https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/increase-consistency): Prevent Claude from changing style or going out of character, even during long, complex interactions.
1158* Remove Personally Identifiable Information (PII): Unless explicitly required and authorized, strip out any PII from responses.
1158* Remove personally identifiable information (PII): Unless explicitly required and authorized, strip out any PII from responses.
11591159
11601160#### Reduce perceived response time with streaming
11611161
from line 1164
11641164Here is how to implement streaming:
11651165
116611661. Use the [Anthropic Streaming API](https://platform.claude.com/docs/en/build-with-claude/streaming) to support streaming responses.
11672. Set up your frontend to handle incoming chunks of text.
11672. Set up your front end to handle incoming chunks of text.
116811683. Display each chunk as it arrives, simulating real-time typing.
116911694. Implement a mechanism to save the full response, allowing users to view it if they navigate away and return.
11701170
1171In some cases, streaming enables the use of more advanced models with higher base latencies, as the progressive display mitigates the impact of longer processing times.
1171In some cases, streaming makes it possible to use more advanced models with higher base latencies, as the progressive display mitigates the impact of longer processing times.
11721172
11731173#### Scale your chatbot
11741174
from line 1177
11771177* Ensure that you are making the most out of your prompts and optimizing through prompt engineering. Use the [prompt engineering guides](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/overview) to write the most effective prompts.
11781178* Add additional [tools](https://platform.claude.com/docs/en/agents-and-tools/tool-use/overview) to the prompt (which can include [prompt chains](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-prompting-best-practices#chain-complex-prompts)) and see if you can achieve the functionality required.
11791179
1180If your chatbot handles incredibly varied tasks, you may want to consider adding a [separate intent classifier](https://platform.claude.com/cookbook/capabilities-classification-guide) to route the initial customer query. For the existing application, this would involve creating a decision tree that would route customer queries through the classifier and then to specialized conversations (with their own set of tools and system prompts). Note, this method requires an additional call to Claude that can increase latency.
1180If your chatbot handles incredibly varied tasks, you might want to consider adding a [separate intent classifier](https://platform.claude.com/cookbook/capabilities-classification-guide) to route the initial customer query. For the existing application, this would involve creating a decision tree that would route customer queries through the classifier and then to specialized conversations (with their own set of tools and system prompts). Note that this method requires an additional call to Claude that can increase latency.
11811181
11821182### Integrate Claude into your support workflow
11831183
1184While these examples have focused on Python functions callable within a Streamlit environment, deploying Claude for real-time support chatbot requires an API service.
1184Although these examples have focused on Python functions callable within a Streamlit environment, deploying Claude for a real-time support chatbot requires an API service.
11851185
11861186Here's how you can approach this:
11871187
11881. Create an API wrapper: Develop a simple API wrapper around your classification function. For example, you can use Flask API or Fast API to wrap your code into a HTTP Service. Your HTTP service could accept the user input and return the Assistant response in its entirety. Thus, your service could have the following characteristics:
11881. Create an API wrapper: Develop a simple API wrapper around your classification function. For example, you can use Flask or FastAPI to wrap your code into an HTTP service. Your HTTP service could accept the user input and return the Assistant response in its entirety. Thus, your service could have the following characteristics:
11891189
11901190 * Server-Sent Events (SSE): SSE allows for real-time streaming of responses from the server to the client. This provides a smooth, interactive experience when working with LLMs.
11911191 * Caching: Implementing caching can improve response times and reduce unnecessary API calls.
No line in this hunk matches that.