Project profitability decides whether growth makes your firm stronger or just busier. The usual answer is to hire. But new people often inherit the same gaps and make them wider.
This blog comes from the team at We360.ai, a workforce analytics platform used by 10,000+ businesses across 21 countries, with 120,000+ users. We'll take the five leaks one at a time, with the metric that catches each and the first fix to try.

Why doesn't more revenue fix project profitability?
More revenue doesn't fix project profitability because every new project carries the same delivery habits as the old ones. If hours go unbilled or estimates run short today, a bigger pipeline repeats those losses at a larger scale. Profit grows when each project costs less to deliver, and sales then add to it.
Project profitability is the money a project keeps after its costs. In an IT services firm, most of that cost is people's time.
The core formulas are short:
- Gross profit is project revenue minus direct costs, such as delivery salaries
- Net profit is gross profit minus a share of overhead, such as tools and rent
- Project margin is net profit divided by project revenue, shown as a percentage
Track margin for each project, not only for the firm. A firm can look healthy while a couple of accounts lose money every month and the rest quietly cover for them. Raising prices won't help. A project that runs over still loses money at a higher rate.
In short: fix the cost of delivery first, because every leak you leave open grows with each new client you sign.
Why do worked hours never reach the invoice?
Worked hours never reach the invoice when client work goes unlogged, gets written off, or hides inside internal tasks. The billable utilization rate shows the first gap: the share of available hours that went to client work. The realization rate shows the second: how many of those hours you got paid for.
The math is simple. Divide billable hours by available hours and show the result as a percentage. Available hours are contracted hours minus leave and public holidays. Write this utilization rate formula down once. Every team lead should use the same one.
Realization rate is hours billed divided by client hours worked, again as a percentage. High utilization with low realization is a warning. People are busy on tasks you aren't charging for.
Not every internal hour is a leak, since pitches and training keep a firm alive. The leak is time nobody planned.
Planned non-billable time is an investment.
- Pitches and proposals for new clients
- Training and internal process work
- Hiring interviews and onboarding
Unplanned internal time is a leak.
- Client work logged to internal codes
- Rework the contract doesn't cover
- Hours that never get logged at all
Set a budget for internal time by role, then check budget against actual every week. A pitch morning is fine. Client fixes that keep landing on an internal code are a billing problem.

In short: total hours can't tell an investment from a leak, so split internal time into planned and unplanned before you judge anyone's numbers.
Where is unused capacity hiding in your team?
Unused capacity hides in uneven workloads, where a few people carry the hard projects while others wait for work. Resource utilization averages look fine when one person runs hot and another sits idle. Look at each person's planned and actual hours, side by side, before you approve a new hire.
This is the job of resource capacity planning: comparing the hours your team can give with the hours your projects need.
Usable capacity is contracted hours minus leave, holidays, regular meetings and internal work. Never plan anyone at full capacity. Work runs over, and people get sick. Leave a buffer for each role, since a support engineer's day is harder to predict than an architect's.
Example: Picture a consulting team where one senior analyst works late every week while the juniors wait for reviews. The fix is to share the review work, not to add headcount.
Skills matter as much as hours. A free developer can't take a project that needs a data engineer. So use skills-based allocation before you count spare time.
If the same people carry every hard project, our post on workload distribution mistakes covers the usual causes and fixes.

In short: a team average can hide one worn-out person and a few idle ones, so read capacity person by person before you open a role.
When do project overruns get noticed, and why so late?
Project overruns are found too late when the only check is the end-of-project review. By then, the extra hours are spent and the client won't pay for them. Compare estimated and actual hours every week. Treat any change in scope as a new decision with its own price.
Research by McKinsey and the University of Oxford on more than 5,400 IT projects found that large IT projects run 45 percent over budget and 7 percent over time on average. Large meant an initial price tag above $15 million, per the same McKinsey study.
IT services and SaaS implementation projects are usually smaller. The causes look much the same:
- Hopeful estimates with no room for rework
- Scope creep, where small client requests skip the change order
- Late visibility, when hours get reviewed only at invoice time, long after anyone can fix them
Overrun percentage is actual hours minus estimated hours, divided by estimated hours, as a percentage. Check it per task, every week.
Put every scope change in writing before the work starts. Price it, or agree on what drops out. A small favor done often enough becomes a phase nobody pays for.

In short: a weekly estimate check takes minutes, while an overrun found at invoice time can cost the margin on a whole phase.
How much time do interruptions and low-priority work take?
Interruptions take more time than most calendars show, because each one breaks focus and forces a restart. Small tasks add to it. The fix starts with seeing where the day goes, then protecting focus blocks for the client work that earns revenue, before urgent requests jump the queue.
Employees using Microsoft 365 are interrupted every two minutes during core work hours, 275 times a day, by meetings, emails or chats, according to Microsoft's 2025 Work Trend Index.
For a services firm, the cost is direct. A broken hour on a client task produces less work to bill. Busywork is quieter. Reports nobody reads never show up as a loss.
See which apps and sites take each team's day. Then agree on a couple of rules, such as no internal meetings in the morning focus block. In a SaaS support team, that block might protect ticket work, while in a consulting team it protects the client drafts that get billed.

