Customer Service Conversation Examples (And What Makes Each One Work)
Most customer service conversation examples you find online were written for a 200-seat call center. They open with "Thank you for contacting us, valued customer," and they read like a legal disclaimer. Copy one into your Shopify store's chat and your customers will notice immediately, because nobody who runs a small business talks like that.
This post takes the opposite approach. Below are examples for the situations you deal with every week: where's-my-order messages, refund requests, damaged items, angry phone calls, and slow-burn email threads. Each one shows a weak version and a strong version, with a note on why the strong one resolves the issue and the weak one creates a second ticket.
Why most customer service scripts fall flat
A script fails when the customer can tell they're inside one. The words "We apologize for any inconvenience this may have caused" have been typed so many billions of times that they now communicate the exact opposite of an apology. The customer reads them as "nobody looked at my specific problem."
What resolves an issue is rarely the phrasing. Three other things do the work: how fast you respond, whether you acknowledge the specific situation before jumping to policy, and whether the customer leaves knowing exactly what happens next. Speed alone carries enormous weight. As many as 57% of customers abandon a live chat when they're left waiting for a response, which means a perfect script delivered in minute four loses to a decent one delivered in minute one.
Small businesses have a structural advantage here. You know your products, you can make judgment calls without a supervisor, and you can write like a person because there's no brand-compliance team reviewing your chat logs. The examples below lean into that.
The anatomy of a good support conversation
Every strong example in this post follows the same five-beat structure. It's short enough to memorize:
- Acknowledge the specific issue. Repeat back what happened in your own words, so the customer knows a human (or a well-configured agent) read the message.
- Get the missing detail. Order number, photo of the damage, which size they wanted. Ask for everything you need in one message, not across four.
- Offer the resolution, with a choice where possible. "Refund or replacement?" beats "we will process your request."
- State the next step and the timeline. Who does what, by when.
- Close with an opening, not a script. "Anything else while I've got your order pulled up?" does more than "Have a wonderful day."
Beats two and four are where most conversations die. Skip beat two and you get a five-message back-and-forth to collect one order number. Skip beat four and the customer writes back tomorrow asking what's happening, which is now a second ticket about the first ticket.
Customer service chat script examples for common ecommerce issues
Chat is where expectations are tightest. Around 60% of customers expect a chat response within two minutes, so these scripts assume you (or your tooling) are answering fast and need the words to carry the rest.
"Where is my order?"
Weak:
Customer: Hi, I ordered 9 days ago and nothing has arrived. Order #4821.
Support: Thank you for reaching out! Please allow 5-10 business days for delivery. If your order does not arrive, contact us again.
This answers a question the customer didn't ask. They know the shipping window; they're nine days in and nervous. It also ends by promising them a future ticket.
Strong:
Customer: Hi, I ordered 9 days ago and nothing has arrived. Order #4821.
Support: Just pulled up #4821. It shipped July 8 via USPS and the last scan was Memphis on July 12, so it's moving but slower than it should be. Two options: I can give it until Friday and refund your shipping cost for the wait, or if it's not scanned by Friday I'll send a replacement at no charge. Either way I'll message you Friday so you don't have to chase this.
The strong version looks up the actual order, names the carrier and the last scan, and moves the follow-up burden from the customer to the store. WISMO tickets are typically the highest-volume ticket type in ecommerce; if you fix only one conversation, fix this one. (A clear shipping policy prevents a good share of these from being opened at all.)
"I want a refund"
Weak:
Customer: This isn't what I expected. I want my money back.
Support: Please review our refund policy at the link below. Returns must be initiated within 30 days with original packaging.
Strong:
Customer: This isn't what I expected. I want my money back.
Support: Sorry it missed the mark. Happy to sort that out. Can you tell me the order number and what specifically didn't match what you expected? If it's a fit or color issue I can do an exchange today; if you'd rather have the refund, I'll email you a prepaid return label and the refund lands 2-3 days after the carrier scans it.
Linking to policy as the first move signals "prove you deserve this." The strong version asks why, because a decent share of refund requests are recoverable as exchanges, and states the exact refund mechanics so there's no follow-up ticket asking when the money arrives. Your policy still matters, but it belongs underneath the conversation, not in place of it. We've written about structuring a refund policy that supports these conversations instead of fighting them.
"The item arrived damaged"
Weak:
Support: We apologize for the inconvenience. Please ship the item back to us for inspection, and once received we will determine eligibility for a replacement.
Strong:
Support: That's frustrating, and it shouldn't have gone out that way. Send me a photo of the damage and the box, and I'll ship a replacement today. No need to return the damaged one. If you'd rather have a refund than a replacement, say the word.
Making a customer pay return shipping and wait for an "inspection" on an item you damaged is how you lose them permanently. The photo protects you against fraud at a fraction of the cost of return logistics, and for most SMB order values, letting the customer keep the damaged item is cheaper than round-trip shipping.
"I ordered the wrong size"
Strong:
Customer: I ordered a medium but I need a large. Totally my fault.
Support: Easy fix. I've got larges in stock, so here's the fastest path: I'll email you a return label for the medium now, and the moment tracking shows it's on its way back, I ship the large. You don't have to wait for it to arrive here. Sound good?
No weak version needed; you can picture it. The one move that matters is shipping the exchange on the return scan, not the return delivery. It cuts a week off the exchange and costs you almost nothing in risk.
Phone conversation examples for trickier situations
Phone is where issues land after they've already gone wrong once, so tone and pacing carry more than word choice. Slow down, don't interrupt, and let silence sit after an apology instead of rushing to fill it.
The angry customer
Customer: This is the second time I've called. Nobody emailed me back, the order's wrong, and honestly this is ridiculous.
You: You're right, and I'd be annoyed too. You emailed, nobody answered, and the order's still wrong. Let me fix both. Give me two minutes on this call and I'll get the correct item shipped before we hang up, and then I'm going to find out why your email got missed, because that part is on us.
The mechanics: agree with the legitimate part of the complaint immediately, restate their problem so they stop repeating it, then convert the conversation from grievance to logistics. Never say "calm down," and never explain your internal reasons (short-staffed, new system) because the customer correctly does not care. There's a longer playbook for this in our guide to handling customer complaints.
The repeat complaint
You: I see you contacted us about this on the 3rd and we said it was resolved, and clearly it wasn't. So I'm not going to give you the same answer again. Here's what I'll do differently this time: [specific new action]. And I'm giving you my direct email so if this comes back a third time, it comes straight to me.
The phrase doing the work is "differently this time." A repeat complaint answered with the original script tells the customer your support is a loop with no exit.
When you can't resolve it on the call
You: I don't want to guess at this, because if I guess wrong you're calling a third time. I need to check with our supplier about whether that batch was affected. I'll know by tomorrow at noon, and I'll call you either way, even if the answer is "still waiting." Does this number work for that?
Committing to a follow-up time rather than a follow-up outcome is the trick. "I'll call you when I know something" is a promise nobody believes. "Tomorrow at noon, even if I know nothing" is a promise you can keep.
Email conversation examples when real-time support isn't possible
The same five beats apply to email, with one addition: because the customer can't ask a clarifying question in the moment, every email has to pre-answer the reply they'd otherwise send. Expectation-setting in message one is what keeps a thread to two messages instead of six.
Initial complaint response:
Subject: Your order #4821 — what happened and what I'm doing
Hi Dana,
You're right that the engraving is off-center. I checked the production photo from our end and it left here looking correct, so it may have shifted in the jig on a later batch. Either way, that's ours to fix.
A corrected one goes out tomorrow with rush shipping, tracking to this address. Keep or toss the original. If you'd prefer a refund instead, reply "refund" and I'll process it today.
— Sam
Follow-up when resolution takes time:
Hi Dana — no resolution yet, just keeping my word about updating you. The supplier confirmed the batch issue and the replacement is in production, expected to ship Thursday. Next update from me Friday, sooner if it ships early.
An update with no news in it feels pointless to send, but it's what separates the customer who waits quietly from the one who opens a dispute with their bank while waiting. Disputes are expensive: Mastercard puts the cost of a single chargeback at $74 or more per dispute once fees and handling are counted, before you've lost the product and the sale.
Closing message after resolution:
Hi Dana — tracking shows the replacement was delivered today, so I'm closing this out on my end. If anything's off with the new one, reply here and it comes straight back to me rather than the general queue. Thanks for giving us the chance to fix it.
How to turn these examples into scripts your team can use
A script library only helps if it matches your store's real ticket mix, so start with your data rather than someone else's list:
- Pull your last 50-100 tickets and tag each one by type. Most stores find 5-8 categories cover 80% of volume, usually led by shipping status and returns.
- Write one strong version per category, using the five-beat structure above. Keep each under 120 words. Include the exact policy numbers (refund windows, shipping thresholds) so nobody improvises them.
- Mark the judgment points. Note where the script says "offer X" but a human should be able to upgrade to Y for a high-value customer. Scripts fail when they remove judgment instead of encoding it.
- Hand them to whoever answers, human or software. New hires ramp in days instead of weeks when the ten most common conversations are already written down.
If you're using an AI support agent like Ernest, you can feed it these exact scripts so it handles the most common questions automatically and hands off to you only when things get genuinely complex. The scripts you'd write for a new hire are the same ones that make an AI agent sound like your store instead of a generic bot, and the agent runs them at 2am on a Saturday, which is when a surprising number of ecommerce tickets arrive. Our post on ecommerce customer service covers how to decide which conversation types to automate first.
Signs your customer service conversations need work
You don't need a consultant to audit this. Four signals, all checkable in an afternoon:
- High repeat-contact rate. If more than roughly one in five tickets is a customer following up on an earlier ticket, your conversations are ending without a clear next step (beat four is missing).
- "Escalation by chargeback." Customers who dispute a charge without contacting you first, or after one unanswered message, are telling you your support channel felt like a dead end.
- Inconsistent answers. Ask two team members how they'd handle a damaged-item report. If you get two different refund policies, you don't have scripts, you have folklore.
- Slow first response. Time yourself honestly across a week. Zendesk's research finds more than half of consumers will switch to a competitor after a single bad experience, and a 12-hour first reply on chat is a bad experience regardless of how good the eventual answer is.
Whichever signal is loudest tells you which conversation type to script first. Fix the highest-volume one, measure repeat contacts again in a month, and move down the list.
Writing these scripts is a one-time cost of an afternoon. Running them consistently, on every ticket, at every hour, is the hard part, and it's the part worth automating. Ernest learns your store's policies and your scripts, answers the routine 80% instantly, and passes you the conversations that need an owner's judgment. The free plan covers 50 conversations a month, so you can test it against your real ticket queue before paying anything. See the pricing here.