Short answer: Customer service scripts are prepared language for the moments that repeat on every call: the greeting, putting someone on hold, transferring, apologizing, saying no, and closing. Used well they keep tone consistent and stop agents from freezing under pressure. Used badly they sound robotic. The rule that separates the two: follow the script tightly on greetings and closings, and personalize the middle to the actual customer.

The first seconds of a support interaction set the tone for everything after. So do the handful of transition moments (the hold, the transfer, the "I cannot do that") where an unprepared agent fumbles and the customer loses confidence. Scripts exist for exactly these repeatable moments, and they stick better when they are drilled in an onboarding and training platform than when they are pasted into a wiki. They are not a cage. Think of them as the lines a musician has memorized so they can improvise the rest without falling apart.

This is a library of spoken-call scripts, the kind a phone team or call center works from, with the reasoning behind each one. For written email and ticket replies you send asynchronously, use our separate customer service response templates; those are built for the inbox, while the scripts below are built for a person waiting on the line.

Looking for chat? Everything below is written for the phone. Chat is a different craft: silence reads as absence, agents run several conversations at once, and every line is on the written record, so the greetings, hold lines, and closings all have to be rebuilt. Go straight to our live chat support scripts and customer service chat examples for the chat opening script, hold script for chat, idle nudges, and chat closing script. And if what you need is not a finished script but the method for producing your own, we have a separate walkthrough on how to write a customer service script with a blank template to fill in.

Are customer service scripts a good idea?

Yes, when they are used as safety nets rather than cages. Scripts keep tone, accuracy, and brand voice consistent across a whole team, and they stop new agents from freezing during hard moments. The risk is that read word for word they sound robotic, and most customers can tell instantly. The teams that get it right script the predictable edges (greeting, hold, transfer, closing) and coach agents to personalize the middle, where the customer's actual problem lives.

Greeting scripts

The opening does two jobs: identify who they reached and invite them to talk. Keep it short and warm.

  • Phone: "Thank you for calling [Company]. This is Jordan. How can I help you today?"
  • Call center queue, after a wait: "Thanks for holding, this is Jordan with [Company]. I know you have been waiting, so let's get straight to it. What can I sort out for you?"
  • Returning or known customer: "Hi [Name], good to hear from you again. I can see your account here, so you do not have to start from scratch."

The last one matters more than it looks. Telling a customer you can already see their account removes the dread of repeating everything, which is one of the biggest drivers of frustration before the conversation even starts.

Hold and transfer scripts

Holds and transfers are where trust leaks. The fix is permission and narration: never drop someone into silence, and never hand them off cold.

  • Asking for a hold: "To get this exactly right, I need about a minute to check your account. Is it okay if I put you on a brief hold?" Wait for the yes.
  • Returning: "Thanks for waiting. I have what I need. Here is what I found."
  • Warm transfer: "I am going to connect you with our billing specialist who can fix this directly. I will give them your name and the issue so you will not have to repeat it. One moment." Then actually brief the colleague before connecting.

A cold transfer, where the customer is dumped into a new queue to re-explain the whole problem, is one of the fastest ways to turn a calm contact into a difficult one. The warm handoff is a small effort that prevents a large one.

Apology and empathy scripts

Skip the vague non-apology. "I apologize for any inconvenience" validates nothing and signals you did not read the situation. Name the specific problem and its impact instead. When the call has already gone past apology and the customer is genuinely angry, a script is not enough on its own; work from the longer de-escalation steps for difficult customers instead.

  • Specific apology: "I am sorry your order is late. I know you were counting on it for this week."
  • Acknowledging frustration: "You are right to be frustrated. This should not have taken three emails to resolve, and I am going to close it out now."
  • Taking ownership: "This one is on us. Here is exactly what I am going to do to make it right."

A specific, well-placed apology is one of the highest-return moves in support. It costs nothing and it directly moves satisfaction, because it proves a human actually understood what went wrong.

Saying no without losing the customer

The hardest script is the one where you decline a request. The structure that works: acknowledge the request, give the honest no with a brief reason, then immediately pivot to what you can do.

  • Declining a refund outside policy: "I understand why you would want a full refund. I am not able to refund past the ninety-day window, but here is what I can offer instead, and I think it solves the actual problem."
  • A feature you do not have: "We do not do that today, and I do not want to pretend otherwise. I am logging your request for the product team, and here is the workaround most customers use in the meantime."

The mistake is a flat no with no path forward. A no that ends in a real alternative keeps the relationship. A no that ends in a wall ends the relationship.

Closing scripts

Close by confirming the problem is actually solved, not just that you replied. This one habit is what turns a fast interaction into a resolved one.

  • Confirming resolution: "Before we wrap up, is the issue fully resolved for you, or is there anything still open?"
  • Setting a next step: "You will get a confirmation email in the next few minutes, and I will personally check tomorrow that the charge reversed. Here is my reference so you can reach me directly."
  • Warm close: "Thanks for your patience today. I am glad we got it sorted. Anything else I can help with?"

Confirming resolution at the end is the cheapest way to protect your first contact resolution rate. A customer who says "yes, all set" will not be back tomorrow with the same problem.

Account verification scripts

Verification is where most calls lose their first thirty seconds and a fair amount of goodwill. The fix is to say why before you say what, because customers resist the questions when the reason is not obvious.

  • Framing the request: "Before I pull up the billing detail, I need to verify the account so I am not sharing it with the wrong person. Can I get the email on the account and the billing zip code?"
  • When the caller fails verification: "That is not matching what I have here, which usually means the account is under a different email. I cannot open the details on this call, but I can send a secure link to the address on file and you will have it in a minute."
  • When the caller is not the account holder: "I can talk about general policy with you, but the account itself I can only discuss with the person named on it. The fastest route is to have them add you as an authorized contact, which takes about two minutes."
  • Third-party present: "I heard someone else join. For the account holder's protection, can you confirm you are happy for them to hear the account details?"