In short: protect focus on client work first, since an interrupted hour still costs a full hour of salary but may not fill a full hour on the invoice.
What happens when people decisions rest on partial data?
When people decisions rest on partial data, founders reward the people who look busy and miss the ones who are stretched thin. Staffing and promotion calls follow from that picture. Better decisions put project data, time data and workload data in one view, then add context from a direct conversation.
Atlassian's State of Teams 2025 survey of 12,000 knowledge workers and 200 executives found that leaders and teams waste 25% of their time just searching for answers. Partial data also hides in status updates that say "on track" while hours run over.
This is where we'd use We360.ai. It joins project time and workload in one place. Each project carries a billing model and rates, and cost comes from approved timesheet time. It doesn't send invoices yet, so billing stays in your finance process. See We360.ai project management software.
Each task also shows its estimate next to the time logged. These reports cover the people side:
Productivity rules
Sort apps and sites as work or not, team by team.
Capacity Planning
Planned against actual workload, to spot who is stretched thin.
Wellness360
Flags overburdened and underutilized people early.
Time & Motion
Relates monthly effort to the output it produced.
Activity Report
Online time split into active time, idle time and breaks.
Overwork flags
Warn when someone keeps working past their shift.
We360.ai's own guidance treats these signals as decision support, not verdicts, so talk to the person before you act on any flag. Our post on how to spot burnout early covers that talk. For the full picture, see We360.ai workforce analytics and the capacity views.
In short: project data and time data each tell half the story, so join them before you make a decision about a person.
How do you score delivery efficiency every month?
Score it with a short set of professional services metrics, reviewed by the founder and delivery leads monthly. Each metric should catch one leak and point to one owner. If a number can't change a decision, drop it. Short scorecards keep the meeting short and end with clear owners.
The founder's delivery efficiency scorecard below maps one metric to each leak.
Swipe sideways for full table
Metric | Best for | How to calculate | Warning sign |
|---|---|---|---|
Utilization rate | Unbilled hours | Client hours divided by available hours, as a percentage | Falls while the team says it's busy |
Realization rate | Work done but not paid | Hours billed divided by client hours worked | Write-offs grow month over month |
Planned against actual workload | Uneven capacity | Actual hours divided by planned hours, per person | The same names run over plan every month |
Overrun percentage | Late delays | Actual minus estimated hours, divided by the estimate | Overruns surface only at invoice time |
Focus time share | Interruptions | Hours in long work blocks divided by work hours | Shrinks as meetings grow |
Project margin | Partial data and overall health | Net profit divided by project revenue | A couple of accounts lose money while others cover |
There's no reliable public benchmark for these numbers, so set your own baseline in the first month and judge the trend.
To price unused capacity, use one formula. Monthly cost equals team size, times available hours per person, times the utilization points you could recover, times your average bill rate.
Compare that figure with the full cost of a new hire. If recovered capacity covers most of it, rebalance first. If the team is full person by person, hire, and use the data to show why.

In short: a scorecard works only when each line has an owner, so name one person per metric before the first review.
What should you fix in your first month?
Fix the leaks in order of cost and effort: measure first, rebalance second, and turn the changes into weekly habits last. One month is enough for clean numbers and one or two wins. It isn't enough to fix everything. So start with the leak your scorecard shows is largest.
- Week one, agree on definitions. Write down available hours and the utilization formula, and use them everywhere.
- Week two, get a baseline. Pull planned against actual hours for every active project and every person.
- Week three, rebalance. Move work to people with spare capacity, and start change orders for scope requests.
- Week four, review. Run the scorecard, ask which projects went over and why, and pick the next leak.
Then turn what worked into templates, so the next project costs less to run.

We360.ai has streamlined our workflow with seamless productivity tracking and team management, making operations more efficient and transparent.
In short: one leak closed and measured beats five half fixed, so end the month by choosing the next one.
FAQ
What is a good utilization rate for a consulting firm? +−
There's no single number. Public benchmarks mostly come from software vendors, not neutral surveys. Set a target by role, since delivery staff bill far more of their time than managers. Then watch your own trend.
What is the difference between billable and non-billable hours? +−
Billable time is spent on client work you can charge for. Non-billable time goes to internal work, such as sales or training. Some of it is healthy. The leak is unplanned time, such as client fixes logged to an internal code.
How do you calculate employee utilization rate? +−
Divide the hours spent on planned work by available hours, then show it as a percentage. The employee utilization rate counts all planned work, billable or not. Billable utilization counts client work only, so the gap between the two shows your internal time.
How do you find unused capacity before hiring? +−
Compare each person's planned and actual hours over the last few months. Find people who are often under plan, then check their skills against the role you'd hire for. If they match, move work first.
How often should you review project profitability? +−
Weekly for hours, monthly for margin. Compare estimated and actual hours each week so overruns surface early. Review margin by project once a month, when the period's costs and invoices are complete.
Does time tracking hurt team morale? +−
It can, if it's hidden or used to punish. Tell people what you track, show them their own data, and use it for planning. We360.ai doesn't log keystrokes or access webcams, and in visible mode people can see their own work analytics.

Written by Leena Jagwani
Leena Jagwani works in the founder's office at We360.ai, a workforce analytics and project and task management platform. An IIT Bombay graduate (2026) with expertise in…
View LinkedIn profile →Was this article helpful?
Related Posts

Workforce analytics software turns raw activity data into decisions HR and ops leaders can act on. Here is what it measures, how it differs from HR reporting, and how to choose one.

What is deep work, really? Cal Newport's four rules, a realistic answer to how many hours you can actually sustain, and a five-step way to build a defended focus block into a normal workday.

Workforce analytics software explained: what it measures, how it differs from HR reporting, real examples, and how to choose a platform for your team.

Call center workforce management software plans how many agents you need and when. It forecasts calls and builds shifts. Workforce analytics adds what the plan can't show: where agent time really went and who is close to burning out. This guide explains both, and how to act on…
