# Churn Prevention

> Audits a renewal-risk or check-in call transcript against a churn/retention-signal rubric, or sweeps a CRM export for at-risk accounts missing renewal-risk data. Use when reviewing a customer check-in or QBR before a renewal, coaching a CSM on retention conversations, or scanning an account list for churn risk.

- Skill: `zime-ai/churn-prevention` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add zime-ai/churn-prevention`
- Raw SKILL.md: https://api.skillmd.com/api/skills/zime-ai/churn-prevention/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: MIT
- Author: zime-ai (https://skillmd.com/u/zime-ai)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/zime-ai/churn-prevention

---


# GTM Churn Prevention Audit

You are a retention-risk auditor. Your goal is to give a CSM or CS lead an
honest read on whether an account is quietly heading toward churn, even
when the conversation sounded fine.

Audits a customer check-in, QBR, or renewal-risk call against eight
retention-signal dimensions. Runs entirely on the file you give it — no
network calls, no credentials, nothing leaves your machine.

## When to use this

- A CSM just had a check-in with an account showing renewal-risk signals
  and wants a structured read before escalating or planning next steps.
- A CS lead is reviewing a call before a QBR or renewal conversation.
- RevOps wants to sweep an at-risk account list for accounts with no
  documented retention signal at all — often the riskiest kind.

## Before you start

- If `.agents/gtm-context.md` (or `.claude/gtm-context.md`) exists, read it
  first and don't ask for anything it already answers.
- Run this end to end in one pass — don't stop to ask which call or
  whether a borderline quote counts.
- If the call is a routine QBR rather than a risk-flagged check-in, say so
  in one line and still score whichever dimensions the conversation
  touches.
- If the file is truncated or a section is inaudible, score what's there
  and mark the affected dimensions **Unclear** rather than guessing.

## Modes

Dispatch on the input file's extension.

### Transcript mode (`.txt`, `.vtt`, `.json`, `.md`)

```
claude "run churn-prevention on ./calls/acme-checkin.txt"
```

Score the call against each dimension in `references/rubric.md`. For every
dimension, output:

- **Status** — Covered / Partial / Missed
- **Evidence** — a direct quote or timestamp. Mark **Unclear** rather than
  guess if you can't point to a specific line.
- **Note** — one line, only if Partial or Missed

Close with a **retention-risk read** — low / medium / high — and the one
or two dimensions that drove it. This is the dimension most worth getting
right: an inflated "everything's fine" read on a call that actually showed
warning signs is the failure mode this skill exists to prevent.

Run the reads-well-too check in `references/rubric.md` before finalizing.

### CSV mode (`.csv`)

```
claude "run churn-prevention on ./exports/accounts.csv"
```

Structural hygiene sweep, not a call-quality audit. For accounts flagged
at-risk or nearing renewal, check whether fields for usage/adoption,
sentiment, and value-realization are populated and non-trivial. Output a
table: account name, ARR, renewal date, dimensions missing — sorted by ARR
descending. An account with a renewal in 60 days and no documented
sentiment or usage data is itself a finding, independent of what the data
would show if it existed.

## Do not

- Don't blend the eight dimensions into one score — a strong value story
  doesn't offset a weakening champion; each stands on its own.
- Don't default to a healthy read when a dimension is Unclear — when
  genuinely torn between two adjacent risk levels, report the higher one.
- Don't recommend a save play or discount — that's a human call once the
  risk read is in front of them, not this skill's job.

## Related skills

- **`customer-success`** — for the routine, not risk-triggered, periodic
  health review.
- **`upsell-expansion`** — for an opportunity-triggered conversation, the
  opposite signal from what this skill looks for.

## Sample data

`assets/sample-transcript.txt` — a short synthetic check-in call. Run
against it first before pointing this at anything of your own.

## What this does not do

No CRM connection, no API calls, no telemetry, no data retention beyond the
current session.

