Customer service scripts
Written to be said out loud, not read off a page.
Fourteen short lines for live chat and phone support: opening a chat, holding while you check something, asking a clarifying question, transferring or escalating, delivering bad news, and closing the conversation. These are turns in a back-and-forth, written the way people actually talk, not paragraphs meant to be read on a screen.
Blanks are in [square brackets], for the customer's name, the specific issue, or how long a hold will take, because a script read verbatim with the wrong details in it is more obvious to the customer than no script at all. Read one out loud before you use it; if a sentence catches on the way out of your mouth, shorten it.
Opening a chat
Live chat opener
Hi {customer.name}, thanks for stopping by. I'm {agent.name}. What can I help you with today?
What to change: Nothing, if your team uses first names. Swap {agent.name} for your team name if your agents stay anonymous.
Phone opener
Thanks for calling {workspace.name}, this is {agent.name}. Who am I speaking with? (once they answer) Thanks, [their name]. What can I do for you?
What to change: Ask for the name up front if you need it to find an account. Asking after they have explained the whole problem makes them repeat themselves.
Holding and buying time
Let me check that
Let me pull that up. Give me about a minute. I'll stay right here, so don't close the window.
What to change: Say the real length. A minute has to mean under two, otherwise use the longer-hold script instead.
Longer than expected
This is taking longer than I thought. I need about [number] more minutes to give you a straight answer. Do you want to wait here, or should I email you at {customer.email} the moment I know?
What to change: Offer the email option only if you will send it. Write the promise down somewhere before you make it out loud.
Asking a clarifying question
One question, with the reason for asking
Before I dig in, one quick question: [question]? That tells me whether this is [cause A] or [cause B], and the two are fixed completely differently.
What to change: Replace the two causes with the two things it is actually likely to be. The reason is what makes people answer instead of getting annoyed.
Asking for an order or account number
I can look that up right now. What's the order number? It's at the top of your confirmation email and it starts with [prefix].
What to change: Tell them where to find the number. "What is your order number" with no directions is where most chats stall.
Playing it back before you act
Let me make sure I have this right. [One sentence, in your own words, of what they just told you.] Is that it, or have I missed something?
What to change: Rewrite that summary in your own words every time. Reading their own sentence back at them sounds like a bot.
Transferring or escalating
Warm handoff to a colleague
[Colleague] handles [area] and will get you a better answer than I can. I'm bringing them in now. I've already passed on [the one line that matters], so you won't have to start over.
What to change: Send your colleague the summary before you claim you did. That last sentence is a promise, not a pleasantry.
Escalating when you cannot solve it now
I can't solve this from where I'm sitting, so I'm passing it to [team or person] today. They'll come back to you by [time or day]. Your reference is {conversation.id} if you ever need to chase it.
What to change: Give a deadline you control. "As soon as possible" is the phrase customers write back about.
Delivering bad news
Refund you cannot give
I've checked, and I can't refund [item], because [reason in one sentence]. I'm sorry. I know that isn't what you were hoping for. Here's what I can do instead: [alternative].
What to change: Lead with the decision and the reason, then the alternative. Burying the no at the end makes people re-read the whole chat.
Delivery or delivery date slipping
I have bad news about order [order number]. It isn't going to arrive by [original date]. The new estimate is [new date], and I'm sorry. If that date doesn't work for you, I can cancel it for a full refund right now.
What to change: Offer the way out in the same breath as the delay. Making them ask for it is what turns a delay into a complaint.
Feature you do not have
We don't have that today, and I don't want to tell you it's coming when I don't know that it is. What I can do is pass the request on with your name attached, so it counts when we pick what's next. Want me to do that?
What to change: Only offer to log it if somebody reads those logs. If nobody does, say you do not have it and stop there.
Closing a chat
Closing after it is fixed
Glad that worked. Anything else while I've got you? (if not) All right, I'll close this one out. If it comes back, just reply here and it lands with us again.
What to change: Ask whether there is anything else before you close, not after. And only promise it comes back to you if your inbox really works that way.
Closing when they have gone quiet
Hi {customer.name}, I haven't heard back, so I'll leave this one here for now. Nothing is lost. Reply whenever you like and we'll pick it up where we left off.
What to change: Wait long enough that they have genuinely gone, usually the end of the day. Closing after five minutes reads as being shown the door.
Frequently asked questions
Are these scripts only for live chat, or do they work for phone support too?
Both. They were written for the rhythm of a live back-and-forth, which is the same whether the customer is typing or talking. The holding, transferring, and delivering-bad-news categories are used almost identically on a phone call and in a chat window; only the opening line usually needs adjusting, since a chat greeting can be a touch more casual than how you answer a phone.
Won't using a script make me sound scripted?
Only if you read it exactly as written every time. Treat these as a starting shape, not a transcript: keep the structure (acknowledge, then act, then confirm) and swap in the customer's own words for the issue. The point of a script is to stop you from fumbling for how to open a hold or a transfer, not to remove your judgment about the specific conversation.
When should an agent go off script and escalate?
As soon as the customer is angry about something a script cannot fix, such as a repeated failure or a policy exception. The Transferring or escalating category exists for that handoff, and it is meant to be used early rather than after several more scripted turns that all restate the same non-answer. A quick, honest escalation reads better than a longer conversation that circles the same script.
How do I deliver bad news without the customer immediately escalating?
Say the bad news plainly in the first sentence, then say what you can do instead. Hedging or burying the no in a longer explanation is what pushes a customer to ask for a supervisor; a direct no followed by a real alternative, even a small one, usually does not. The Delivering bad news scripts in this set are built in that order on purpose.