Managing Retainers: Hour Bundles and Monthly Budgets Without Spreadsheets
For many agencies, retainers are the best revenue there is: predictable, recurring and built on a lasting client relationship. In practice, though, they're also the messiest: usage is tracked in a spreadsheet nobody keeps up to date, the client asks "how many hours do I have left?" and the honest answer is "let me look into that." This article lays out the common retainer models and describes how to manage them without the bookkeeping overhead.
The three retainer models
1. The fixed monthly fee (true retainer). The client pays the same amount every month for an agreed set of services — for example, "maintenance and ongoing development, €2,500 per month." Hours are an internal control metric here, not the basis for invoicing. The risk sits with the agency: structurally over-delivering eats margin, so you want to see how many hours actually went in each month.
2. The hour bundle (prepaid block of hours). The client buys a block up front — 20, 50 or 100 hours — and draws it down. You invoice at purchase; after that the administrative question is: how much is left? The risk here is mostly sloppy tracking: if you don't record usage tightly, you either give away free hours or end up arguing over the follow-up order.
3. The monthly budget with time-and-materials billing. The client reserves capacity ("up to 40 hours per month") but pays for the hours actually worked. More flexible than a fixed retainer, but it requires a clear agreement on what happens to unused hours (do they expire, or roll over?) and an alert when the ceiling is approaching.
Which model fits depends on the work: continuous, predictable work → fixed fee; occasional support → hour bundle; fluctuating but capped demand → monthly budget.
Why the spreadsheet always loses
Tracking retainers in a spreadsheet doesn't fail because of incompetence but because of architecture: usage originates in time tracking, and every minute recorded anywhere else is duplicate administration. The spreadsheet is behind by definition, has no approval step and gives the client no visibility. The solution is to let usage flow from the source: hours logged against the retainer service are the usage.
How to set it up
The setup is the same recipe for all three models, with different accents:
Create an ongoing project per client with the retainer as a service. Choose the billing method that fits the model: subscription (fixed monthly fee), fixed price (hour bundle, invoiced at purchase) or time and materials (monthly budget).
Give the service an hour budget. For the hour bundle that's the bundle size; for the fixed monthly fee and the monthly budget it's the agreed hours per month. From that moment on, the budget bar on the project is your answer to "how much is left?" — live, with zero manual tracking.
Have the team log time against the service. All time tracking for that client lands on the retainer service (and work outside the agreement on a separate service — that discipline matters even more with retainers than with projects, because scope creep comes back every single month).
Automate the invoice. A subscription service should appear on the draft invoice automatically every month; an hour bundle is invoiced at purchase; time-and-materials hours get bundled monthly by invoicing. If someone is still manually assembling "this month's retainer invoices," that's your first win.
Set an alert at 80% usage. The "we're almost through the bundle" conversation is pleasant at 80% and painful at 110%. A budget alert turns the account manager into the bearer of a service update instead of a surprise bill.
The monthly ritual (10 minutes)
With the setup above, retainer management becomes a short monthly ritual:
- Check the usage bars for all retainer clients: who's above 80%, who's structurally below 50%?
- Over-deliverers: have the conversation about expanding or re-scoping — with the time report as the factual basis.
- Under-users: proactively flag what's been left on the table; nothing undermines a retainer faster than a client who starts feeling they're paying for nothing.
- Invoices: review and send — the drafts are already waiting.
Firms like marketing agencies with dozens of retainers get the most out of this: the difference between two days of administration per month and ten minutes per client portfolio.
Frequently asked questions
Do unused hours roll over to the next month? That's a contract choice, not a system choice — but agree on it explicitly. Common practice: with a fixed monthly fee, hours expire (the client pays for availability); with hour bundles they remain valid until the bundle runs out, possibly with a shelf life of 6–12 months.
How do I invoice an hour bundle cleanly? As a single invoice at purchase (fixed price), with the bundle as a service on the project. The usage after that is administrative: hours on the service count down against the budget, and when the bundle is empty a new order follows — not a surprise invoice.
What do I do when a retainer client structurally asks for more than agreed? First make it visible (extra work on a separate service), then discuss it with the numbers on the table. The outcome is often a bigger retainer — a fine result for both sides, provided the conversation is grounded in facts.
Can the client see how much is left themselves? Share the time report periodically or include the remaining balance in your monthly report. Transparency about usage is the best protection for the relationship and for your margin.
In Horixa, a retainer is simply a service with a billing method and a budget: subscriptions appear on the monthly invoice automatically and the budget bar answers the balance question live. Try Horixa free for 14 days.