Best Customer Service Scripts: 10 Examples and Templates
The best customer service scripts include a warm opening, order-status check, return-policy explanation, complaint acknowledgment, damaged-item response, transparent “I’ll check” reply, clear handoff, resolution update, and conversation close. Use each as a starting point: verify the customer’s details and your actual policy before promising an outcome, then adapt the wording to the channel and the person’s situation.
A script is a prompt for a useful conversation, not a substitute for listening or checking the facts. The templates below are ranked by how often they can help across a typical support queue, starting with the opening that applies to almost every contact. Replace bracketed text with verified information, and remove any line that does not fit your process.
1. Greeting and identifying what the customer needs
A good greeting is brief, welcoming, and neutral. It helps the customer explain the reason for contacting you without assuming who they are or what they need. Ask for order or account details only once you know they are relevant to the issue.
Script: “Hi there! Thanks for reaching out. What can I help you with today?”
For an email reply, you can add the customer’s name if you have it and then move directly to the question. In live chat, a short greeting gives the customer room to describe the problem. On a phone call, introduce yourself if that is part of your team’s normal practice. Avoid time-specific openings that may feel out of place if a message is read later.
Once the customer explains the issue, ask for the information needed to investigate it. For an order question, that might be an order number or the email address associated with the order. Explain why you need it: “Could you share your order number so I can look into the delivery?” That sounds more helpful than asking for details without context.
Do not collect information by habit. If the customer is asking about a general product feature, an order number may not help. Requesting unnecessary details adds effort and can make the exchange feel like a form instead of a conversation.
2. Order status and delivery delays: inbound call center script example
When a customer says an order is late, recognize the inconvenience and check its status before describing what happens next. This inbound call center script sample also works for chat or email with small wording changes. A script can guide the response, but it cannot supply a current tracking update. Only share information you have verified and distinguish it from what you cannot control.
Script: “I’m sorry your order hasn’t arrived yet. I’ll check its status and share the next step.”
After checking, give the customer the information you can confirm. For example: “The latest update shows [verified status]. I can [next action available under your process].” If there is no fresh update, say so plainly rather than filling the gap with a guess. A customer who is waiting for a parcel needs an honest account of what you know, not an invented delivery estimate.
Separate the carrier’s update from your own commitments. If a carrier displays an estimate, describe it as the estimate shown in the tracking information; do not turn it into a guarantee. If your team can take a specific action, explain that action and any next step. If you cannot see a current status, tell the customer what you will check and who will follow up.
Before sending the reply, confirm that the order belongs to the customer and that you are looking at the right shipment. Do not copy a tracking link or status from a different order. If the customer has already provided the order number, avoid making them repeat it unless you need clarification.
3. Returns and refunds: explain the policy and offer the next step
A return script should help the customer understand the next step without promising a refund before eligibility is checked. Confirm the relevant order details, consult your store’s current return policy, and explain the applicable option in plain language.
Script: “I can help check the return options. Please share your order number, and I’ll confirm the next step.”
Once you have the details, check the actual policy that applies to that purchase. The return window, item condition, exclusions, and refund process depend on the business. Do not use a generic template to invent any of them. If the customer is eligible, explain how to proceed using the steps your store has approved. If an exception needs review, say that you will ask the appropriate person rather than implying it has already been granted.
A clear reply can separate what is confirmed from what is still under review: “I’ve checked the order against our return policy. [Verified outcome]. The next step is [approved process].” If you cannot yet confirm eligibility, say what you need to check. Avoid phrases such as “You’ll definitely get a refund” unless the decision is already confirmed and you are authorized to state it.
A script should also help agents hold a respectful boundary. If the requested remedy is outside policy, acknowledge what the customer wants, explain the applicable rule without sounding accusatory, and offer any option that is actually available. Do not hide behind “company policy” as a full answer; explain how the rule affects this request.
4. Complaints and angry customers: acknowledge the impact
When a customer is upset, acknowledge what happened from their perspective before asking them to repeat details or explaining a policy. The first response should show that you understand the concern and are taking it seriously, without accepting facts you have not checked or promising a result you cannot approve.
Script: “I’m sorry this happened. I understand why you’re frustrated, and I’ll do my best to help.”
Then move from acknowledgment to investigation. If the customer has already described the issue, reflect the key point in your own words: “You expected [what they expected], but [what happened]. I’ll look into that.” This confirms you have understood the problem and avoids making the customer start again.
Keep the language calm and direct. Avoid blaming the customer, arguing over their tone, or responding with a defensive explanation before you understand what went wrong. Empathy does not require agreeing with every claim; it means recognizing the impact while you check the facts. If a policy limits the available remedy, explain it after you have acknowledged the concern and confirmed the relevant details.
For a complaint that involves several problems, identify what needs attention first. You might say, “I can see there are two things to check: [issue] and [issue]. I’ll start with [first step].” This gives the conversation direction without pretending that everything is resolved.
5. Damaged or incorrect items: confirm details and explain the fix
For a damaged or incorrect delivery, acknowledge the mistake or disappointment, gather the details your process requires, and check the remedy your policy supports. Do not promise a replacement or refund before confirming what happened and what options are available for that order.
Script: “I’m sorry the item arrived damaged. Could you share what happened so I can confirm the next step?”
For the wrong item, adapt the opening: “I’m sorry you received the wrong item. Could you tell me what arrived and what you expected?” Ask for any evidence your team actually needs to assess the issue, and explain why you are asking. Avoid requesting the same information twice if it is already in the conversation.
After checking the details, state the confirmed next step. For example: “Thanks for sharing that. I’ve checked the details, and the next step is [approved action].” If another person needs to review the case, say that clearly and explain what information is being passed along. A customer should not have to infer whether you have made a decision or merely opened an investigation.
Use separate templates for damaged items, missing items, and incorrect items if the required checks or solutions differ. A broad “delivery problem” response can send an agent down the wrong path. Keep the wording flexible, but make the decision point explicit: confirm the issue, check the policy, and offer only an approved option.
6. When you don’t know: what to say in a customer service role-play
If you cannot verify an answer, do not guess or use confident-sounding wording to cover uncertainty. Tell the customer you want to check, explain the next step, and route the question to someone with the information or authority to resolve it.
Script: “I want to make sure I give you the right answer. I’ll check with the team and follow up.”
A useful uncertainty reply says more than “I don’t know.” It tells the customer that you have heard the question and what will happen next. Where possible, identify what you are checking: “I’m going to confirm whether this product is compatible with [item] before I advise you.” Do not give an expected reply time unless your team has a real, approved service expectation to share.
If you need to ask a specialist, pass on the customer’s question and the relevant context. Record what has already been checked and any answer the customer has provided. That reduces the chance that the customer will have to explain the problem again when another teammate takes over.
The same principle applies to product details, delivery exceptions, and policy edge cases. A plausible answer is not a verified answer. When a customer could make a decision based on your reply, take the time to check instead of smoothing over a knowledge gap.
7. Handoffs and channel adaptations: preserve context
A handoff works best when the customer understands why another person is taking over and does not have to start from the beginning. Tell them what is being transferred, share the context with the next agent, and avoid promising a particular outcome on that person’s behalf.
Script: “I want to get this to the right person. I’ll pass along what you’ve shared so they can continue helping you.”
If you know who or what team will take over, name them or describe their role: “I’m sending this to our [team or role] to check [issue].” If you do not know exactly who will respond, do not invent a name or imply that a specialist is already waiting. Explain the handoff in terms of the next action the customer can expect.
Adapt the length to the channel. A live chat acknowledgment usually needs to be concise; an email can include a fuller recap. On a phone call, explain the transfer before making it and summarize the issue for the next person when your process allows. Whatever the channel, preserve the relevant history: what the customer wants, what you checked, and what remains unresolved.
Consistency does not mean identical wording everywhere. Keep policy and commitments consistent, but let agents make the message natural for the conversation. Use customer names and order context when they are available and appropriate. Do not make a customer repeat information just because the next step involves a different teammate or channel.
8. Resolution updates: close the loop clearly
Once you have a verified outcome, tell the customer what has been done and what, if anything, they need to do next. A resolution message should distinguish completed actions from pending ones, so the customer does not mistake an investigation or request for a finished solution.
Script: “Here’s what I’ve confirmed: [verified outcome]. The next step is [action], and [who] will [follow-up action if applicable].”
Use direct wording. If you changed something, state what changed. If the customer needs to take an action, make it specific and relevant to your process. If nothing further is required from them, say so. Avoid vague closings like “It should be sorted now” when you can say what you actually did.
Before sending, compare the wording with the record of the case. Make sure a requested action was completed rather than merely discussed. If part of the issue remains open, name it and explain who is handling it. Do not label a conversation resolved just to make the exchange feel complete.
For a delay or issue that is still being investigated, use a progress update rather than a final-resolution template. Share any new verified information and restate the next step. If nothing has changed, say that you are still checking rather than implying progress that has not happened.
9. Follow-up after an unresolved question
A follow-up keeps the customer informed when an answer or action is still pending. It should briefly reconnect the conversation to the original issue, share any confirmed progress, and make the next step clear without suggesting that the case is complete before it is.
Script: “I’m following up on [issue]. [Verified update]. We’re still checking [open question], and [next step].”
Use the existing conversation context so the customer does not have to reconstruct what they asked. If you are waiting on information from another team or a carrier, describe that accurately without shifting blame. If you have no update yet, say that the question remains under review and explain what happens next according to your actual process.
Do not send a follow-up just to repeat the previous message with different wording. Add verified information or clarify the status. If the promised action has not happened, acknowledge that plainly and focus on what you can do now. Any timing commitment should come from your team’s real process, not from a template author’s guess.
10. Closing the conversation
A useful closing confirms whether the customer’s question has been answered and leaves a clear path to continue if it has not. Match the closing to the state of the issue: invite another question when the matter is resolved, or summarize the pending handoff when it is still open.
Script for a resolved issue: “I’m glad we could clarify that. Is there anything else I can help with?”
Script for an open issue: “I’ve passed this to [team or role] to check [issue]. If you have anything else to add, you can reply here.”
Do not use a cheerful sign-off to mask an unresolved problem. If the customer is waiting for a decision, state that directly. If the matter is resolved, avoid making the customer work through another long explanation before they can end the conversation.
A closing can also prevent avoidable repeat contacts. Summarize the confirmed action or next step in a sentence, especially when the conversation has involved several checks. Keep it short enough to be useful rather than adding a second version of the entire exchange.
How to choose and maintain scripts your team will use
Choose scripts for recurring situations where a consistent opening, verification step, or policy explanation helps agents. For call center script best practices, keep the language natural, confirm facts before making commitments, and make the next action explicit. Keep templates searchable and close to the support workflow, but make the decision points visible: what to check, what can be promised, and when to ask for help.
Start with the questions your team sees repeatedly. Look through recent conversations and group them by the customer’s need: delivery status, return eligibility, product information, damaged goods, or an account question. Prioritize cases where agents tend to ask the same questions or where an unverified promise could create a problem.
Write each template around the action, not just the sentence. A useful entry might include the situation it applies to, information to verify, the approved policy reference, sample wording, and the point at which the agent should escalate. For more on routing cases, see the customer service workflow guide. This makes it easier for a teammate to choose the right response instead of pasting the first matching phrase.
Keep templates specific enough to guide the conversation but flexible enough to sound natural. A script that works for an email may feel stilted in a quick chat. Rather than making every message identical, preserve the same facts and policy boundaries while adjusting the length and phrasing to fit the channel.
Review scripts when products, processes, or policies change. Also pay attention to agent questions and customer replies: repeated confusion may mean that a template is unclear, outdated, or missing a decision point. Role-play difficult scenarios so agents can practice adapting the wording without losing the important checks.
Scripts can help teams stay consistent, but they cannot replace access to the current policy or the judgment to pause when something does not fit. Make sure agents know which person or team can resolve exceptions. When a template does not apply, a transparent handoff is safer than forcing the customer’s situation into the wrong response.
For teams considering AI for repeat questions, the same review discipline still matters. See our guide to AI chatbots for customer service for more on evaluating this approach. momo uses a business’s own content to draft answers and checks drafts against those sources; when confident, it replies with citations, and when it is not sure, it tells the visitor and opens a ticket for the team. A human answer can then be saved as approved knowledge. This can suit teams looking for an AI front line alongside a human inbox, but it does not replace writing and maintaining the store’s actual policies.
Frequently asked questions about customer service scripts
What are some good scripts for call centers when an agent doesn’t know the answer?
Say that you want to check before giving an answer, then explain the next step. For example: “I want to make sure I give you the right answer. I’ll check with the team and follow up.” Share what you are checking when you can, and do not guess or promise a follow-up time your team has not approved.
How do you keep customer service scripts from sounding robotic?
Use scripts as frameworks, not lines that every agent must repeat exactly. Keep the facts and policy boundaries consistent, but let agents acknowledge the customer’s specific concern and adjust the phrasing to the conversation. Remove wording that adds no value or makes the customer repeat information they have already provided.
Should customer service scripts be different for email, phone, and live chat?
Adapt the length and delivery to the channel while keeping the facts, policy, and next steps consistent. Chat messages often work best when concise; email allows a fuller explanation; phone calls can make space for a real-time exchange. The right wording depends on what the customer needs and what your team can verify.
What information should you ask for before checking an order?
Ask for only the information needed to locate and verify the order, such as the order number or the email linked to the account. Explain why you need it, and check what the customer has already shared before asking again. Do not request order details for a general question that does not need them.
When should an agent transfer a customer to someone else?
Transfer or escalate when the question needs information, access, or approval you do not have, or when the customer’s case falls outside the process you can resolve. Explain why you are handing it over, pass along the relevant conversation context, and state the next step without guaranteeing an outcome you cannot control.
Keep the scripts tied to real policy
Use the templates that match your queue, then customize the checks and approved options to your business. If you want to explore an AI front line that uses your support content and sends uncertain questions to a team inbox, try momo free.
Try a grounded AI front line
Try momo free to answer from your support content and send uncertain questions to a human inbox.
Try momo free