Retainers are the reason agencies survive and the reason agencies quietly go broke. Predictable revenue is wonderful right up until the month you realise three of your six retainer clients are getting 60 hours of work for a 40-hour price, and nobody noticed because nobody was counting.
Good agency retainer management is mostly boring discipline: define what the money buys, track what you actually deliver, and have a structured conversation before the numbers get ugly. Here's the operating system.
Decide what your retainer actually sells
Most retainer problems trace back to a fuzzy agreement. There are three honest models, and you should pick one per client and write it down.
1. Capacity retainers (hours)
"40 hours per month across strategy, content, and technical." Easy to price, easy to defend, easy to over-deliver on if you don't track. Best for clients whose priorities shift monthly.
2. Deliverable retainers (outputs)
"Four optimised articles, one technical audit sweep, monthly reporting call." Clients love the clarity. The risk is that "one article" quietly grows from 1,200 words with two revisions to 2,500 words with six. Define the boundaries of each deliverable, not just the count.
3. Outcome retainers (results plus a floor)
"Base fee of $4,000 plus $1,500 when we hit agreed leading indicators." These only work when you control enough of the variables and the client ships changes on time. If your dev queue is 8 weeks deep on the client side, don't sell outcomes.
Whichever model you choose, the contract needs four things: what's included, what's explicitly excluded, what happens to unused capacity, and how change requests get priced. Ninety percent of retainer disputes come from a gap in one of those four.
Price against capacity, not optimism
Start with a target blended rate. If your fully-loaded cost per delivery hour is $65 and you want a 55% gross margin on services, your blended rate is roughly $145-150.
So a $6,000/month retainer buys about 40 hours. But 40 hours of billable client work is not 40 hours of retainer scope. Reserve for:
- Reporting and the monthly call: 3-4 hours
- Internal QA and PM overhead: 2-3 hours
- Slack/email/ad-hoc questions: 2-3 hours (yes, this is real work)
That leaves 30-32 hours of actual production. Scope to that number, not to 40. The agencies that get burned scope to the full 40, absorb 8 hours of comms and reporting, and end up at 48 delivered hours — an effective rate of $125 instead of $150. That's a 17% margin hit, invisible on the P&L until you've done it across six accounts for a year.
Track burn weekly, not monthly
Monthly time tracking tells you what you lost. Weekly tracking lets you do something about it.
Set three thresholds per account and make them visible to whoever runs the project:
- 50% of budget consumed by day 10-12: normal. No action.
- 75% consumed before day 18: yellow. The PM reviews remaining scope and re-sequences what ships this month.
- 90% consumed before day 22: red. Either something gets pushed to next month or a change request goes to the client. Nobody silently eats the overage.
The critical rule: burn alerts are a PM decision point, not a punishment. If your team fears the yellow flag, they'll stop logging time honestly and you'll lose the only signal you have. Whether you run this in a spreadsheet or in a tool that shows retainer burn against logged hours in real time — PeakKR was built around exactly this for agency retainers — the discipline matters more than the software.
Kill rollover before it kills you
Rollover hours sound generous and behave like debt. A client who under-uses you in January and February because their site was frozen shows up in March expecting 120 hours in a month where your team has 40 available.
Default position: capacity expires monthly. The client is paying for reserved availability, the same way a gym membership works. If they push back, offer a bounded compromise:
- Maximum 20% carryover
- Expires after 30 days
- Applies only when the shortfall was caused by the agency, not by client delays or approval bottlenecks
Write the delay clause explicitly. "Hours not used due to pending client approvals or content sign-off are forfeited" has saved more agency margins than any pricing model.
A monthly cadence that runs itself
The best retainer relationships have a rhythm the client can predict. Here's a cadence that works across a 4-week cycle:
Week 1 — Commit
Publish the month's plan: what ships, what's dependent on the client, what's parked. Ten items maximum. Get an explicit yes on priorities so that mid-month requests have something to be traded against.
Week 2 — Produce
Heads-down delivery. This is also the week to flag anything blocked on client input, while there's still time to recover.
Week 3 — Checkpoint
Burn review plus a short async update. If you're at 75%, decide now what moves. Mid-month is also when you should surface problems — bad news delivered early is a competence signal; bad news delivered on the reporting call is a surprise.
Week 4 — Report and reset
Results, hours used, next month's proposed priorities. Keep the reporting focused on business impact rather than task volume — a list of 47 completed tickets impresses nobody, while pipeline movement does. If you're stuck in activity-reporting mode, the KPIs that actually matter are a better anchor for these conversations.
Handle scope creep with a written rule, not a mood
Scope creep on retainers rarely arrives as a big request. It arrives as "quick question," "can you just," and "while you're in there."
Adopt a threshold rule and tell the client about it in onboarding:
- Under 15 minutes: absorbed, but logged as "goodwill."
- 15 minutes to 2 hours: logged against retainer capacity, and displaces something else in the month's plan.
- Over 2 hours: change request with an estimate, approved in writing before work starts.
Log the goodwill work even though you're not charging for it. At the quarterly review, "we absorbed 11 hours of out-of-scope requests this quarter" is one of the strongest retention and repricing arguments you'll ever have — and it costs you nothing but a time entry.
Make the value visible every single month
Retainers churn when the client can no longer see what they're paying for. This is almost always a visibility problem, not a delivery problem. Clients who can log in and see work in progress renew at noticeably higher rates than clients who receive a PDF once a month.
Two practical moves: give each stakeholder the view they actually need (the CMO wants pipeline, the SEO manager wants ticket status), and automate the mechanical parts of reporting while keeping the interpretation human. Both are covered in more depth in custom client views for multi-stakeholder projects and

Nick Quirk

