The Ugly Truth About Job Costing: Why Some Roofers & HVAC Companies Stay Broke

You’re landing bigger jobs, and that’s great.


But here’s the ugly truth: if your job costing is off, those big projects could actually be draining your profits instead of growing them.


It’s not just about tracking what you spend—it’s about knowing exactly where every dollar is going so you’re not underbidding, overpaying, or leaving cash on the table.



If you’ve ever wrapped up a job and thought, “Where did all the profit go?”—this one’s for you.


Why This Matters (And How It’s Keeping You Stuck)

Once you start landing commercial projects or multi-unit jobs, the game changes.


The same pricing and tracking methods that worked when you were running smaller residential jobs? They don’t cut it anymore.


  • Larger projects = bigger risks. More materials, more labor, longer timelines—all of which need tighter tracking.
  • Underbidding will kill you. If your overhead isn’t dialed in, you could be pricing jobs at a loss without even realizing it.
  • Cash flow gets trickier. Multi-month jobs mean expenses pile up before revenue comes in—are you accounting for that?


If you’re not job costing like a pro, you’re not running a business—you’re just working for free. Let’s fix that.

The 3 Biggest Job Costing Mistakes (And How to Fix Them)

1. Not Separating Direct & Indirect Costs (AKA Guessing on Overhead)

Every job has direct costs (materials, labor) and indirect costs (insurance, shop rent, admin salaries).


If you’re just slapping a random percentage on top of your bids to cover overhead, you’re probably underpricing your jobs—or worse, eating into your own profits.

  • Fix It: Set up a system that splits costs by department (e.g., roofing vs. HVAC) so you’re allocating overhead accurately. If your sheet metal crew and your install crew have different cost structures, track them separately.

2. Ignoring Labor Burden (You’re Paying More Than You Think)

A tech making $30/hour doesn’t actually cost you $30/hour. Once you factor in payroll taxes, workers’ comp, benefits, and downtime, that number is way higher.

  • Fix It: Calculate your true labor burden per employee and bake that into your pricing.


Example: If a $30/hour worker actually costs you $42/hour, and you’re only charging for $30—you’re losing money on every job.

How to Calculate It:

  • Add up the actual wage per hour ($30 in this case).
  • Include payroll taxes, workers’ comp, and benefits (e.g., $8/hour).
  • Factor in downtime (e.g., $4/hour for non-billable time).
  • True labor cost = $30 + $8 + $4 = $42/hour.


Make sure this number is reflected in your job pricing!


3. Failing to Use Percentage-of-Completion Accounting (Especially for Multi-Month Jobs)

If you’re running on cash-based accounting, your books might show a huge loss while you’re mid-project—when in reality, the job is profitable but not yet paid in full.


This can wreck your tax planning and cash flow.

  • Fix It: Use percentage-of-completion accounting to match revenue with expenses in real time. For S Corps/C Corps, this method ensures you’re paying taxes based on actual profits—not just cash collected.


Example: Let’s say you take on a $300,000 roofing project that spans 3 months. Your expenses are spread out, but if you’re using cash accounting, your books might show a huge loss in month one (when you’re buying materials) and a massive profit in month three (when you finally get paid).


With percentage-of-completion accounting, if you complete 33% of the project in the first month, you’d recognize $100,000 in revenue instead of waiting for the full payment later. This method helps you keep cash flow steady and ensures your taxes are based on what you’ve actually earned—not just what’s been collected.

What’s Your Next Move? (Take Action Now)

If you’re scaling up but your job costing is still stuck at “best guess” levels, you’re leaving money on the table—period.

  • Start by reviewing your last 5 jobs. Were they really profitable, or do the numbers tell a different story?
  • Dial in your overhead and labor costs. Know your real break-even point so you’re pricing jobs with confidence.
  • Need help? Let’s talk. I help roofing and HVAC companies clean up their job costing so they can actually keep the money they work for. Book a quick call, and let’s make sure you’re set up for profit—not just survival.

Get Your Free Guide

Let us know what you think in the comments!

SHARE

@bunchacct-tax

Categories

Newsletter

Subscribe to the newsletter and stay in the loop! By joining, you acknowledge that you'll receive our newsletter and can opt-out anytime hassle-free.

Copyright © 2025 Bunch Accounting and Tax Services LLC - All Rights Reserved.

Your Strategic Financial Partner for Roofing & HVAC