Why 60% of contractors lose money on "profitable" jobs

· 8 min read

The project is done. The client is happy. You close out the job and check your numbers.

Wait. Something's wrong.

You bid $45,000. You collected $45,000. But somehow... you only made $2,800. That's a 6% margin. You could've put that money in a savings account and made almost as much without lifting a hammer.

What happened?

The Job Costing Problem That Kills Contractors

Every year, thousands of contractors go out of business despite having full schedules and satisfied clients. The culprit? They don't know their real job costs until it's too late.

Here's the uncomfortable truth: most contractors don't track job costs accurately. They estimate materials, labor, and overhead during bidding—then never compare those estimates to actual costs during and after the project.

The result? Jobs that look profitable on paper but bleed money in reality. By the time you realize the problem, you've completed three more money-losing projects using the same flawed assumptions.

The Numbers Don't Lie (But Your Gut Feel Does)

Ask a contractor how a job is going, and you'll hear: "Pretty good. We're on schedule, maybe a little over on materials but nothing crazy."

Run the actual numbers, and you find:

  • Labor is 23% over budget because of rework

  • Materials are 18% over because prices increased and you forgot to track it

  • Equipment rental ran an extra week because of weather delays

  • Subcontractor costs increased mid-project due to scope creep

That "pretty good" project? It's losing $8,000. And because you don't know it yet, you're bidding the next job using the same bad assumptions that sank this one.

This is how contractors spiral. One bad estimate becomes a pattern. Before you know it, you're working 60-hour weeks to stay busy while your bank account gets smaller.

The 8 Hidden Costs That Destroy Job Profitability

Most contractors track the obvious costs: labor, materials, subcontractors. But profit disappears in the gaps—the costs nobody thinks to track until they're staring at a surprisingly small profit margin.

1. Mobilization and Demobilization

Moving equipment, tools, and materials to and from the job site isn't free. For a site 45 minutes away, you're paying 1.5 hours of drive time per crew per day. On a two-week project, that's 15 hours of labor you might not have budgeted for.

2. Tool and Equipment Wear

Your crew uses a $2,500 compressor on every job. It lasts about 1,000 hours. That's $2.50/hour in depreciation. On a 200-hour project, that's $500 in equipment cost—even if you already own the compressor. Most contractors price equipment at $0 because "we already have it."

3. Consumables and Small Tools

Blades, bits, sandpaper, tape, fasteners, caulk. Individually, they're cheap. Collectively, they add 2-5% to your material costs. That $8,000 materials budget? You actually spent $8,400, but nobody tracked the small stuff.

4. Rework and Corrections

Your apprentice measured wrong. Now you're rebuilding 12 feet of framing. That's 4 hours of labor, $150 in materials, and schedule pressure on your next job. You absorbed it because "mistakes happen"—but they happen on 20% of jobs, and you never budgeted for it.

5. Permit and Inspection Delays

The inspector shows up late, forcing your crew to wait 90 minutes. That's 6 man-hours of labor at full rate to stand around. Or worse—they reschedule, and you have to mobilize twice. Each delay costs money, but it never makes it into your job cost tracking.

6. Warranty Work and Callbacks

Three months after closeout, the client calls about a minor issue. You send someone over "just to keep them happy." That's 2-3 hours of unbilled labor. Multiply that by callback rates across all jobs, and you're giving away 1-2% of revenue every year.

7. Administrative Overhead

Who answers client calls? Who orders materials? Who handles invoicing and follows up on payments? Administrative time is real cost. If you're spending 5 hours per week managing a job, that's 5 hours you're not bidding new work—or it's 5 hours you're paying someone else to handle.

8. Payment Delays and Financing Costs

You completed the job on October 15th. You submitted the invoice on October 20th. You got paid on November 30th. For 40 days, you financed that job with your cash flow. If you're carrying $200,000 in receivables at 8% interest, that's $16,000/year in hidden financing costs.

Add these eight categories across a typical project, and hidden costs easily reach 8-15% of the total job cost. On a $100,000 project, that's $8,000-$15,000 that vanishes if you're not tracking it.

The Markup vs. Margin Mistake That Costs Thousands

