TL;DR: A managed IT services provider in Manchester was losing 7-8 clients annually to reactive renewal management. Their second-biggest client left after the contract expired without anyone noticing. The signs were there—declining usage, fewer support tickets—but nobody was looking. We built an agent that monitors contract dates, scores client engagement, flags at-risk renewals, and generates briefing documents for account managers. Annual churn dropped from 15% to 8%. Three at-risk clients were saved in the first quarter alone, retaining £14K monthly in recurring revenue.

"Thanks for Everything"

The account manager stared at the email. Subject line: "Thanks for Everything."

Their second-biggest client. £8,200 per month. Gone.

The contract had expired three weeks ago. Nobody noticed. The client hadn't complained - they'd just quietly decided not to renew. By the time anyone at the MSP realized, the client was already signing paperwork with a competitor.

The owner's first reaction: "How did we miss this?"

The answer was uncomfortable. They missed it the same way they missed everything: too busy fighting fires to watch the horizon.

Looking back, the signs were obvious. Usage had dropped 30% over the past four months. Support tickets had gone from weekly to almost none. The last meaningful conversation was seven months ago.

The data existed. Nobody connected it.

The Company

A managed IT services provider serving businesses across Greater Manchester and Lancashire. Details anonymized for commercial sensitivity - but the pattern is common.

18 employees: 12 technical staff, 3 account managers, 2 admin, and the owner.

£1.4M revenue, with 65% coming from recurring contracts. 47 active contracts ranging from £800 to £14,000 monthly. Average contract length: 24 months.

The owner had built a solid book over 11 years. Client retention was "good"—around 85%. But "good" meant 7-8 clients leaving per year. At an average contract value of £4,200 monthly, that was £400K+ in annual revenue walking out the door.

What they'd tried:

A spreadsheet with contract end dates. Updated inconsistently.

Calendar reminders 60 days out. Ignored during busy periods.

Quarterly account reviews. Happened twice, then stopped.

Account managers "keeping an eye on things." Reactive, not proactive.

The core issue: nobody owned renewal as a function. It was everyone's job, which meant it was nobody's job.

The Math of Reactive Renewals

When renewals happened reactively, the pattern was always the same:

Contract expires or client sends cancellation notice.

Panic. Check when anyone last spoke to them. Realize it's been months.

Scramble to schedule a call. Try to save the relationship.

Often too late. Client already talking to competitors.

Post-mortem reveals warning signs that were visible for months.

The numbers told the story:

7-8 clients lost per year. That's 15% annual churn.

4.2 months of declining engagement before cancellation, on average. The slide was visible if you knew where to look.

80% of churned clients had submitted fewer support tickets in their final quarter.

60% had declining usage metrics in their final six months.

Zero clients received proactive outreach before cancellation.

Beyond the obvious revenue loss, there were hidden costs. Unhappy former clients talk—the owner traced two lost referrals back to a churned client who told their network. Every lost client meant more pressure on sales to replace them. Account managers felt blindsided: "I had no idea they were unhappy."

And renewals on autopilot meant no price increases for three-plus years on some contracts. Inflation eating margins while nobody reviewed terms.

For more on calculating what churn actually costs, we've written about the hidden math.

The Real Problem

The data existed.

Usage metrics lived in the monitoring dashboard. Support tickets lived in the helpdesk. Contract dates lived in the CRM. Communication history lived in email.

But nobody was connecting the dots. Nobody had time to look at 47 contracts and ask: "Which of these clients is quietly becoming unhappy?"

The bottleneck wasn't information. It was attention.

What We Built

The contract renewal predictor has five stages.

Stage 1: Contract Monitoring

Pulls all active contracts from the CRM with end dates, values, and terms. Calculates days until renewal for each. Creates tiered alert windows: 120 days (early warning), 90 days (planning), 60 days (action), 30 days (urgent).

Runs daily. Catches any contract entering a new tier.

Stage 2: Engagement Scoring

For each contract in an alert window, pulls engagement metrics from multiple sources.

Support ticket volume: trending up, stable, or declining? Usage metrics from monitoring tools: active users, feature adoption, resource consumption. Communication frequency: last meaningful interaction, email response rates. Payment patterns: on-time, delayed, disputed?

