A 35-person AI agency in Seattle won three enterprise deals in the same month โ a computer vision project for a retail client, a predictive analytics engagement for a financial services firm, and an NLP pipeline build for a media company. Great sales month. Terrible operations month. The agency had 24 billable staff, and the three new projects required 19 FTEs across overlapping timelines. Combined with existing project commitments consuming 20 FTEs of capacity, the math was impossible. The result: key engineers were split across three or four projects, utilization spiked to 115%, delivery quality suffered, and two senior engineers quit within 90 days citing unsustainable workloads. The agency's best sales quarter became its worst retention quarter because resource planning was an afterthought.
Resource planning is the operational discipline of matching people to projects โ ensuring you have the right skills available at the right time without overcommitting your team or leaving capacity unused. For AI agencies, this is harder than it sounds because the work requires specialized skills, project timelines shift unpredictably, and the talent market is too competitive to maintain large bench capacities.
Why Resource Planning Is Harder for AI Agencies
Skill Specialization
AI agencies do not have interchangeable resources. An NLP engineer cannot easily step into a computer vision project. A data engineer with Spark expertise may not be effective on a project requiring Kafka streaming pipelines. A model architect with experience in healthcare data has domain knowledge that cannot be quickly replicated for a financial services engagement.
This specialization means you cannot just count heads โ you have to match specific skill sets to specific project requirements. Having 10 available engineers means nothing if none of them have the particular expertise your next project needs.
Unpredictable Project Dynamics
AI projects are inherently uncertain. A model training phase estimated at three weeks might take five if the data has unexpected quality issues. A client integration planned for two weeks might expand to four if the client's API documentation is inaccurate. These uncertainties make it impossible to create a resource plan and expect it to hold for more than a few weeks.
Variable Ramp-Up Times
When an engineer joins a new AI project, they need time to understand the domain, the data, the existing codebase, and the client context. Ramp-up times of 2-4 weeks are common, during which the engineer is consuming capacity but not yet fully productive. Resource plans that ignore ramp-up time consistently underestimate project staffing needs.
The Bench Dilemma
Maintaining a bench โ engineers not currently assigned to billable projects โ provides flexibility to staff new projects quickly. But AI engineers are expensive. A senior ML engineer on the bench for two weeks costs $8,000-15,000 in unbilled salary. Most agencies cannot afford a large bench, which means they either overcommit existing staff or delay project starts while recruiting.
Resource Planning Frameworks
The Capacity Matrix
The most fundamental resource planning tool is a capacity matrix โ a visual map of every team member's availability over a rolling 8-12 week period.
Structure your capacity matrix with:
- Rows: Each team member, grouped by skill area (ML Engineering, Data Engineering, Data Science, Frontend/Backend, Project Management)
- Columns: Each week in the planning horizon
- Cells: Percentage of capacity allocated to each project, plus any non-project commitments (internal projects, training, PTO, admin)
Color coding:
- Green (0-75% allocated): Available for additional project work
- Yellow (76-90% allocated): Limited availability, can handle small tasks or short-term support
- Red (91-100% allocated): Fully committed, no availability
- Black (100%+ allocated): Overcommitted โ immediate rebalancing needed
Review the capacity matrix weekly. Tuesday mornings work well โ early enough in the week to make adjustments, late enough that you have visibility into any Monday surprises.
The Skill Inventory
Maintain a database of your team's skills, proficiency levels, and experience. This goes beyond job titles:
For each team member, track:
- Primary skills โ what they are hired to do (e.g., NLP, computer vision, data engineering)
- Secondary skills โ what they can do competently but is not their specialty
- Domain experience โ industries they have worked in (healthcare, finance, retail, etc.)
- Tool proficiency โ specific frameworks, platforms, and tools (PyTorch, TensorFlow, Kubernetes, AWS, GCP, etc.)
- Certifications and training โ relevant credentials
- Client history โ which clients they have worked with (useful for continuity)
- Preference and growth goals โ what they want to work on next (important for retention)
When a new project comes in, querying this inventory tells you exactly who is qualified and interested, not just who is available.
The Demand Forecast
Resource planning is not just about current projects. You need to anticipate future demand based on your sales pipeline.
Build a demand forecast using pipeline stages:
- Signed contracts: 100% probability โ these are committed demand
- Verbal agreement: 80% probability โ staff planning should begin
- Proposal submitted: 40% probability โ identify potential staff, do not commit
- Qualified opportunity: 20% probability โ awareness only
- Early pipeline: 5% probability โ no resource planning action needed
For each opportunity, estimate:
- Required skills and roles
- Start date (or date range)
- Duration
- FTE requirement by role
Multiply each opportunity's FTE requirement by its probability to create a weighted demand forecast. This tells you not just what you need today but what you will likely need in 4-8 weeks.
Example: Three pipeline opportunities each requiring 2 ML engineers. At 80%, 40%, and 20% probability, your weighted demand is 2.8 ML engineer FTEs. You probably need to plan for at least 2 additional ML engineers in the coming weeks.
The Utilization Target Model
Set target utilization rates by role and seniority:
- Senior engineers/architects: 65-75% billable utilization (they spend significant time on mentoring, architecture reviews, and pre-sales)
- Mid-level engineers: 75-85% billable utilization
- Junior engineers: 80-90% billable utilization (they need mentoring time but have fewer non-billable responsibilities)
- Project managers: 70-80% billable utilization
- Data scientists: 70-80% billable utilization
These targets leave room for non-billable activities (training, internal projects, admin, sick time, PTO) while maintaining healthy revenue generation. When actual utilization consistently exceeds targets, your team is overworked and burnout risk is high. When it consistently falls below targets, you have a demand or staffing problem.
The critical insight: Optimal utilization is not maximum utilization. An agency running at 95% utilization has no capacity to absorb surprises, support new business development, or invest in capability building. The 15-25% non-billable allocation is not waste โ it is the capacity that makes the agency sustainable.
Resource Planning Tools
Spreadsheets (The Starting Point)
For agencies under 15 people, a well-structured Google Sheet or Excel workbook handles resource planning adequately.
Build your spreadsheet with these tabs:
- Capacity Matrix โ the week-by-week allocation view
- Skill Inventory โ team member profiles and capabilities
- Pipeline Forecast โ demand pipeline with probability weighting
- Utilization Dashboard โ actual vs. target utilization by person and team
- PTO Calendar โ planned time off affecting capacity
Advantages: Free, flexible, everyone knows how to use it, easy to share.
Limitations: No automated conflict detection, manual updating is time-consuming and error-prone, difficult to model scenarios, poor for agencies above 15-20 people.
Dedicated Resource Management Tools
As you grow beyond 15-20 people, dedicated tools provide capabilities spreadsheets cannot.
Float
Float is a visual resource management tool designed for agencies and professional services firms. Its drag-and-drop interface makes it easy to allocate people to projects, see capacity at a glance, and identify conflicts.
- Visual timeline view of all allocations
- Capacity heatmaps showing over- and under-allocation
- Integrations with project management tools
- Time off and availability tracking
- Reporting on utilization and forecast accuracy
Best for: Agencies of 15-50 people who want a clean, visual resource management experience.
Runn
Runn combines resource planning with financial forecasting, showing not just who is available but the revenue and cost implications of different staffing scenarios.
- Resource allocation with financial modeling
- Scenario planning for different staffing configurations
- Pipeline integration for demand forecasting
- Skills-based matching
- Utilization and revenue reporting
Best for: Agencies that want to connect resource planning directly to financial outcomes.
Harvest Forecast
If you already use Harvest for time tracking, Forecast adds a visual resource planning layer that integrates with your actual time data.
- Schedule-based resource planning
- Integration with Harvest time tracking
- Simple visual interface
- Actual vs. planned comparison
Best for: Agencies already using Harvest that want basic resource planning without adding a completely new tool.
Productive
Productive is an all-in-one agency management platform that includes resource planning alongside project management, time tracking, and financials.
- Resource planning within a broader agency management context
- Skills-based allocation
- Budget tracking alongside resource allocation
- Forecasting and scenario planning
Best for: Agencies that want a single tool for project management, resource planning, and financials.
Kantata (formerly Mavenlink)
Kantata is built for professional services organizations and handles complex resource planning scenarios including multi-project dependencies, skills matching, and capacity optimization.
- Advanced skills matching and resource request workflows
- Multi-project scheduling with dependency management
- Demand planning from CRM integration
- Margin analysis by project and resource
- Enterprise-grade reporting
Best for: Agencies above 50 people with complex staffing requirements and multiple offices or practice areas.
Integrating Resource Planning with Your Stack
Your resource planning tool should not exist in isolation. Connect it to:
- Your project management tool (Jira, Asana, ClickUp) to sync project timelines and task assignments
- Your CRM (Salesforce, HubSpot) to pull pipeline data for demand forecasting
- Your time tracking tool (Harvest, Toggl, Clockify) to compare planned allocation against actual hours
- Your HR system to track PTO, leaves of absence, and headcount changes
- Your financial system to translate resource plans into revenue and cost projections
The more connected your resource planning data is, the better your decisions will be.
The Weekly Resource Planning Process
Monday: Data Gathering
- Update project timelines and staffing needs based on weekend developments and Monday conversations
- Check for new signed contracts or pipeline changes
- Review PTO submissions and upcoming absences
- Note any project completions or scope changes
Tuesday: Resource Review Meeting
Hold a 30-minute resource review meeting with delivery leads and project managers. This meeting has one agenda:
- Current allocation status: Who is overcommitted? Who has availability?
- Upcoming needs: What projects are starting in the next 2-4 weeks? What skills are needed?
- Conflicts: Where do allocation conflicts exist, and how do we resolve them?
- Pipeline changes: Has the sales pipeline shifted in ways that affect resource demand?
- Decisions: What staffing decisions need to be made this week?
This meeting replaces dozens of ad-hoc Slack conversations about "who's available to help with project X."
Wednesday-Thursday: Execution
Act on decisions from the Tuesday meeting โ reassign team members, initiate recruiting for skill gaps, communicate changes to affected project managers and team members.
Friday: Utilization Check
Review the week's actual utilization against plan. Are people spending time where they were allocated? If not, why? This feedback loop improves future planning accuracy.
Handling Common Resource Planning Challenges
The Double-Booking Problem
Multiple project managers want the same person at the same time. Resolution framework:
- Check priority: Which project has higher strategic or financial priority?
- Check alternatives: Can a different person fill one of the roles?
- Check timing: Can one project shift the person's involvement by a week or two?
- Escalate: If none of the above resolves it, the decision goes to the delivery director or COO
Establish this framework in advance so double-booking disputes are resolved quickly and fairly rather than through political maneuvering.
The Pipeline Surprise
A deal you expected to close in six weeks closes in two. You need three ML engineers immediately and have zero available. Options, in order of preference:
- Negotiate the start date. Ask the client for a two-week push. Frame it as ensuring you staff the project with your best people rather than whoever is available
- Partial start. Begin with the team members you have, and add the remaining resources as they roll off current projects
- Contractor augmentation. Bring in a vetted contractor for the first phase while your full-time team finishes current commitments
- Client-side resources. If the client has technical staff, structure the early phases to leverage their team while yours ramps up
The worst option is pulling people off existing projects, which disrupts those deliveries and creates cascading problems.
The Skills Gap
Your pipeline demands a skill your team does not have โ maybe federated learning, a specific cloud platform, or a particular industry domain. Options:
- Upskill an existing team member if the timeline allows 2-4 weeks of learning
- Hire a specialist if the demand is recurring and justifies a full-time role
- Partner with a specialist firm for the specific skill while your team handles the broader engagement
- Use a contractor for the specific skill requirement
Track skills gaps that come up repeatedly โ they signal hiring or training priorities.
The Utilization Valley
Between project phases or after a project completes, team members may have low utilization for a week or two. Use this time productively:
- Internal projects that improve your tooling, templates, or processes
- Training and certification that builds skills for upcoming projects
- Pre-sales support for proposals and technical evaluations
- Knowledge sharing through brown bags, documentation, or mentoring
- Open source contributions that build your agency's technical reputation
Having a list of "bench activities" ready means that low-utilization periods are productive rather than wasted.
Scenario Planning: Preparing for Multiple Futures
Do not plan for a single future โ plan for multiple scenarios.
Scenario 1: Everything Closes
All pipeline deals close on schedule. What is your maximum staffing need? Can you meet it with current team plus contractors? Where are the biggest gaps?
Scenario 2: Half the Pipeline Closes
A realistic middle scenario. Which deals are most likely? What is the minimum team you need to maintain?
Scenario 3: Pipeline Stalls
Revenue drops 30%. What is your minimum viable team? Who would you retain? What projects can be slowed?
Running these scenarios quarterly โ and updating them as the pipeline changes โ means you are never surprised by demand fluctuations. You have already thought through the response.
Your Next Step
Build a capacity matrix this week. Open a spreadsheet, list every team member in rows, create columns for the next eight weeks, and fill in their current project allocations as percentages. Color-code the cells: green for available, yellow for tight, red for full, black for overcommitted. You will immediately see things you did not know โ people who are overcommitted, capacity that is going unused, and upcoming weeks where demand exceeds supply. That single view will improve your resource decisions more than any tool or framework. Once the matrix is useful, evaluate whether a dedicated tool would serve you better. But start with the matrix. Start this week.