Skip to content
Academy
Marketing Academy · Field Work●Growth Marketing
MiniAudit· 30 minutes

The Health-Score Triage: Auditing an At-Risk Account Export

Zendesk

Objective: Given a synthetic 25-account health-score export (login trend, support sentiment, feature-adoption %, current MRR), sort accounts into the three churn signal families, build a composite risk tier, and route each flagged account to the correct save motion.

You're the retention analyst at Zendesk, the customer service and support-ticketing SaaS platform, reviewing this month's account health export before the save-campaign meeting.

Score each account against usage-decline, support-sentiment, and feature-adoption-stall signals, flag accounts showing 2+ active signals as highest priority, and route each risk trigger to the save motion the lesson prescribes for it.

Before you start

What you'll need

Free path (everything below is enough to finish)

FreeScore, flag, and route the account export

Free, handles the filter/pivot workflow this audit needs with no setup

Paid upgrades (optional, faster/deeper)

The free path works fine from a manual monthly export; Mixpanel or Amplitude automate the usage-decline signal continuously instead of requiring someone to remember to pull a new export.

Mixpanel(optional)
FreemiumPull live login-frequency and feature-adoption trend data instead of a static monthly export

Turns this into a continuous monitoring workflow rather than a once-a-month manual pull

The process

2 steps

Step 01 of 02

Sorting accounts into the three churn signal families

The lesson splits churn risk into three signal families: usage-decline (product usage drops ~41% the quarter before cancellation, login-frequency decline gives ~60 days of lead time), support-ticket sentiment (a sentiment spike correlates with ~3x higher churn risk), and feature-adoption stalling (accounts using <30% of core features show ~80% first-year churn).

Of the 25 accounts in this export, which ones show 2 or more of the three signal families active at the same time, and which show only one?

Google Sheets— Import the export, freeze the header row, and add three helper columns that flag each signal family.

Procedure

  1. Import the export and freeze row 1
  2. Add a USAGE_FLAG column: TRUE if 30-day login count dropped 40%+ vs. the prior 30 days
  3. Add a SENTIMENT_FLAG column: TRUE if 2+ support tickets in 30 days scored negative
  4. Add an ADOPTION_FLAG column: TRUE if core-feature usage is below 30% for 3+ consecutive weeks
  5. Add a SIGNAL_COUNT column summing the three flags, sort descending
Sample output
SIGNAL_COUNT = 3 (2 accounts)
  Acct #114 — login -52%, 3 negative tickets, adoption 18%
  Acct #209 — login -61%, 2 negative tickets, adoption 22%

SIGNAL_COUNT = 2 (4 accounts)
  Acct #087 — login -44%, adoption 26% (no sentiment flag)
  Acct #133 — 3 negative tickets, adoption 12% (no usage flag)
  ...2 more rows

SIGNAL_COUNT = 1 (9 accounts)
  ...9 rows, single-signal only

SIGNAL_COUNT = 0 (10 accounts)
  Healthy, no action

Healthy

2 accounts at SIGNAL_COUNT = 3 move to the top of the save-campaign queue, single-signal accounts stay on watch.

Unhealthy

Treating a SIGNAL_COUNT = 1 account (say, adoption-only) the same as a SIGNAL_COUNT = 3 account, or closing the file after only checking usage decline.

What this means

Multiple active signal families is the strongest predictor in the lesson, a composite view catches accounts a single metric would miss.

So what do I do about it?

SymptomActionEffort
An account is flagged on sentiment alone but shows healthy login and adoptionKeep it on watch, don't auto-route to the highest-priority save tier yet5 min
Two or more signal families are active on the same accountMove it to the top of this week's save-campaign queue5 min
YouYou can do this yourself, no engineering access required.

Step 02 of 02

Routing each risk trigger to a matching save motion

The lesson routes each trigger to a specific motion: a usage-decline trigger gets a lifecycle email nudge, a support-sentiment trigger gets a human CSM call (not an automated sequence), and a feature-adoption stall gets a targeted onboarding walkthrough of the specific unused feature most correlated with retention.

For the 6 accounts flagged with SIGNAL_COUNT ≥ 2, what is each account's dominant trigger, and which save motion does that trigger require?

Google Sheets— Add a DOMINANT_TRIGGER and SAVE_MOTION column next to the flagged accounts.

Procedure

  1. For each flagged account, identify which flag is most severe (biggest % deviation from healthy)
  2. Mark DOMINANT_TRIGGER as usage, sentiment, or adoption
  3. Map usage → lifecycle email nudge, sentiment → human CSM call, adoption → targeted onboarding walkthrough
  4. Flag any account where sentiment is the dominant trigger for same-day human follow-up, not a queued task
Sample output
Acct #114 — dominant: sentiment → HUMAN CSM CALL (same-day)
Acct #209 — dominant: usage → lifecycle email nudge
Acct #087 — dominant: usage → lifecycle email nudge
Acct #133 — dominant: adoption → onboarding walkthrough (unused: bulk-export feature)
...2 more rows

Healthy

Every sentiment-dominant account gets a human call this week, not an automated email.

Unhealthy

Enrolling a sentiment-dominant account in the same automated sequence as a usage-decline account.

What this means

The save motion has to match the trigger, a mismatched motion (automated email for a frustrated, ticket-heavy account) wastes the lead time the signal bought you.

So what do I do about it?

SymptomActionEffort
A sentiment-dominant account is sitting in an automated email queuePull it out and assign it directly to a CSM for a same-day call5 min
An adoption-stall account has no specific feature named in its outreachLook up its lowest-adoption core feature and name it in the walkthrough invite30 min
EitherYou or a developer can handle this, depending on your access.

Final deliverable

A routed save-campaign worklist: account name, composite signal count, dominant trigger, and assigned save motion for every flagged account.

See a reference example
Sample output
Care.com, retention worklist (excerpt)

SIGNAL_COUNT = 3
  Family Plus Care Group — sentiment dominant → CSM call scheduled Thu
  Bright Horizons Local — usage dominant → lifecycle email sent

SIGNAL_COUNT = 2
  Sunrise Senior Partners — adoption dominant → onboarding walkthrough (background-check feature) booked
  ...3 more rows

WATCH LIST (SIGNAL_COUNT = 1): 9 accounts, no action this cycle

Success criteria

You're done when you can:

  • Correctly tags all accounts by dominant signal family (usage-decline, support-sentiment, feature-adoption-stall)
  • Flags every account showing 2+ active signal families as highest-priority tier
  • Assigns each flagged account the save motion that matches its dominant trigger, never a generic email for a sentiment-dominant account