Skip to content This library is free, offered as dana. If it helps your work, donate here →

This is one of 3,622 free prompts in the penguin tree ai library. Sign up once and the whole library opens, with new prompts by email.

open the library →

Empathetic customer response generator

Generates emotionally calibrated customer support responses for high-pressure or complaint-driven interactions, applying hospitality-register empathy, accountability language, and a clear resolution path. Produces a…

download .md

Purpose

Produce a support reply that defuses an emotionally charged customer situation — acknowledging the feeling, owning what the company can own, and moving to a concrete resolution — in a hospitality register that sounds human rather than scripted. Eliminates the freeze that specialists hit when a message is angry, upsetting, or high-stakes.

When to Use

Invoke this skill when the user asks to:

  • Respond to an angry, upset, or disappointed customer
  • Reply to a complaint about a service failure, delay, or cancellation
  • Handle a refund, chargeback, or compensation request tactfully
  • De-escalate a message with threats to leave a bad review or escalate publicly
  • Soften a "no" — deny a request without losing the relationship
  • Rewrite a draft reply that sounds cold, defensive, or robotic

Inputs Required

Before starting, collect:

  • Customer message: The exact message being responded to (paste verbatim)
  • Situation type: Service failure / cancellation / refund request / billing dispute / policy denial / general complaint / review threat
  • What actually happened: Brief factual account from the company's side
  • What the company can offer: Refund, credit, rebooking, escalation, apology-only — the real options available
  • Constraints: What cannot be offered or promised (policy limits, legal exposure, no-refund terms)
  • Channel: Email / chat / review reply / social DM / phone script
  • Brand voice: Warm-casual / polished-formal / concise-professional (default: warm-professional if unspecified)

If the company's factual account or offer options are missing, respond with a placeholder-free structure and flag the two decision points the specialist must fill before sending.

Instructions

Step 1: Read the Emotional Signal

Identify the dominant emotion driving the message, because the response leads with matching that emotion — not with facts.

  • Anger: Feels wronged, wants accountability → lead with ownership, not explanation
  • Disappointment: Expected better, feels let down → lead with acknowledgment of the gap between expectation and reality
  • Anxiety/panic: Stranded, time-sensitive (missed flight, locked out, event tomorrow) → lead with reassurance and immediate next action
  • Feeling ignored: Repeated contact, no resolution → lead with explicit recognition that they've had to chase this
  • Entitlement/threat: Demanding, review-leveraging → stay warm and firm; acknowledge the frustration without rewarding the threat

Name the emotion internally and choose the lead accordingly.

Step 2: Apply the LARA Structure

Build the primary response on four moves in order:

  1. Listen-back (acknowledge): Reflect the specific problem in the customer's own terms so they feel heard. One or two sentences. Never open with "Thank you for contacting us."
  2. Account (own it): Take responsibility for what the company genuinely owns — no over-apologizing for what isn't the company's fault, no defensive explanation of policy first. Use "I" and "we," not passive voice ("mistakes were made").
  3. Resolve (act): State the concrete thing being done, with a specific timeframe. One clear primary offer, not a menu of hedges.
  4. Assure (close the loop): End with a forward-looking line that restores confidence and leaves a door open, plus a direct point of contact when relevant.

Step 3: Calibrate the Empathy Register

Apply hospitality-register rules that separate genuine empathy from customer-service theater:

  • Specific over generic: "your two-hour wait on the tarmac" beats "the inconvenience you experienced"
  • Human phrasing: "I completely understand why that's frustrating" — never "We apologize for any inconvenience this may have caused"
  • Match, don't escalate: Meet high emotion with calm warmth, not more exclamation points
  • Owning language for denials: When saying no, name the reason plainly and offer the nearest possible alternative — never hide behind "unfortunately, per our policy"
  • No hollow softeners: cut "I hear you," "as per," "kindly," "we value your feedback" as a substitute for action

Step 4: Handle the "No" or Constraint (if applicable)

When the offer is limited or a request must be denied:

  • Acknowledge the desire before the denial
  • State what cannot be done in one clear sentence — no burying it in a paragraph
  • Immediately follow with the nearest thing that CAN be done
  • Never blame "the system," "the policy," or another department by name

Step 5: Produce Tone Variants

Deliver the primary response plus two calibrated variants:

  • Warmer variant: More personal, slightly longer, higher emotional register — for premium/loyalty customers or severe failures
  • Tighter variant: Shorter, cleaner, same warmth at 60% the length — for chat, high-volume queues, or repeat contacts

Output Format

  • Structure: Emotional read (2-3 lines) → primary response → warmer variant → tighter variant → de-escalation checklist
  • Length: 500-750 words total; primary response 90-160 words depending on channel
  • Format: Labeled sections with ready-to-send responses set off clearly for copy-paste
  • Sections: Emotional Read → Primary Response → Warmer Variant → Tighter Variant → De-Escalation Notes
  • Tone: Warm, specific, accountable, human — hospitality register, never corporate boilerplate

Quality Checklist

Before delivering output, verify:

  • [ ] The dominant emotion is named and the response leads with the matching move (not with facts or a generic thank-you)
  • [ ] All four LARA moves are present in the primary response, in order
  • [ ] The response references at least one specific detail from the customer's actual message
  • [ ] No banned phrases appear: "we apologize for any inconvenience," "as per our policy," "kindly," "we value your feedback"
  • [ ] Every offer includes a concrete timeframe or next step — no vague "we'll look into it"
  • [ ] Contains zero bracket placeholders in the customer-facing text; any missing company decision is flagged separately

Notes

  • The single biggest failure in support replies is leading with facts before feelings — an accurate explanation delivered before acknowledgment reads as defensive and escalates the customer.
  • For review threats, never negotiate the review directly; resolve the underlying issue well and the review usually takes care of itself.
  • On phone scripts, break the primary response into spoken beats with natural pauses rather than one paragraph.
  • When the customer is right and the company failed, a plain, unqualified apology is more powerful than any compensation offer — do not dilute it with "but."

How to use this skill

This file is a Claude Code skill in Anthropic's standard format — markdown with YAML frontmatter at the top.

Installing in Claude Code:

  • ~/.claude/skills/<folder-name>/SKILL.md — auto-loads in every session anywhere on your machine (recommended for skills you'll use across multiple projects)
  • <your-project>/.claude/skills/<folder-name>/SKILL.md — auto-loads only when working in that project (recommended for project-specific skills)

Restart Claude Code or open a new session to register.

Using in Claude.ai, ChatGPT, Gemini, or other AI tools:

  1. Drag this file into a new chat, or copy and paste its contents
  2. Send your task or request as your next message — the AI will apply the skill where it fits

For Claude Code skill details: https://docs.anthropic.com/en/docs/claude-code/skills