How to price a monthly retainer from hours you really worked
· 7 min read
A retainer is a bet you make about your own time. You name a monthly figure, the client stops counting hours, and from then on every hour you underestimated comes out of your margin. Most retainers are priced from a hopeful guess about a typical month, and most of them drift. The fix is unglamorous: measure two or three real months first, then price from what actually happened.
The number you are actually looking for
You are not looking for the hours a good month takes. You are looking for the hours a bad month takes, because a retainer has to survive the bad ones.
Work out three figures before you quote:
- The floor. The quietest month you have on record. This is what the client imagines they are buying.
- The typical month. The middle of your range.
- The ceiling. The heaviest month, including the week everything went wrong.
Price against something between typical and ceiling, never against the floor. A retainer priced at the floor is a discount you will be giving every month for a year, and it is very hard to raise later without a conversation that feels like a renegotiation of trust.
Measure real months, not remembered ones
Retainer clients are exactly the ones you stop tracking, because there is no invoice line forcing you to. That is why the estimate goes wrong. Recall of an unbilled month is the least reliable number in a freelance business.
You need a record that runs without cooperation. Punchcard notices which app is in front during your day and, at the closing time you set, prints a receipt itemized by app with a time per line and a day total. No timer to start, nothing to remember, no project picker. At the end of a month it prints a month roll, which is the unit you want here.
Be honest about what that gives you and what it does not. It gives you time per app, per day. It does not give you time per client, because Punchcard has no projects, tags or billable rates and is not going to grow them. If you run three retainers in the same set of apps, a daily total cannot separate them and you should not pretend otherwise. Do you need a project picker? Probably not sets out when that limitation is fine and when it is not.
Where it works cleanly is the single-retainer case, or where the client’s work lives in apps the others do not touch, or as a sanity check on the total. Even the total alone answers the question most freelancers get wrong: whether the month you are pricing had forty working hours in it or a hundred and twenty.
Count the work the client does not see
This is where retainers quietly turn bad. The delivery work is easy to picture. The rest is not, and the rest is the difference between a healthy retainer and a slow leak.
- Communication. Email, chat, the message that arrives at 5 p.m. and reorganizes tomorrow. This is often the single largest line for a retainer client and it never appears in a scope document.
- Meetings. Including the ten minutes before and the twenty minutes after, when you are recovering rather than working.
- Admin. Invoicing, status updates, the shared document nobody reads, the reporting tool.
- Availability. The cost of being interruptible. You cannot measure this directly, and it is real. It shows up as a day that produced less than its hours suggest.
- Onboarding drag. New person on their side means re-explaining decisions made months ago.
Your receipts will show the first three plainly. How much of your week is admin when you run a business from a Mac and How much of your workday goes to email, and how to find out on a Mac go through those two specifically. For availability, add a deliberate allowance rather than hoping it will not matter.
Doing the arithmetic
With two or three months of real data:
- Add the hours for each month, using the month roll or a CSV export.
- Add your overhead allowance for availability and context switching. Whatever percentage you pick, pick it consciously and write down why.
- Divide the retainer you have in mind by the total hours. That is your effective hourly rate on this client.
- Compare it to your project rate. If the retainer pays less per hour than project work, you are buying predictability with your own margin. That can be a perfectly good trade. It should be a decision, not a surprise.
- Set a cap in the agreement. A retainer covering up to a stated number of hours, with anything beyond it discussed, converts an open-ended risk into a normal conversation.
Freelancers: the difference between hours open and hours billed is worth reading alongside this, because the gap between the two is precisely what a retainer hides.
Reprice on a schedule, not on resentment
Retainers do not go wrong suddenly. They go wrong by a few hours a month, and the moment you notice is usually the moment you are already annoyed, which is the worst moment to open the conversation.
Put a review in the calendar every quarter. At the review, look at the last three months of totals and compare them to the assumption you priced on. If the work has grown, you have a fact to bring rather than a feeling: the month is now consistently heavier than the one the price was built on. Clients argue with feelings and rarely with a straight record of hours.
Two practical notes. Keep exports rather than only paper, so a year from now you can look back; CSV export covers that, and Export your time data to CSV and keep it forever has the details. And when a client questions a number, remember what your record is: a log of app time on your own Mac, not a monitoring system and not proof of anything for a third party. Proving your hours when a client disputes an invoice covers how far that evidence goes.
Questions
How many months should I measure before quoting a retainer? Two at minimum, three if you can wait. One month is almost always either the quiet one or the disaster, and you cannot tell which until you have a second.
Can I separate two retainer clients in the same apps? Not from app time alone. Punchcard has no per-client tracking. Either separate the clients by app or by day, or use something built for client attribution.
What if the client asks for a timesheet? A retainer is normally priced on outcome, not hours, and handing over a timesheet quietly converts it into hourly work. If you want to show effort, a summary of where the month went is usually enough. How to show a client where the time went without a timesheet covers the format.
Should the overhead allowance be a fixed number or a percentage? A percentage travels better between clients of different sizes. Whichever you choose, write it down so the next quote starts from a decision rather than a memory.