Never apologize for verifying. "Sorry, I have to ask you all these questions" tells the customer the step is pointless friction. It is the opposite.

Billing and refund call scripts

Billing calls arrive hotter than any other category because money has already left the customer's account. These are the lines that hold up under that pressure.

  • Unexpected charge: "Let me read out exactly what that charge covers and the date it was raised, then you can tell me whether that matches what you expected."
  • Confirming a refund without over-promising: "I have approved the refund on our side today. Your bank controls the last step, so it usually lands in three to five business days. If it has not by Friday the ninth, call back and reference this ticket and I will chase it."
  • A refund you cannot give: "I am not able to refund that period, and I want to explain why rather than just say no. The plan renewed on the third and the usage ran through the month. What I can do is stop the next renewal today so this does not repeat."
  • Failed payment: "The card on file was declined, which is almost always an expiry or an address mismatch rather than funds. I can take an updated card now, or send you a secure link so you are not reading numbers out over the phone."
  • Past-due balance: "There is a balance of the amount on the screen from the March invoice. I would rather set up a plan today than let this go further, so what is realistic for you this month?"

The pattern in all five is the same: state the fact, give the reason, then offer the action you can actually take. Skipping the middle step is what turns a billing call into a complaint, and billing complaints are the ones that reach a chargeback. If your team fields these often, the wording matters less than whether the underlying billing experience is generating the calls in the first place.

Escalation and supervisor request scripts

"Let me speak to your manager" is a script problem, not a personnel problem. Handled well, roughly half of these calls do not need to move.

  • Slowing it down without refusing: "I can get a supervisor for you. Before I do, so I can brief them properly, what is the outcome you are looking for here?"
  • When you can solve it yourself: "What you are asking for I can actually authorize. Let me do it now, and if you still want the supervisor afterward I will put you through."
  • When no supervisor is free: "The supervisor on duty is on another call. I can hold you for about ten minutes, or take the detail now and have them call you back before five today. Which works better?"
  • The handoff itself: "I am putting you through to Maria. I have already told her the charge date, what you have been told previously, and what you want to happen, so you will not have to start again."

That last line is the one that matters. Customers escalate as much because they are tired of repeating themselves as because they disagree with the answer. A clean brief removes half the anger before the supervisor speaks. Where escalations follow defined severity tiers, the script should name the tier so the customer hears a process rather than a favor.

Callback and voicemail scripts

  • Leaving a voicemail: "This is Daniel from the billing team calling about the refund you raised on Tuesday. Good news, it is approved. Nothing is needed from you, but if you want the detail, call the main line and quote ticket 4471."
  • Offering a callback instead of a hold: "The wait is about eighteen minutes. I can hold your place and call you back on this number instead, so you do not have to sit on the line. You will not lose your position."
  • Callback that misses: "I tried you at two as promised and could not reach you. I will try once more at four, and if I miss you again I will email the answer so it is not stuck with me."

Say what the customer does not have to do. "Nothing is needed from you" is the single most reassuring sentence in a service voicemail, and it is the one people forget.

Do chat scripts work the same way?

No, and it is the most common mistake when a voice team takes on messaging. Spoken lines that sound warm read as padded on chat, tone has to survive without voice to carry it, and agents handle two or three conversations at once, so length is a real cost. Chat also allows things a call cannot: links, screenshots, and a transcript the customer keeps.

The scripts on this page are written for the phone. If you are staffing messaging, the openings, holds, transfers and closings all need rewriting for the channel, and the live chat support scripts and templates library covers those in the wording chat actually needs.

What makes call center scripts different

Call center scripts carry two loads the small-team version does not. The first is volume: a line that is mildly awkward at twenty calls a day becomes unbearable at two hundred, so call center scripts get tested and trimmed far harder than most teams bother with. The second is compliance. Recorded-line disclosures, identity verification, and any regulated language have to be delivered word for word, every time, which means a call center script needs a clear visual split between the lines that are fixed and the lines that are the agent's own.

Two practical consequences. Keep the verification block near the top and make it short, because customers who have already waited in a queue have very little patience for security theater. And write the hold script assuming it will be used repeatedly in one call, with a different sentence each time, so a customer held three times does not hear the identical apology three times.

How do you write a customer service script?

Write a customer service script by starting from your real recurring situations, not a generic list. Pull the ten scenarios your team actually faces most, write each in plain spoken language you would really use, and mark the parts to follow exactly (compliance lines, disclosures, closings) versus the parts to adapt. Test each script on live interactions, then revise the lines that make agents sound stiff. A script is a living document, not a laminated card.

That is the summary. The full method, including a blank customer service script template and what a finished script looks like on the page, is in its own walkthrough.

Keep scripts human

The best-scripted teams do not sound scripted. They sound consistent. The trick is treating the script as a floor, not a ceiling: every agent starts from the same reliable language and then personalizes to the person in front of them. Pair the scripts with a well-run set of support workflows so agents spend their energy on the conversation instead of hunting for account details, and review the scripts every quarter against the situations that are actually showing up in your queue. Scripts that never change stop matching the problems customers bring, which is when they start to sound fake. This kind of quiet standardization is what mature back-office customer experience operations run on: consistent language, adapted by real people, updated as the work changes.

M
CX operations writer. Ten years running support and onboarding teams at B2B software companies; now writes about the operational side of customer experience.