All articles
Playbook5 min read

Agency Capacity Planning: Check the Commitment Before Saying Yes

Plan agency capacity by comparing confirmed work and review needs with the time and skills actually available before accepting a new commitment. Keep provisional work separate, and make the tradeoff explicit when the week is already full.

The Mio Team

TL;DR

  • A free calendar slot is not the same as delivery capacity.
  • Separate confirmed, provisional and blocked work instead of adding every possible project together.
  • Check the scarce review skill, not only the agency's total hours.
  • Use AI to prepare the decision; people still own estimates, staffing and client promises.

The question is whether the next promise fits

A team can have spare hours overall and still be unable to deliver a new client request. The designer may be available while the only person who can review the work is already committed. Agency capacity planning should expose that constraint before someone says 'we can do Friday'.

Asana's capacity-planning guide distinguishes available resources from the demand placed on them and includes skills, availability and workload. For an agency's weekly decision, turn that broad principle into a small commitment review. You do not need to rebuild the entire resource plan every time a request arrives.

Keep three kinds of demand separate

DemandHow to record itWhat not to assume
Confirmed workAccepted deliverable, owner estimate, required skill and committed windowEvery task is equally urgent or can move
Provisional workPossible start, decision date and estimate range if knownA sales probability is a confirmed allocation
Blocked workRemaining effort, missing input and likely restart conditionWaiting on a client makes the future work disappear
Review workRequired reviewer, review window and expected roundsProduction hours include every approval
Unplanned reserveExplicit time held for likely interruptionsEvery unallocated hour is available to sell

The categories should not become competing spreadsheets. Keep the authoritative estimate in the project system and link to it. The review simply brings the current commitments together with their assumptions. If the request changes an existing agreement, run the scope-change review first so you are estimating the right work.

Use available time, not nominal time

A fictional example: an editor has 24 hours available for delivery this week after known non-delivery commitments. Fourteen hours are already assigned to confirmed work, four to review and four are deliberately held as interruption reserve. The remaining capacity is two hours, not ten.

A new six-hour request therefore needs a four-hour tradeoff or a different window. The answer is not to silently erase review or reserve from the calculation. Ask whether another commitment can move, whether a qualified teammate can take a bounded part, or whether the requested date must change.

Those numbers illustrate the arithmetic, not a recommended utilization target. Use estimates accepted by the people doing the work. Avoid deriving capacity from Slack activity, message count or how late someone was online. This is a delivery-planning aid, not a productivity score for individuals.

Check the bottleneck in order

  • Which deliverable is genuinely committed, and by whom?
  • What work and review must happen before it can be accepted?
  • Which required skill or reviewer has the least available time in the needed window?
  • Does an input arrive early enough for that sequence to happen?
  • Which existing commitment would move if the new one is accepted?
  • Who can authorize the tradeoff and communicate it to the client?

The order matters. Extra production capacity cannot rescue a review that happens after the client deadline. Nor does a missing input justify reserving no time for work that will restart as soon as the client replies. Use the client open-loop review to find those unresolved inputs and make their restart conditions visible.

Prepare a short decision packet in Slack

For each contested commitment, present the requested output, its estimate source, required window, constrained role, conflicting commitment and available choices. End with a specific decision such as 'approve moving the internal presentation, or offer the client next Tuesday'. Do not end with 'the team is busy'.

A cross-agency view should reveal only the information its audience needs. A delivery lead may need project codes, skill demand and dates without seeing another client's commercial details or private conversation. Keep each client's supporting sources separate and do not copy internal planning into a client channel.

Mio's published prioritization workflow shows connected work being assembled into a reviewable agenda. The capacity review proposed here applies that preparation pattern; it is not evidence that Mio automatically estimates effort or optimizes agency staffing.

Try: 'Prepare an internal capacity decision for these approved projects next week. Use owner-confirmed estimates and the supplied availability plan. Separate confirmed, provisional and blocked work. Show review constraints and missing estimates. Link every commitment. Do not infer hours from chat activity, assign people, change deadlines or contact clients.'

Record the decision, then check what happened

Once the delivery owner decides, record the accepted tradeoff in the existing plan. A request left open is not accepted capacity. A promised adjustment is not complete until the responsible owner has updated the commitment and the affected people know which version to follow.

After the week, compare the estimates with the actual work using your existing time or delivery records where available. Record missed review steps, work that restarted unexpectedly and commitments made without a capacity decision. Use those observations to improve the next review rather than judging the team from one difficult week.

The outcome to look for is fewer promises that require a last-minute rescue. Start with one delivery team and a short weekly review. Mio can help assemble the context in Slack; your team still owns the promise. Try Mio on a recurring operating review.

Mio is the Slack-native AI coworker that already knows your company, connects to 3,000+ tools, and turns shared context into work. Just @mio, it's handled.