The problem
Software gets delivered. Then it quietly stops mattering.
The build ends, the invoice clears, and the relationship moves into support. From that moment on, almost nobody can answer the one question that decides whether it continues: is this actually working for them?
Not because anyone is careless — because the evidence is scattered across three places nobody owns: the app's own logs, the heads of the people using it, and a support thread. Pulling it together takes deliberate effort, so it happens once — the week before a renewal, when it's far too late to change the answer.
Nobody is watching the usage
The app runs fine, so nobody looks. Three months later half the team has drifted back to the spreadsheet, and the first anyone hears about it is a question about the invoice.
Nobody has asked
Asking properly means booking a meeting, so it doesn't happen. What we have instead is a vague sense that things are fine — which is exactly what everyone has right up until they aren't.
Nothing is written down
The outage in June, the bug that took two weeks, the feature we promised. At renewal the client remembers the failures and we remember the fixes, and neither side can produce a record.
The failure mode isn't churn. It's not knowing.
A client who tells us they're unhappy is a client we can help. The dangerous one is the client quietly disengaging while every signal we happen to look at says fine — and that happens because usage on its own always says fine. People open the app. That proves it's being used. It proves nothing about whether anyone thinks it was worth paying for.
So we measure both halves, record our own failures alongside them, and keep the result in a form we can put in front of the client. Not a prediction — a record.