Why Your Busiest Jobs Can Be Your Least Profitable
Ask a contractor which work is most profitable and you usually get a confident answer. Ask how they know, and it gets quieter.
That is not carelessness. It is that most accounting systems are set up to answer a different question. A standard profit and loss tells you the company made money. It does not tell you which jobs made it, and which ones were carried by the others.
How a losing job hides
Say you run three types of work. One is steady and predictable. One is high-volume and feels like the engine of the business. One is occasional and awkward to schedule.
At month end, all the labor lands in a labor account, all the materials in a materials account, and the total shows a profit. Everything looks fine.
But underneath that total, the high-volume work might be running at four percent margin while the awkward occasional work runs at thirty. The busy work feels like the engine because it fills the calendar and generates the most revenue. Revenue is not profit, and a full schedule is not the same as a healthy business.
The most common version of this: work that was bid accurately two years ago, never repriced, and slowly eaten by material and labor increases. It still feels like your bread and butter. It stopped being profitable eighteen months ago.
What job costing actually requires
Job costing means every dollar of cost is attached to the job that caused it, as it happens. In practice that is four things.
Labor coded to the job, including burden — not just the hourly wage but payroll taxes, workers compensation, and benefits. A $28/hour employee does not cost you $28 an hour.
Materials coded at purchase. Coding at the register, or at receipt entry, is the difference between accurate costing and a month-end guess.
Subcontractor costs, which are usually the easiest to attribute and the most often lumped together.
Equipment and vehicle time, if the job consumed meaningful amounts of either.
Then you compare the total to what you bid. That comparison — estimate versus actual, job by job — is the most useful report a contracting business can produce.
What you find
Contractors who start job costing tend to find some version of the same three things.
One service line is materially less profitable than assumed, usually because pricing did not keep up with costs.
One customer absorbs far more time than they are billed for — change orders that were never written up, site visits that were never captured, a foreman who takes their calls.
And at least one type of work is more profitable than expected, and nobody was pursuing it because it did not feel like the core business.
That last one is often worth more than the first two. It is easier to sell more of something that already works than to fix something that does not.
Where to start
Do not try to reconstruct history. Start with the next job.
Pick one representative project. Track every cost against it deliberately — including the hours you personally put in, which is where owner-operators most consistently understate. When it closes, compare the actual to the bid and look honestly at the gap.
One job will not give you a trend. It will show you where your estimating assumptions are wrong, which is usually enough to change the next bid.
Do it for a quarter and you stop guessing about which work is worth chasing. That is a different way to run a construction business — and it starts with coding costs to jobs instead of into buckets.