The Retainer I Renewed the Day Before I Ran the Numbers
I signed another year with a client before I looked at what the previous year had actually cost me in real hours.
The renewal email came in on a Thursday. Could we continue for another year, same terms?
I said yes on Friday. The relationship was good. The payments came on time. The client was friendly. I didn't need to think hard about it.
On Saturday, I was cleaning up old project files and I started looking at my time logs from the past twelve months.
I should have done that before Friday.
What the Logs Showed
The retainer was a flat monthly fee. The agreement said up to fifteen hours a month, which I had quoted based on what I thought the work would take.
In month one, I logged fourteen hours. Fine.
By month four I was logging twenty-two. The client had grown comfortable asking for things. Small requests, mostly. A quick review here. A short call there. A document that turned into three rounds of feedback.
None of it felt like a big deal in the moment. The relationship was good. I said yes.
Over the full year, I had billed for one hundred and eighty hours. My actual logged hours were two hundred and sixty-three.
Eighty-three hours. Unlogged, unbilled, absorbed quietly into a retainer that had stopped making sense six months earlier.
How It Happened
I hadn't been ignoring my time logs. I had been tracking most days. The problem was that I had never pulled a cumulative report and looked at the retainer from above.
I saw each month on its own. Some months looked heavy, but I told myself the next one would be lighter. I averaged it out in my head without ever doing the actual math.
When I finally did the math, I found that the effective hourly rate I had earned on this retainer was about sixty percent of what I charged new clients.
I had given that client a significant discount for being consistent and friendly. Which is not how pricing is supposed to work.
What I Had Missed
The warning signs were all in the data. Month four was the first time I went over the fifteen-hour mark. That was the moment to have a conversation about scope.
I didn't have it because I didn't see it. I wasn't running monthly reports against the retainer cap. I was just logging and moving on.
A proper review at month four would have taken twenty minutes. It would have shown me the pattern before it compounded across eight more months.
The Conversation I Had to Have Late
I went back to the client after the renewal was already signed. That was not a comfortable conversation.
I explained what I had found. I showed them the logged hours versus the retainer hours. I wasn't angry. I didn't blame them. The overages had happened because I hadn't flagged them, and that was on me.
We renegotiated the terms. The new retainer was higher and included a clear process for flagging anything that pushed past the monthly cap.
They were reasonable about it. Most clients are when you come to them with data instead of feelings.
What Changed After
I now run a mid-month check on every retainer. I pull the hours logged against the cap and I know exactly where I stand before the month closes. If I'm tracking toward an overage, I mention it to the client before I do the extra work, not after.
Renewals get a full-year review before I respond. I pull the report, calculate the effective hourly rate, and compare it to what I would charge a new client for the same work today. If there's a gap, that gap becomes part of the renewal conversation.
The client who triggered all of this is still a client. The retainer now reflects what the work actually costs.
That took one uncomfortable conversation and a habit of reading my own data. Both were easier than absorbing another year of quiet losses.
Track your time, bill every minute.
Time-Trak is a native Mac and Windows time tracker with a floating timer, automatic screenshots, and one-click invoicing.
Free during beta.
Download Time-Trak →macOS + Windows · Floating widget · Auto screenshots