Your annual maintenance contracts are the steadiest revenue you have — signed, priced, and predictable. But the record of when each one expires usually lives in a single spreadsheet, and that spreadsheet only works if somebody opens it, keeps it current, and acts on it in time. Between site visits, callouts, and new tenders, that somebody rarely gets to it.
So renewals get noticed late, or not at all. A contract lapses, the client moves on or forgets, and by the time anyone realises, the window to renew cleanly has closed. Every AMC that slips through is recurring revenue you already earned once and then let go — not because the work was bad, but because nobody was watching the date.
The whole process depends on one person remembering. Reminders are manual. Renewal quotes are typed from scratch off the old contract. Chasing the client for a decision is one more thing on a to-do list that never empties. When that person is busy, on leave, or has left the company, the renewal pipeline goes dark and nobody notices until the numbers come in low.
And unlike a missed new lead, a missed renewal is invisible. There is no inbound RFQ sitting unanswered to remind you of it — the contract simply ages out in silence. That is what makes the leak so easy to ignore and so expensive to keep ignoring.