How to Track Project Profitability
A busy month can still lose money. If you run projects for clients, some jobs quietly pay for the others, and you will not know which ones until you track project profitability one job at a time. This guide shows you how to set a project budget, capture real costs and hours, and read the numbers before the next quote goes out.
Key takeaways
- Project profitability is the revenue from one job minus the direct costs of delivering it, including the true cost of the hours spent.
- Set a budget for hours and costs before work starts, then compare actuals at fixed checkpoints, not only at the end.
- Give every project a code and use it on time entries, bills and receipts so costs land in the right place.
- A short review after each project turns the numbers into better quotes next time.
Agencies, consultants, builders, designers, event planners and developers all share the same problem. Revenue arrives as a set of separate jobs, but costs arrive as one big blur of payroll, freelancer bills, software and materials. When you look at the business as a whole, it seems fine. When you look at each project, you often find one or two that ate far more time than they earned.
The good news is that you do not need a finance team to fix this. You need a budget per project, a habit of tagging costs and time, and a tracker you look at every couple of weeks. Let's build that system.
What project profitability actually measures
At its simplest, project profit is what a client paid you for a job minus what it cost you to deliver that job. The tricky part is deciding which costs belong to the project.
Direct costs
Direct costs exist only because the project exists. Typical examples include:
- Labor: the hours your team and you spend on the work, valued at a cost rate (more on that below).
- Subcontractors and freelancers: specialist help you bring in for this client.
- Materials and supplies: anything bought for the job, from printing to timber.
- Project expenses: travel, venue hire, stock photos, licenses bought for this client.
Overhead
Overhead keeps the lights on whether or not a given project runs: rent, insurance, general software, admin time and your accountant. Most small businesses track project profit before overhead first, which is often called project gross profit or contribution. It answers a clear question: did this job add money toward covering the rest of the business?
The formula mirrors the one you see on a full income statement. Gross profit is revenue minus the cost of goods sold, and operating profit is gross profit minus operating expenses. Project profit is the same idea shrunk down to a single job.
Work out a cost rate for your time
Hours are the biggest cost in most service projects, and they are the easiest to ignore because nobody sends you an invoice for them. To put hours into the numbers, you need a cost rate: what one hour of a person's time costs the business.
- Start with yearly pay. For employees, take salary plus the employer costs you pay on top, such as payroll taxes, pension or retirement contributions and benefits.
- Estimate billable hours. Take the hours a person works in a year and remove holidays, sick days, training and admin. What remains is the time that can realistically go to projects.
- Divide. Total yearly cost divided by realistic project hours gives the cost rate per hour.
- Price your own time too. If you are the owner, use the salary you would need to pay someone to do your job. Leaving your hours at zero makes every project look better than it is.
- Review once a year. Update cost rates when pay changes so your project numbers stay honest.
Keep cost rates separate from billing rates. The billing rate is what a client pays; the cost rate is what that hour costs you. The gap between the two is where the margin lives.
Common mistake
Using total hours worked to calculate the cost rate. Nobody spends every paid hour on client work, so dividing by all hours makes each project hour look cheaper than it really is. Divide by realistic project hours instead.
Set a budget before the project starts
You cannot judge a result without a target. Before kickoff, turn your quote into a project budget that lists expected revenue, hours by role and direct costs.
- Revenue: the agreed fee, or for hourly work, the expected hours times the billing rate.
- Hours by phase or role: discovery, design, build, review and project management are common splits.
- Direct costs: subcontractors, materials and expenses you can foresee.
- Target margin: the margin you priced in, so you can see quickly when a job drifts below it.
Write the budget into the same place you will track actuals. If the budget lives in an email and the actuals live in a spreadsheet, nobody will compare them.
Pro tip
Add a line for project management and client communication. Calls, emails, revisions and status updates are real work, and they are the hours most often left out of a quote.
Capture time and costs against each project
Tracking only works if costs land on the right project as they happen. Rebuilding it from memory at the end of the month rarely works.
Give every project a code
Create a short code for each job, such as the client name plus a number. Use it everywhere: in your time tracker, on purchase orders, in the memo line of subcontractor bills and on receipts. Many accounting tools let you tag transactions with a project, class or tracking category; check what yours offers.
Track hours in a tool your team will actually use
Time tracking apps such as Toggl Track, Harvest and Clockify let people log hours against clients and projects, and many produce reports by project. Check current features, pricing and privacy policies before you choose, and be open with your team about why you are tracking time: to price work better, not to watch over shoulders.
- Ask for time to be logged daily, or at the latest by the end of each week.
- Use a small, fixed list of task types so reports stay readable.
- Log non-billable project time too, such as internal reviews and rework.
Tag bills and expenses on arrival
When a freelancer invoice or a materials receipt arrives, tag it with the project code before it is paid. A simple rule helps: no project code, no payment.
A simple project profitability tracker
You can run the whole system from one spreadsheet. Use one row per project and update it at each checkpoint. The amounts below are made-up examples.
| Project | Revenue (example) | Budget hours | Actual hours | Labor cost (example) | Other direct costs (example) | Project profit (example) | Margin |
|---|---|---|---|---|---|---|---|
| ACME-01 Website refresh | $12,000 | 80 | 96 | $5,760 | $1,200 | $5,040 | 42% |
| BLUE-03 Brand guide | $6,000 | 40 | 38 | $2,280 | $300 | $3,420 | 57% |
| OAK-02 Event setup | $9,000 | 60 | 85 | $5,100 | $2,600 | $1,300 | 14% |
In this example, labor cost is actual hours times a made-up cost rate of $60 an hour. Add columns for target margin and "hours remaining" if you want an early warning while a project is still running.
Example
Imagine Sam, who runs a three-person events studio. The OAK-02 event looked healthy on paper, but the tracker shows 85 hours against a budget of 60 and more rental costs than planned. The margin dropped to 14%, far below the brand work. Looking closer, Sam finds two extra site visits and a last-minute supplier change that were never billed. Next time, the quote includes a site visit allowance and a clear change request process. (This example and its numbers are made up for illustration.)
Review projects at checkpoints, not just at the end
A final report tells you what went wrong. A midpoint check gives you time to do something about it. Pick checkpoints that suit your work, such as 25%, 50% and 75% of the budgeted hours, or every two weeks on longer jobs.
At each checkpoint, ask three questions:
- Burn: what share of the budgeted hours and costs have we used?
- Progress: what share of the work is honestly done?
- Scope: has the client asked for anything that was not in the original agreement?
If you have used 60% of the hours but finished only 40% of the work, you have a problem worth raising now. You might simplify the remaining work, move tasks to a lower-cost team member, or talk to the client about a change order for extra scope.
Common mistake
Saying yes to small extras without logging them. One more revision or one more page feels harmless, but a handful of unlogged extras can wipe out the margin. Log every request, even if you decide to do it for free, so you can see the pattern.
Fixed fee vs hourly work
On fixed-fee projects, every extra hour comes straight out of your margin, so checkpoints matter most. On hourly work, profit looks safer, but watch for hours you cannot bill, such as internal rework, and for clients who push back on invoices. Track both kinds the same way so you can compare them fairly.
Close each project with a short review
When a project ends, spend 20 minutes on a review while the details are fresh. Compare budget to actual for hours, costs and margin, and note the reasons for big gaps. Then turn the lessons into changes:
- Adjust the hour estimates in your quote template for similar jobs.
- Add or tighten change request wording in your proposals.
- Spot clients or project types that are consistently more or less profitable.
- Check whether the final invoice and any expenses have actually been billed and paid.
Over a few months, these reviews build a library of real data. Your quotes get sharper, and you start to see which kinds of work deserve more of your marketing.
Pro tip
Sort your finished projects by margin once a quarter. The top five often share a type of client or service you should actively seek out, and the bottom five often share a warning sign you can screen for.
A quick note: this article is general information about tracking business performance, not accounting or tax advice. How you record costs and revenue in your official books may follow different rules, so check with a qualified accountant or bookkeeper.
Your project profitability action plan
- Calculate a cost rate per hour for each team member and for yourself
- Create a project code for every active job
- Write a budget for revenue, hours and direct costs before kickoff
- Set up time tracking by client and project
- Tag every bill and expense with its project code before paying
- Update the tracker at fixed checkpoints and flag jobs over budget
- Run a 20-minute review when each project closes and update your quote template
Frequently asked questions
Should I include overhead when I track project profitability?
Start without it. Project profit before overhead shows how much each job contributes, which is the clearest way to compare projects. Once that habit is solid, some businesses add an overhead allocation per hour to see a fuller picture. Either way, be consistent.
What if my team hates tracking time?
Explain the purpose: better quotes, fewer late nights and fairer workloads. Keep the task list short, make logging quick and share the results so people see the value. Many teams find daily logging takes only a minute or two once it becomes a habit.
How often should I review the numbers?
For short jobs, a check at the halfway point and at the end is often enough. For longer projects, every two weeks works well. Pick a rhythm you can keep and put it in the calendar.
Can a project with a low margin still be worth doing?
Sometimes. A small job might lead to a large client, fill a quiet month or build a new skill. Just make that choice on purpose, with the numbers in front of you, rather than by accident.
Related reading
The bottom line
Tracking project profitability comes down to a few steady habits: know what an hour costs you, budget each job before it starts, tag every hour and bill with a project code, and compare budget to actual while there is still time to act. A one-page tracker is enough to begin.
Pick your three current projects this week, give them codes and fill in the tracker. Within a month or two, you will know which work truly pays, and your next quote will reflect it.