Generates an engagement score (1-100) with a trend indicator. A score of 72 trending down is different from 72 trending up.

Stage 3: Risk Classification

Combines contract timing, engagement score, and historical patterns.

Classifies each renewal: Green (healthy), Yellow (monitor), Red (at risk).

Red flags specific risk factors: "Usage down 34% over 3 months, zero support tickets in 60 days, no response to last 2 emails."

The system learns from outcomes. Which patterns actually predicted churn? Which false alarms can be filtered out?

Stage 4: Renewal Brief Generation

For each contract entering the 90-day window, generates a one-page brief.

Contract summary: value, history, key contacts, services used. Health assessment: engagement score, risk factors, trend analysis. Recommended actions: pricing review, service expansion, save strategy. Talking points: what to discuss in the renewal conversation.

The account manager doesn't start from scratch. They start from insight.

Stage 5: Alert and Assignment

Routes the renewal brief to the assigned account manager. Sends Slack notification with risk level and deadline. Creates a CRM task with the brief attached.

Red accounts escalate to the owner for visibility. Because when the owner sees Red, it should mean something.

For a breakdown of what agents actually do versus regular automation, we've explained the difference here.

Why This Was Harder Than It Looks

The easy part is tracking contract dates. A spreadsheet does that.

The hard part is defining what "at risk" actually means.

We spent three weeks analyzing their historical churn data. Which signals actually mattered?

Support tickets declining was predictive. Usage dropping was predictive. But some clients with low usage renewed happily for years - they just didn't need much. Context matters. A small client submitting zero tickets might be perfectly satisfied. A large client submitting zero tickets after averaging five per month is concerning.

The other hard part: not creating alert fatigue. If everything is flagged, nothing is flagged. We tuned thresholds so Red alerts were rare and meaningful. In a typical month, maybe 2-3 contracts hit Red. When it happens, account managers pay attention.

Tech stack:

  • n8n for workflow orchestration

  • HubSpot CRM for contract and contact data

  • ConnectWise for support ticket data

  • Datto RMM for usage metrics

  • Slack for notifications

  • Google Docs for renewal briefs

Monthly cost: About £45. Mostly n8n hosting plus API calls.

The Numbers

Before:

  • 15% annual churn (7-8 clients lost)

  • Zero proactive renewal outreach

  • £400K+ lost annual revenue

  • Renewals on autopilot, no price reviews

  • Account managers blindsided by cancellations

After:

  • 8% annual churn (3-4 clients lost)

  • 100% of contracts get 90-day renewal review

  • 3 at-risk clients saved in first quarter (£14K/month retained)

  • 22% of renewals included price increases

  • Account managers feel prepared and proactive

First-year impact: £168K in retained revenue (3 clients saved × average £4,200/month × 12 months) plus £38K from price increases on renewals. Total: £206K additional revenue. Agent cost: £540/year.

The save that proved it:

The first Red alert came through for a client the account manager thought was fine. She called them. Turns out they'd been frustrated for months but never said anything. Service response times had slipped. They felt ignored.

She fixed the issues. They renewed for three years.

"Without that alert, I would have found out when they cancelled. The signs were there. Nobody was looking."

The Unexpected Benefit

Account managers now have something concrete to talk about.

Instead of awkward "just checking in" calls, they show up with data. "I noticed your team's usage of the security dashboard dropped last month. Is everything working okay?"

That's not account management. That's partnership. Clients notice the difference.

The Pattern

If your business has recurring revenue contracts and you're managing renewals reactively, you're playing defence when you should be playing offence.

You might recognize this:

  • You've lost a client and only found out when they sent a cancellation notice

  • Contracts auto-renew without price reviews because nobody has time

  • Account managers have too many accounts to give each one real attention

  • The data exists—usage, support, engagement—but nobody's connecting it

  • "Client health" is a gut feeling, not a metric

The data is there. The question is whether anyone's looking.

Next Steps

Want to see 25 agent architectures like this one? Download Unstuck—it includes this one plus blueprints for lead gen, invoicing, dispatch, proposals, and more.

Already know retention is your bottleneck? Take our AI audit - 10 minutes, no pitch.

by SP, CEO - Connect on LinkedIn
for the AdAI Ed. Team

Keep Reading