The 3 Financial Mistakes Contractors Make That Kill Profit
When I became CFO of a billion-dollar construction company, I thought I knew what good financial management looked like. I had the degree, the CPA, and years at Ernst and Young behind me. But sitting inside a construction business at that scale taught me things I couldn't have learned anywhere else.
You see where the money actually goes. You see where the assumptions break down. And you see the same mistakes show up over and over again, regardless of company size or trade. The three mistakes I'm about to walk you through aren't complicated. They're just things nobody ever showed most contractors how to do correctly.
Mistake 1: Not Tracking Earned Revenue with a WIP Schedule
The construction industry is notoriously known for overstating or understating revenue. Not because contractors are trying to mislead anyone, but because tracking earned revenue in a project-based business is genuinely nuanced and most accounting systems make it worse, not better.
Here's the problem. When you create an invoice in most accounting systems, whether that's QuickBooks, Vista, Xero, or anything else, the system automatically records that invoice as revenue. But billing a customer and earning revenue are two completely different things. If you invoice a client for $50,000 before you've done a single day of work and they cancel the project two days later, you owe that money back. You haven't earned it yet.
This is where a WIP schedule, or work in progress schedule, becomes essential. A WIP lists every active project and tracks where you are from a percentage of completion standpoint, typically based on cost incurred compared to estimated cost at completion. If you estimated $100,000 in costs and you've spent $50,000, your WIP reflects 50% completion and recognizes 50% of the contract value as earned revenue. That's how revenue should be tracked in a construction business according to generally accepted accounting principles.
If you don't have a WIP schedule, your revenue numbers are either overstated or understated, and everything downstream from revenue, your gross margin, your operating margin, your job performance, is wrong. You're making decisions based on numbers that don't reflect reality.
I tell every contractor I work with that their WIP schedule needs to get more attention than almost anything else in the business. If your WIP is wrong, your revenue is wrong. And if your revenue is wrong, everything is wrong.
Mistake 2: Sloppy Job Costing
Job costing is how you track every dollar of cost back to the specific job that caused it. Materials, equipment, labor, subcontractors, all of it assigned to the right job code so you know exactly how each project is performing in real time. If you're not doing this, you're guessing. And in construction, guessing eventually catches up with you.
The most common version of this mistake I see is what happens in the field. A foreman runs to Home Depot and picks up supplies for two different jobs in one trip. He's in a hurry, throws it all on one receipt, and later assigns the whole thing to one job code because it's easier. Now job A looks like it's over budget and job B looks like it's printing money. Neither picture is accurate.
The problem goes deeper than just messy books. When you eventually sit down to analyze which types of jobs are most profitable so you can refine your market focus and pursue more of the right work, your data is corrupted. You think certain jobs are winners when they're actually losers. You shift your strategy based on bad information and you go after more of the wrong work. The financial mistake becomes a strategic mistake.
On the job code structure itself, I see contractors make two opposite errors. Some have so many cost codes that field crews can't keep up with the administrative burden and nothing gets assigned correctly. Others have so few codes that there's no meaningful detail to analyze. For most specialty contractors, somewhere between ten and twenty job codes is the right range. Enough detail to be useful, simple enough that the field will actually use it consistently.
Mistake 3: No Feedback Loop Between Estimating and Operations
This one is really a combination of the first two, and it's where the biggest long-term damage happens.
Here's how the feedback loop is supposed to work. You build an estimate. You go execute the job. You do job costing and regular project reviews throughout. And then the findings from those reviews, what production rates were actually achieved, where costs ran over, what change orders were missed, flows back to the estimating team so the next bid is more accurate than the last one.
Most contractors don't have this loop. The job ends, the team moves on, and estimating keeps using the same assumptions they've always used. So the same mistakes get repeated, just on bigger jobs with bigger losses.
I dealt with this firsthand in my own landscape design-build company. My designers were also doing the estimating and some of the project management, so they had a foot in multiple steps of the loop. Our foremen were involved in project reviews. When a job was tracking 500 labor hours over budget, we didn't wait until the end to find out. We looked at the production rate, compared it to what we estimated, figured out whether it was a one-time anomaly or a pattern, and fed that information back to estimating before the next bid went out.
That's what good estimating looks like. It's not a four-man crew for three days based on gut feel. It's a takeoff that produces square footage or lineal footage, applied against a production rate, built up into labor hours, and refined over time as actual performance data comes back from the field. The best contractors are the ones whose variance between estimated and actual gets smaller over time. That's how you know the system is working.
All three of these mistakes share the same root cause: a lack of a financial intelligence system that connects field-level activity to the financial performance of the business.
Having a financial intelligence system means more than producing a monthly income statement. It means clean financials across all three statements, a WIP schedule that's actively managed, job costing that's assigned correctly and consistently, project reviews that happen in real time, and all of it tied back to KPIs that connect to the firm value you're trying to build. It also means having a financial forecast so you're not just looking backward but also seeing what's coming.
Accounting software alone won't give you this. QuickBooks and Vista and the rest of them are good at recording transactions. They're not built to give you the financial intelligence you need to run a contracting business at a high level.
If any of these three mistakes exist in your business right now, the good news is they're all fixable. And fixing them will almost certainly unlock profit and cash flow that's currently hidden inside your jobs.
I covered all of this in depth on this week's episode of Strategy Meets Finance. Give it a listen: 3 Things I Learned as CFO That Every Contractor Gets Wrong | Ep 238