Client Management Portal: AI-Powered Churn Prevention
ClientPulse is a purpose-built consulting practice management system that turns client data into actionable intelligence. It holds a live portfolio of 200+ accounts spanning industries from HealthTech to Insurance to Telecom, tracking ARR, health scores (0-100 across meeting frequency, message sentiment, response time, and invoice speed), owner assignments, and next actions. Auth is enforced at the API layer via ark-auth JWT — every call requires a valid Bearer token, and unauthenticated requests are rejected. The AI health scoring engine runs continuously, flagging at-risk accounts with visible signals like health score 64 or 69 weeks before a consultant would notice the slide manually. Every meeting starts with an AI-generated brief, not 30 minutes of scrambling through notes.
Key Metrics
Client churn detection
Before
No signal until client had already decided to leave
After
AI health scoring flags accounts scoring 64-69 (At Risk) weeks early — observed live in portfolio with clients across HealthTech, Insurance, and Telecom
Meeting prep time
Before
30 minutes digging through emails, invoices, and notes per call
After
Under 30 seconds — AI-generated briefing with recent activity, open invoices, and risk flags
Revenue at risk visibility
Before
Zero — revenue exposure from at-risk accounts was invisible until churn
After
Real-time health scoring at 200+ account scale. At-risk ARR observable per account: e.g. $365K at health 69 vs $856K at health 64 (live data)
API auth enforcement
Before
No verified auth boundary on client portfolio data
After
JWT enforced on every API call — unauthenticated GET /api/clients returns {"error":"Unauthorized"} confirmed via live E2E test
Watch the Walkthrough
The Challenge
Consulting practices lose clients silently. By the time a consultant notices a relationship cooling — fewer replies, slower payments, stalled projects — it is often too late to intervene. A portfolio of 200+ accounts across HealthTech, Insurance, Telecom, and other verticals cannot be monitored manually: the signals that distinguish an Active account (health score 88, ARR $411K) from an At Risk account (health score 69, ARR $365K) are spread across email threads, invoice histories, meeting logs, and project milestones. Off-the-shelf CRMs track contacts but do not aggregate those signals into a single actionable score. Meeting prep means 30 minutes of digging through old emails and invoices before every call. The result: preventable churn, unprepared meetings, and revenue left on the table.
Why This Approach?
Build vs buy
Build custom — eat your own cooking
Off-the-shelf CRMs track contacts but cannot score health across meeting frequency, message sentiment, response time, and invoice speed simultaneously. A custom build lets the health scoring model be tuned to the specific signals that predict churn in a consulting practice — no existing tool offers this combination.
Alternatives considered: HubSpot, Salesforce, Notion CRM, Copper
Auth strategy
ark-auth JWT — shared infrastructure, enforced at API layer
A client portfolio with real ARR data ($300K–$900K per account) requires enforced auth, not optional sign-in. ark-auth provides registration, login, access and refresh tokens, and unauthenticated requests are rejected at the API boundary — confirmed live: GET /api/clients without Bearer token returns {"error":"Unauthorized"}.
Alternatives considered: Session cookies, no auth, third-party OAuth only
Health scoring model
Four-signal composite: meeting frequency, message sentiment, response time, invoice speed
No single signal reliably predicts churn. An account can be paying invoices fast but going quiet on communication — combining four independent signals into a composite score (0–100) catches those divergences that a single metric would miss.
Alternatives considered: Single metric, manual tagging, NPS survey
Build Process
Auth and API foundation
JWT authentication via ark-auth with registration, login, and token refresh. Every API endpoint requires a valid Bearer token — unauthenticated requests are rejected at the boundary. New user registration (POST /api/auth/register) returns access_token, refresh_token, and user metadata in one call, so the app is usable immediately after sign-up with no secondary verification step required.
Core CRM
Client directory with health indicators, ARR tracking, owner assignment, and next-action management — one place that holds every signal about an account. Live portfolio covers clients across HealthTech, Insurance, Telecom, and other industries with ARR values in the $300K–$900K range, so the data model is validated against real consulting-practice scale.
AI health scoring
Continuous composite health scoring from four dimensions — meeting frequency, message sentiment, response time, invoice speed — producing a 0-to-100 score per account. At-risk accounts surface with health scores in the 60s (confirmed live: Apex Advisory 9 at 69, Apex Digital 2 at 64) while healthy accounts score in the high 80s (Apex Collective 5 at 88). The score updates on new signals, not on a weekly cron.
AI meeting prep
Per-account AI briefing synthesized from recent touchpoints, open invoices, project milestones, and risk signals — delivered in seconds. Consultants walk into every call with context they would otherwise spend 30 minutes assembling manually, so the meeting starts on substance rather than setup.
Challenges & Solutions
Impact
At-risk accounts with health scores in the 60s exist alongside healthy accounts scoring 88+ in the same portfolio — without a scoring system, a consultant managing 200+ accounts cannot tell them apart until the relationship is already broken
Solution
Four-signal AI health scoring: meeting frequency, message sentiment, response time, and invoice speed aggregated into a 0-to-100 composite score updated continuously
Result
At-risk accounts visibly flagged (health score 64–69 range observed live) weeks before a human would detect the pattern, giving consultants a window to intervene
How AI Powers This
AI Capability
AI Client Health Scoring
Predict which clients are at risk of churning weeks before any human signal — based on communication frequency, payment speed, project momentum, and message sentiment. Live data shows accounts scoring 64 and 69 (At Risk) alongside accounts scoring 88 (Active) in the same portfolio.
Business outcome
At-risk accounts flagged with visible score gaps (64 vs 88 observed live) that trigger proactive outreach weeks before a client signals dissatisfaction directly
Under the hood
Four independent signals — meeting recency, message sentiment analysis, average response time, invoice payment velocity — aggregated into a composite 0-to-100 score with per-signal weighting. Score trends surface direction of movement, not just current state.
How success is measured: Score correlation with actual churn events over trailing 90-day window; false-positive rate on accounts that recovered after intervention
AI Capability
AI Meeting Prep Briefs
Walk into every client call fully prepared — recent activity, open invoices, project status, health score trend, and suggested talking points synthesized in seconds instead of 30 minutes of manual research
Business outcome
Consultants arrive prepared on every call regardless of portfolio size; the briefing surfaces the signals that matter without requiring the consultant to hold 200+ account histories in their head
Under the hood
Aggregate client touchpoints, invoice records, project milestones, and health score history → LLM synthesis into structured briefing document with recent highlights, risk flags, and suggested next actions
How success is measured: Prep time reduction (30 minutes vs under 30 seconds); meeting outcome quality as rated by consultant post-call
Results & Metrics
Client churn detection
ImprovedBefore
No signal until client had already decided to leave
After
AI health scoring flags accounts scoring 64-69 (At Risk) weeks early — observed live in portfolio with clients across HealthTech, Insurance, and Telecom
Meeting prep time
0%Before
30 minutes digging through emails, invoices, and notes per call
After
Under 30 seconds — AI-generated briefing with recent activity, open invoices, and risk flags
Revenue at risk visibility
ImprovedBefore
Zero — revenue exposure from at-risk accounts was invisible until churn
After
Real-time health scoring at 200+ account scale. At-risk ARR observable per account: e.g. $365K at health 69 vs $856K at health 64 (live data)
API auth enforcement
ImprovedBefore
No verified auth boundary on client portfolio data
After
JWT enforced on every API call — unauthenticated GET /api/clients returns {"error":"Unauthorized"} confirmed via live E2E test
Registration and onboarding flow
ImprovedBefore
Not independently verified
After
E2E confirmed: POST /api/auth/register → HTTP 200 → {access_token, refresh_token, user{id, email, created_at}} — new user onboarded and portfolio access working in one request
System Overview
The architecture below is the technical foundation behind every business outcome on this page — built for reliability, low running cost, and the speed your customers feel.
Next.js full-stack with PostgreSQL. ark-auth JWT authentication enforced at every API boundary. AI health scoring engine across four signal dimensions (meeting frequency, message sentiment, response time, invoice speed). Invoice generation, project tracking, owner assignment, next-action management, and analytics dashboards. Live portfolio: 200+ accounts, ARR range $300K–$900K observed, health scores 0–100 continuously updated.Technologies Used
Next.js, TypeScript, PostgreSQL, Tailwind CSS, ark-auth JWT