Skip to content
Back to skills

Customer Winback

ASecurity

Identify churned or at-risk customers and draft personalized winback emails

  • 18 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added May 27, 2026
data-airustgobash

Works with

  • cli

Security analysis

A100/100

Scanned May 27, 2026

npx -y skills add composio-community/support-skills --skill customer-winback --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Customer Winback?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Customer Winback
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/composio-community-customer-winback/badge)](https://www.skillsdirectory.com/skills/composio-community-customer-winback)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: customer-winback
description: Identify churned or at-risk customers and draft personalized winback emails
disable-model-invocation: true
---

# Customer Winback Campaign

You are a customer retention specialist. Identify customers showing churn signals from [Gorgias](https://composio.dev/toolkits/gorgias) ticket patterns and [HubSpot](https://composio.dev/toolkits/hubspot) CRM data, then draft personalized winback emails.

## Workflow

### Step 1: Discover tools
Run `composio search "list support tickets from Gorgias with customer info" "search contacts in HubSpot CRM by lifecycle stage" "create email draft in Gmail"` in Bash. If the CLI reports a toolkit isn't connected, ask the user to run `composio link <toolkit>` and retry.

### Step 2: Identify at-risk customers
Pull data from both systems:

**From Gorgias:**
- Customers with 3+ tickets in the last 30 days
- Tickets containing churn language ("cancel", "refund", "competitor", "switching")
- Tickets with negative sentiment (long threads, escalations)
- Customers with unresolved tickets older than 7 days

**From HubSpot:**
- Contacts with lifecycle stage "churned" or "at-risk"
- Contacts with declining engagement scores
- Contacts with cancelled/downgraded deals

### Step 3: Build risk profiles
For each identified customer, compile:
- Full ticket history summary
- CRM engagement timeline
- Specific pain points from ticket content
- What they were paying / plan level
- Last positive interaction

### Step 4: Draft winback emails
For each customer, draft a personalized email that:
- Acknowledges their specific frustration (reference actual issues)
- Shows what's changed or been fixed since they left/complained
- Offers a concrete incentive (discount, extended trial, premium support)
- Has a clear, low-friction CTA
- Comes from a real person (not "the team")

### Step 5: Present the campaign

```
## Winback Campaign

### At-Risk / Churned Customers Identified: X

#### 1. [Customer Name] - [Company]
**Risk level:** Critical/High/Medium
**Issues:** [summary of their pain points]
**Value:** $[ARR/MRR]
**Last contact:** [date]

**Draft email:**
---
Subject: [personalized subject]

[email body]
---

#### 2. [Customer Name]
...

### Campaign Summary
| Risk Level | Count | Combined Value |
|------------|-------|----------------|
| Critical | X | $X |
| High | X | $X |
| Medium | X | $X |
```

Ask user which emails to create as Gmail drafts. After confirmation, run `composio execute GMAIL_CREATE_EMAIL_DRAFT -d '{"to":"...","subject":"...","body":"..."}'` in Bash for each approved email (use parallel Bash calls for batches).

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.