
Most business owners can tell you their overall profit. Very few can tell you which jobs, projects, or clients produced it, and which ones quietly destroyed it. That gap matters because in almost every project-based business the work is not uniformly profitable: a portion of jobs subsidises the rest, and without job-level numbers you cannot tell which is which. You keep quoting the losers at the same price, keep tolerating the client who consumes triple the service hours, and wonder why a busy year produced a thin profit.
This guide covers how to measure profitability at the job level properly, the two mistakes that corrupt the numbers, and what to do once the data exposes the truth.
Published: June 2026
Job (or project) profitability is the margin earned on an individual piece of work after the costs directly caused by that work are counted against its revenue. The core formula is simple: job revenue, less direct materials and subcontractors, less the true cost of labour hours spent on the job, equals job contribution. Divide by revenue for the margin percentage.
The concept applies far beyond construction. Agencies, consultancies, IT firms, engineers, architects, and trades all sell parcels of work, and all face the same question: which parcels are worth winning again.
The most common corruption of job profitability is charging labour to jobs at the hourly wage rate. An employee on $40 per hour does not cost $40 per hour. Superannuation at 12%, annual and personal leave, public holidays, workers compensation, payroll tax where applicable, and non-billable time all sit on top. As our breakdown of the actual cost of hiring in Australia shows, total employment cost typically runs 40-45% above base salary before you even account for unproductive hours.
A practical method: take total annual employment cost for the role, divide by realistic productive hours (most full-time staff deliver 1,400 to 1,600 productive hours from a 1,976-hour nominal year once leave, public holidays, training, and admin are removed). The $40-per-hour employee with a loaded annual cost of about $110,000 and 1,500 productive hours costs roughly $73 per productive hour. Every job costed at $40 instead of $73 looks $33 per hour more profitable than it is. Across a 200-hour project, that is a $6,600 fiction.
The opposite error is smearing every overhead across jobs until no job looks profitable and the numbers stop meaning anything. Rent, insurance, software, and the owner's salary exist whether or not a particular job is won; allocating them to jobs by some arbitrary key mostly produces arguments.
The cleaner approach is two-tier. Measure jobs at contribution margin: revenue less direct, caused-by-this-job costs (materials, subcontractors, loaded direct labour). Then ask a separate question at the whole-business level: does total contribution across all jobs cover overheads and the profit target? Our guide to contribution margin covers the mechanics, and your break-even point defines the total contribution the job portfolio must generate.
Overhead still earns one role in pricing: a recovery target. If overheads plus profit target require, say, a 35% contribution margin on average, any quote below that line needs a deliberate justification.
You do not need project software to start, but you do need structure. Xero offers two mechanisms. Tracking categories suit businesses with a modest number of concurrent jobs: create a "Job" tracking category and tag every invoice line and bill line to it. Xero Projects (or add-ons like simPRO, ServiceM8, or WorkflowMax alternatives for trades and services) adds time capture, which is essential because labour is usually the largest and least-recorded direct cost.
Three rules make the data trustworthy. Every direct cost gets a job tag at the point of entry, not retrofitted at quarter end. Timesheets capture hours against jobs weekly, while memory is fresh. And untagged direct costs get treated as an error in the month-end close, not background noise. Disciplined weekly bookkeeping is what keeps this current, which is exactly the cadence our finance services run on.
A hypothetical design-and-build firm completes two $90,000 jobs in the same quarter.
Job A: materials and subcontractors $41,000, direct labour 380 hours at a loaded $73 = $27,740. Contribution $21,260, a margin of 23.6%.
Job B: materials and subcontractors $36,000, direct labour 590 hours at $73 = $43,070, plus $4,800 of rectification materials. Contribution $6,130, a margin of 6.8%.
On wage-rate costing at $40 per hour, Job B would have shown a contribution of $25,600 and looked like the better job. Loaded costing reveals it consumed 55% more labour than Job A for less than a third of the contribution. The follow-up questions are where the value lives: was Job B underquoted, was it scope creep that should have been varied and billed, or is this client systematically expensive to serve? Whatever the answer, the firm should not price the next Job B the same way, and if scope creep is the cause, the fix is contractual and operational, not financial.
Run the same lens across clients, not just jobs. A client whose work persistently lands below your contribution target, after honest labour costing, is paying you less than they cost you to serve. The options, in order: reprice, restructure the scope, or exit. Capacity released from a 7% margin client and refilled at 30% is one of the fastest profit improvements available to a services business, and it shows up in cash too, particularly when the low-margin client is also a slow payer, a combination our debtor management guide deals with directly.
Single-job snapshots mislead; patterns inform. Review job margins monthly as part of your management pack, sorted from worst to best, with three questions standing. Which job types or service lines consistently beat the contribution target, and can you win more of them? Which estimator, team, or project lead is associated with margin slippage between quote and completion? And how does quoted margin compare to delivered margin per job, since a persistent gap means the estimating model, not the delivery, is broken?
For businesses carrying work in progress across month ends, recognise revenue and cost on the same job in the same period, or the margins will whipsaw with billing timing rather than reflecting performance.
How do you calculate job profitability?
Job revenue, less direct materials and subcontractor costs, less direct labour hours at a fully loaded hourly rate, equals job contribution. Divide contribution by revenue for the margin percentage. Overheads are assessed at whole-of-business level rather than allocated to individual jobs.
What is a loaded labour rate and how do I calculate it?
The loaded rate is the true hourly cost of an employee: total annual employment cost (salary, 12% super, leave, workers compensation, payroll tax where applicable) divided by realistic productive hours, typically 1,400 to 1,600 per year for full-time staff. It usually lands 60-90% above the bare wage rate.
Should overheads be allocated to jobs?
Generally no, not for measuring job performance. Measure jobs at contribution margin and test overhead recovery at the business level. Use an overhead-plus-profit recovery target as a pricing floor instead of allocating rent and admin to individual jobs.
What margin should a job make?
It depends on the overhead structure: total contribution across all jobs must cover overheads plus your profit target. Many project businesses set a minimum quoted contribution margin of 30-40% so that delivered margins, after slippage, still clear the break-even line.
How do I track job profitability in Xero?
Use a tracking category for jobs and tag every invoice and bill line, or use Xero Projects (or an industry tool such as simPRO or ServiceM8) to add timesheet capture. Labour is the largest direct cost in most service businesses, so time tracking is not optional.
Why do my jobs look profitable but the business is not?
Usually one of three causes: labour costed at wage rates instead of loaded rates, direct costs left untagged and sitting in overheads, or total contribution genuinely falling short of the overhead base, which is a volume or pricing problem rather than a job-level one.
What should I do with an unprofitable client?
In order: reprice to your contribution target, restructure scope to remove the unprofitable components, or exit and redeploy the capacity. Before acting, confirm the numbers with honest labour costing, since some "unprofitable" clients are really under-recorded scope creep that should be varied and billed.
What is the difference between quoted margin and delivered margin?
Quoted margin is the contribution built into the estimate; delivered margin is what the job actually produced. Comparing them per job isolates whether profit leaks at the estimating stage or during delivery, which determines whether the fix is pricing or project management.
About Scale Suite
Scale Suite is a Sydney-based provider of outsourced finance teams and fractional CFO services for Australian SMEs. We deliver weekly bookkeeping, payroll, BAS/IAS lodgement, cashflow reporting, management accounts, and strategic fractional CFO oversight, all as a fully embedded team that works inside your business.CA-qualified, Xero Certified, and registered BAS Agents, we replace fragmented bookkeepers and once-a-year accountants with one responsive finance function at a fraction of the cost of full-time hires. We serve growing businesses across Sydney, Melbourne, Brisbane, and Perth, with packages starting from $1,500 per month and no lock-in contracts.
We review and check this guide periodically. At the time of writing (June 2026), all information was current. Scale Suite is a registered BAS Agent, not a licensed tax advisor or financial advisor. This content is general information only and does not constitute professional tax, financial, or legal advice. Some details may change over time.
Scale Suite is a Sydney-based provider of outsourced finance and HR services for Australian SMEs. We deliver bookkeeping, financial reporting, payroll processing, fractional CFO support, recruitment, employee onboarding, people and culture support, and fractional HR oversight, all as a fully embedded team that works inside your business.
Employment Hero Gold Partner, CA-qualified, and Xero Certified, we replace fragmented finance and HR processes with one responsive, senior-level function at a fraction of the cost of full-time hires. We serve growing businesses across Sydney, Melbourne, Brisbane, and Perth, with packages starting from $1,500 per month and no lock-in contracts.
30 minutes with our team.
We'll review your current finance setup, compare the full cost of an internal hire against our embedded team, and show you exactly what your finance function should cost at your stage of growth.
You'll leave with a clear view of what's working, what's missing, and where you'd save.
No lock-in contracts. 30-day money-back guarantee.
Prefer to book directly? Grab a time here.