Most contractors confuse markup and margin. They sound similar but the math is completely different—and mixing them up destroys profitability.

Markup is the percentage you add to your costs.
Margin is the percentage of the sale price that's profit.

Here's the problem:

You estimate a job at $40,000 in costs. You want a 20% profit margin. So you multiply $40,000 × 1.20 = $48,000. Right?

Wrong.

You just calculated 20% markup, not 20% margin.

Let's check: $48,000 sale price - $40,000 costs = $8,000 profit. $8,000 ÷ $48,000 = 16.7% margin.

You thought you were making 20%. You're actually making 16.7%. On a $50,000 project, that mistake costs you $1,650.

To get a 20% margin, you need to divide costs by (1 - desired margin): $40,000 ÷ 0.80 = $50,000.

Check: $50,000 - $40,000 = $10,000 profit. $10,000 ÷ $50,000 = 20% margin. Now you're actually making what you intended.

This single math mistake is why so many contractors feel like they're working hard but not making money.

How to Track Job Costs Without Going Crazy

Job costing doesn't have to be complicated. You don't need enterprise software or a dedicated bookkeeper. You just need a system.

Start with budget categories. Break every estimate into clear categories:

  • Labor (by trade/phase)

  • Materials (by category)

  • Subcontractors (by trade)

  • Equipment (rental or owned depreciation)

  • Permits and fees

  • Overhead allocation

  • Profit margin

Track costs weekly. Every Friday, update actual costs against budgeted costs for each category. This takes 15-30 minutes. If you're trending over budget in any category, you know immediately—while there's still time to course-correct.

Include burden rates. Don't just track the hourly wage—track the fully-burdened labor cost including payroll taxes, insurance, benefits. If you pay someone $30/hour, your real cost is probably $42-45/hour once you include burden.

Separate direct and indirect costs. Direct costs go to a specific job. Indirect costs (shop overhead, office staff, vehicle insurance) get allocated across all jobs as a percentage. Most small contractors need 15-25% overhead allocation.

Review costs at completion. After every job, compare estimated vs. actual costs in every category. Where were you wrong? Did materials cost more than expected? Did labor hours run over? Use this data to improve your next estimate.

The Digital Solution

This is exactly why we built the Free Job Cost Calculator at SiteSignOff. It's designed to help contractors calculate accurate job costs and pricing in minutes—not hours.

The calculator handles:

  • Direct cost tracking for labor, materials, and subcontractors

  • Overhead allocation as a percentage of direct costs

  • Markup vs. margin calculations done correctly

  • Break-even analysis showing minimum price to cover costs

  • Target profit calculations based on your desired margin

No more spreadsheet formulas. No more confusing markup with margin. No more wondering if you priced the job correctly.

Best Practices for Job Cost Management

Price jobs based on data, not gut feel. Look at your last 10 completed jobs. What were the actual costs? Use that data to build estimates, not wishful thinking about what you hope costs will be.

Build in contingency. Every job has unexpected costs. Budget 5-10% contingency for unknowns. If you don't need it, great—extra profit. If you do need it, you're covered.

Track time daily. Require crew members to log hours every day, not at the end of the week. Daily tracking is accurate. Weekly recollection is guesswork.

Review progress weekly. Don't wait until the job is done to check costs. Weekly reviews let you catch problems early when you can still fix them.

Measure productivity. How many square feet of drywall can your crew hang per day? How many linear feet of trim per hour? Know your productivity rates so you can estimate labor accurately.

Don't forget to pay yourself. If you're working on the job, your time has value. Include your labor in job costs—even if you're the owner. Otherwise you're subsidizing every job with free labor.

The Bottom Line

You can't manage what you don't measure. And if you're not tracking job costs accurately, you're flying blind.

The difference between a struggling contractor and a profitable one isn't talent, hustle, or luck. It's knowing the numbers. The contractors who track costs, analyze variance, and adjust pricing based on data are the ones who build sustainable, profitable businesses.

The Free Job Cost Calculator at SiteSignOff gives you the framework to price jobs correctly from the start. Calculate costs, apply proper overhead, compute accurate margins, and know your break-even—all in one simple tool.

Because the goal isn't just to stay busy. It's to stay busy and profitable.