← Proof
Customer management · case study

Vertical SaaS

Churn stopped being a renewal-week surprise: warning lead time went from 11 days to 96, and net revenue retention from 97% to 108% over nine months.

Size
Enterprise · ~2,400 employees
Engagement
Retention signal build · onboarding-to-adoption redesign
Duration
9 months
Team
1 engagement lead, 2 operators, 1 analyst
Client time
~8 hours a week across customer success and data
New software bought
None — existing product analytics instrumented properly
Illustrative composite

Week zero

Section 01

Churn was discovered at renewal. Health scoring existed but nothing in it predicted anything, so nobody used it.

Net revenue retention

97%

Expansion less contraction and churn, same cohort basis.

Churn warning lead time

11 days

Median days between first triggered risk signal and the renewal decision.

Health score predictive value

None measurable

A score existed. It did not separate churned accounts from retained ones in back-test.

Onboarding to first value

76 days

Contract start to the first defined value behaviour in product.

Renewals worked in final 30 days

68%

Of renewal value, first substantive conversation inside the last month.

What the seam cost

Section 02

The seam was the nine months between onboarding completion and the first renewal read. Nobody owned the account signal in that window, so churn was discovered rather than prevented.

Preventable churn

$3.4M

Churned ARR where a back-tested behavioural signal had fired more than 60 days before the decision.

Contraction absorbed inside a strong expansion quarter

$1.1M

Not visible in reporting until expansion and contraction were split.

Emergency save discounts

$720K

Discount granted in the final 30 days of a renewal cycle, trailing four quarters.

$5.22M a year lost in a window nobody was accountable for.

How it ran

Section 03

01

Back-test before building anything

Took 24 months of churned and retained accounts and tested which behaviours actually preceded a loss. Retired every scoring input that failed the test.

What we read

Four behaviours separated the populations. The existing 14-input score did not.

02

Define onboarding completion in product terms

Replaced the onboarding checklist with a completion definition tied to observed product behaviour, and instrumented it.

What we read

31% of accounts marked onboarded had never reached the behavioural definition. That gap became the first work queue.

03

Move the renewal conversation to day 90

Built the trigger set, assigned an owner per signal, and moved the first substantive renewal conversation to day 90 with a defined agenda.

What we read

Warning lead time 11 → 62 days. Save-discount usage started falling immediately.

04

Split the reporting, then hand back

Split expansion from contraction so a strong upsell quarter can no longer hide churn. Ran the weekly signal review with the customer team, then withdrew.

What we read

NRR 108%, warning lead time 96 days, both read on the definitions set in month one.

At hand-back

Section 04

Net revenue retention

97% → 108%

+11 points; expansion and contraction reported separately from month seven.

Churn warning lead time

11 → 96 days

+85 days of usable warning before the renewal decision.

Onboarding to first value

76 → 41 days

−35 days against a behavioural definition, not a checklist.

Renewals worked in final 30 days

68% → 19%

By renewal value, on the same cohort basis.

What we did not claim

  • One large account renewed on a multi-year term inside the window. NRR is reported both with and without it; the figure above includes it and is flagged as such on the record.
  • We did not claim the retention gain as a product effect. Two product releases shipped in the period and we have no clean way to separate them, so we said so rather than absorbing the credit.

What stayed behind

Section 05

The signal set, the day-90 trigger and the split reporting run inside the customer team's own weekly cadence.

This is an illustrative composite. The numbers, phases and outcomes show how we baseline a motion, read a delta and hand the cadence back — they are modelled on the shape of RevOps work delivered through the network, not lifted from one named client. We publish nothing under a client's name without written sign-off.

One large account renewed on a multi-year term inside the window. NRR is reported both with and without it internally; the figure above includes it and is flagged as such on the record.

The customer management in full

Want this read on your numbers?

We start the same way every time: one baseline, one written definition, one cadence you keep after we leave.