50 battle-tested customer service email templates for refunds, apologies, onboarding, sales handoffs, and more. Personalized merge fields, the right tone, and the rules for using them well.
TL;DR. Fifty saved replies covering the situations support teams hit most: refunds, apologies, onboarding, account, sales-leaning, product feedback, tricky moments, and internal handoffs. Use them as starting points, customize for your voice, and don't open with "I hope this email finds you well."
Saved replies are the highest-leverage tool a support team has. Teams that use them well save 30+ minutes per agent per day and write more consistent responses than ad-hoc writing ever produces.
These are 50 templates worth stealing — across the situations support teams handle most. Copy, customize for your voice, ship.
For the operational side of using saved replies effectively (and the rest of the FRT-cutting playbook), see How to Cut First-Response Time by 50%.
A few hard-earned rules:
For tone calibration on each template, see The Customer Service Tone Guide — 30 phrases that build trust and 10 that break it.
Subject: Your refund is on its way
Hi {{first_name}},
Done — I've issued a full refund of {{amount}} to your original payment method. It should land within 5–10 business days, depending on your bank.
If you have a few minutes, I'd love to know what didn't work for you. We use this stuff to make the product better.
— {{agent_name}}
Hi {{first_name}},
Thanks for the note. I took a look — unfortunately this falls outside our refund window, which I know isn't what you were hoping to hear.
That said, I want to make this right. I can offer you a 50% credit toward your next month, or extend your current plan by 30 days. Either work?
— {{agent_name}}
Hi {{first_name}},
I see you've disputed the {{amount}} charge from {{date}}. Before this becomes a chargeback, can I check that you saw this was your annual renewal? Happy to refund or downgrade if it wasn't expected.
— {{agent_name}}
Hi {{first_name}},
Heads up — your last payment for {{plan}} didn't go through, probably because the card on file expired. You can update it at {{billing_url}} and we'll retry automatically.
Let me know if you'd rather I do it on a call.
— {{agent_name}}
Hi {{first_name}},
Confirmed — you're now on the {{plan_name}} plan. The change takes effect at your next billing cycle on {{date}}, and your next charge will be {{amount}}.
If anything changes, you can switch back any time.
— {{agent_name}}
Hi {{first_name}},
You probably noticed — we had a {{minutes}}-minute outage starting at {{time}}. Everything's back, and we're writing up exactly what happened. I'll send the post-mortem in a day or two.
We don't take downtime lightly. As a small acknowledgement, I'm crediting your account for the day. Sorry about this.
— {{agent_name}}
Hi {{first_name}},
I want to flag this directly: we made a mistake on your account. Specifically, {{description}}. I've fixed it — your account now shows {{correct_state}}.
I'm sorry this happened. Let me know if you see anything else off.
— {{agent_name}}
Hi {{first_name}},
Sorry for the slow reply on this. To answer your question: {{answer}}.
If anything else is open, send it over now and I'll handle it directly.
— {{agent_name}}
Hi {{first_name}},
I'm circling back because we missed your message from {{date}}. That's on us. To your question: {{answer}}.
If you've already moved on, no worries — but I wanted to close the loop.
— {{agent_name}}
Hi {{first_name}},
You're right, this is a bug. I've filed it with engineering as {{ticket_id}} and they've confirmed it's reproducible. Best estimate is a fix in {{timeframe}}.
In the meantime, {{workaround}}. I'll email you the moment it's deployed.
— {{agent_name}}
Hi {{first_name}},
Welcome to {{product}} — glad you're here. The fastest way to get value in the first hour:
If you get stuck on any of these, just hit reply. I'll personally help you through it.
— {{agent_name}}
Hi {{first_name}},
You've been on {{product}} for a few days. How's it going so far? Two questions:
The second one helps me more, honestly.
— {{agent_name}}
Hi {{first_name}},
Your trial wraps up in {{days}} days. Quick check: have you had a chance to try {{key_feature}}? It's the part most customers say they wish they'd tried sooner.
Happy to set up a 15-minute walkthrough if useful.
— {{agent_name}}
Hi {{first_name}},
Your trial ended yesterday and I noticed you didn't continue. No pressure — but if you'd like, I'd love to know what kept you from upgrading. Was it pricing, fit, timing, something else?
If it's relevant, I can extend your trial for another 7 days. Just say the word.
— {{agent_name}}
Hi {{first_name}},
Welcome to the paid tier — appreciate you. You now have access to {{features}}. The two things most new customers don't realize they have:
I'm your point of contact. Reply directly if anything comes up.
— {{agent_name}}
Hi {{first_name}},
I've cancelled your {{product}} account, effective {{date}}. You'll keep access until then.
If you ever want to come back, your data is preserved for 90 days. Just reply.
— {{agent_name}}
Hi {{first_name}},
Welcome back. I've reactivated your account — same plan, same data, same shortcuts. Anything we changed since you left that's worth knowing about: {{changes}}.
If you have 15 minutes this week, I'd love to hear what brought you back.
— {{agent_name}}
Hi {{first_name}},
I've transferred ownership of {{account}} to {{new_owner_email}}. They'll get a confirmation in a moment. You'll lose admin access, but your account on the team isn't affected.
Confirm this is what you wanted?
— {{agent_name}}
Hi {{first_name}},
I've sent a password reset link to {{email}}. It expires in 30 minutes. If you didn't request this, ignore the email and let me know — I'll lock the account out of caution.
— {{agent_name}}
Hi {{first_name}},
We saw a login from a new device ({{location}}) at {{time}}. If that was you, no action needed. If it wasn't, change your password immediately at {{password_reset_url}} and reply — I'll pull logs.
— {{agent_name}}
Hi {{first_name}},
Happy to walk through pricing. Two quick questions:
Once I know those, I can be specific about what tier fits and where the price lands.
— {{agent_name}}
Hi {{first_name}},
Honest answer about {{competitor}}: they do {{strength}} better than us, and we do {{our_strength}} better than them. The right pick depends on which matters more for your team.
If you want, I can do a 15-minute side-by-side on a screenshare.
— {{agent_name}}
Hi {{first_name}},
I'd love to give a discount. The honest reason I can't is {{reason}}. What I can do: extend your trial, comp the first month, or set you up with a quarterly billing cycle to spread the cost.
Any of those work?
— {{agent_name}}
Hi {{first_name}},
You've been on monthly for {{months}} months — you'd save {{amount}} a year by switching to annual. No commitment, you can switch back anytime. Want me to make the change?
— {{agent_name}}
Hi {{first_name}},
Quick one: I noticed you've been hitting the {{limit_type}} limit on the {{plan}} plan most weeks. Upgrading to {{higher_plan}} would remove that ceiling for {{amount}}/mo.
Worth it for your team? Happy to do a no-commit one-month trial of the higher tier.
— {{agent_name}}
Hi {{first_name}},
This is a great suggestion. I've logged it — internal ID {{request_id}}. We don't promise dates on feature requests, but I will email you if and when it ships.
Quick follow-up: is the use case behind this {{guess}}? Helps engineering scope.
— {{agent_name}}
Hi {{first_name}},
Closing the loop on the {{feature}} request you sent in {{date}} — it shipped this morning. Here's how to use it: {{instructions}}.
Thanks for the original push.
— {{agent_name}}
Hi {{first_name}},
I want to be straight: this isn't something we're going to build. The honest reason is {{reason}}.
I know that's not the answer you wanted. If it's a hard requirement, {{alternative_tool}} does this well.
— {{agent_name}}
Hi {{first_name}},
I read your message. Here's where I am: technically you're outside our 14-day refund window. But I don't want to hide behind that — let me see what I can do.
Give me until end of day. I'll come back with options.
— {{agent_name}}
Hi {{first_name}},
I want to make sure we're on the same page on this. Looking at your account, {{evidence}}. That suggests {{conclusion}}, which is different from what you described.
Could you walk me through what you're seeing on your end? A screenshot would help.
— {{agent_name}}
Hi {{first_name}},
I see this is the third time we've gone back and forth on this. Clearly we're not solving it. Can we get on a 20-minute call this week so I can see exactly what's happening on your screen?
— {{agent_name}}
Hi {{first_name}},
I hear you, and I get why this is frustrating. Two things:
I'll stay on this until it's resolved.
— {{agent_name}}
Hi {{first_name}},
I want to dig in but need a few details:
The more I have up front, the faster I can fix it.
— {{agent_name}}
Hi {{first_name}},
Of course — let me loop in {{manager_name}}, who runs our support team. I've forwarded your full thread to her, and she'll be in touch within {{timeframe}}.
In parallel, the issue you raised is real. I'm working on it now.
— {{agent_name}}
Hi {{first_name}},
Thanks — for this kind of question, I want to loop in {{legal_contact}} so we get it right. They'll be in touch within {{timeframe}}.
— {{agent_name}}
Hi {{first_name}},
Quick check-in: the {{issue}} we resolved last week — is everything still working as you expected? I want to make sure nothing reverted.
— {{agent_name}}
Hi {{first_name}},
I'm closing this ticket since I haven't heard back. If anything else came up on the {{topic}} front, just reply and it'll reopen.
— {{agent_name}}
Hi {{first_name}},
Glad we got this sorted. If you have 30 seconds, would you fill out the short CSAT below? Helps us prioritize what to fix next.
{{survey_link}}
— {{agent_name}}
Hi {{first_name}},
I answered the first part of your question yesterday but wanted to circle back on the second piece — {{topic}}. Here's what I found: {{answer}}.
— {{agent_name}}
Hi {{first_name}},
I noticed {{evidence}} which suggests the {{issue}} we thought we'd resolved isn't fully solved. I'm reopening this on my end. Let me look more closely and come back to you today.
— {{agent_name}}
Hi {{first_name}},
Heads up: we're doing planned maintenance on {{date}} from {{start}} to {{end}}. {{product}} will be in read-only mode for the window. No action needed.
— {{agent_name}}
Hi {{first_name}},
I want to give you advance notice that our pricing is changing on {{date}}. Specifically, {{change}}. As an existing customer, you're locked in at your current price for {{period}}.
Full details: {{link}}.
— {{agent_name}}
Hi {{first_name}},
We're sunsetting {{feature}} on {{date}}. We chose to do this because {{reason}}, and we built {{replacement}} to take its place.
Migration steps: {{link}}. Email me directly if you hit anything.
— {{agent_name}}
Hi {{first_name}},
I'm writing to let you know about a security incident on {{date}}. Specifically: {{description}}. Your account was {{affected/not affected}}.
We've taken the following actions: {{actions}}. Full incident report: {{link}}.
If you have any concerns, reply directly and I'll respond personally.
— {{agent_name}}
Hi {{first_name}},
I've received your data request under {{regulation}}. We'll process this within the legally required {{timeframe}}.
You'll receive a confirmation when it's complete.
— {{agent_name}}
Hi {{first_name}},
I've looped in {{engineer_name}} who knows this part of the product better than I do. She'll take it from here, with full context.
— {{agent_name}}
Hi {{first_name}},
Wrapping up my day. {{teammate_name}} on our {{timezone}} team will pick this up in the morning with full context. They've been briefed.
— {{agent_name}}
Hi {{first_name}},
This is a great fit for our sales team to walk you through, since you're asking about pricing and procurement. I've looped in {{rep_name}}, who'll be in touch within a day.
— {{agent_name}}
Hi {{first_name}},
Quick update — engineering has confirmed your bug report and assigned it as a P{{priority}}. ETA is {{timeframe}}. They'll let me know when it ships, and I'll let you know.
— {{agent_name}}
Hi {{first_name}},
Now that you're on our {{tier}} plan, you have a dedicated Customer Success Manager — meet {{csm_name}}. She'll reach out tomorrow to set up a quick intro call.
— {{agent_name}}
A few suggestions:
| Week | What to add | Why |
|---|---|---|
| Week 1 | Refund + apology templates (1–10) | Highest-stakes interactions |
| Week 2 | Onboarding + welcome (11–15) | Sets tone for the relationship |
| Week 3 | Account + sales-leaning (16–25) | Daily-use volume |
| Week 4 | Tricky situations + closing (29–40) | Hardest to write from scratch |
| Ongoing | Notifications + internal handoffs (41–50) | Add as situations come up |
By day 30, your top 50 patterns are covered. Agents stop rewriting from scratch. CSAT consistency improves measurably within the same month.
After rolling these out, track:
For the broader support metrics framework, see Support Metrics That Actually Predict Revenue.
Templates for the patterns (refund, password reset, billing question). From scratch for everything else. Most teams find ~60% of replies are pattern-matchable; the other 40% deserves custom writing.
Only if you don't customize. The cue isn't "this looks templated" — it's "this doesn't match my situation." If the template fits the situation and you've personalized the name and details, it reads as a thoughtful reply.
Pull your last 100 closed tickets. Identify the top 10 patterns. Write templates for those. Most teams find ~60% of recent tickets fit one of 10 patterns.
AI-suggested replies and saved replies complement each other. AI handles the contextual draft (grounded in your help docs); saved replies handle the high-frequency patterns where the answer is the same regardless of context. See The AI Customer Support Playbook.
Use merge fields with explicit fallbacks ({{first_name|"there"}}). Never let an empty merge field render as "Hi ," — that's the #1 templated-reply giveaway.
Try LinoChat free — saved replies with merge fields, AI-suggested replies, and a one-click "save this reply" button are all built in.