The benchmark numbers for 2026 are unkind to project shops. Average professional services retention sits at 84%, top-quartile agencies hit 92–95%, and retainer businesses churn about 18% a year against 42% for project-based agencies. Small agencies fare worst: 32% annual churn for teams of 1–10, versus 15% for firms over 50. And roughly 43% of B2B churn happens inside the first 90 days.

Nobody churns on the renewal date
They decide months earlier, usually over something small: a question that got answered four days late, a status they had to ask for twice, a reply that never came because it was sitting in someone's drafts. By the time it reaches a renewal conversation, the decision is old and you're arguing with a memory.
Which means retention is a detection problem before it's a relationship problem. The work is noticing the account going quiet while there's still time to pick up the phone.
Four signals, one conversation
Every at-risk client shows up as one of four things. In rough order of urgency:
- Upset — they said something that read as annoyed, and somebody softened it or sat on it instead of escalating.
- Waiting on us — the last message in the thread is theirs.
- Unanswered question — a direct question, no answer yet.
- Gone quiet — a client who used to write weekly and hasn't in a while. Note this is a window: past a certain point the engagement is over, not quiet, and putting it on a weekly list forever is how the list stops being read.
The discipline that makes this work is treating them as one item per client, not one per signal. A client is one conversation to have, and a list that fires four alerts for the same account trains everyone to ignore all four.
A held reply is not an answer
The subtle one, and the reason manual review misses churn: a draft waiting for approval is, from the client's side, silence. If your process counts "we wrote something" as answered, your at-risk list is flattering you. Only a message that actually went out counts.
Gavril's client attention list applies exactly these rules across every project, and posts what it finds to the team chat — never to the client, because telling a quiet client you noticed they went quiet is a message nobody asked for. Pair it with an onboarding that front-loads month three and the 90-day window stops being the dangerous one.
The profit leaks you can measure are expensive. The account that quietly stopped replying is more so.
← All posts