Why Most Contractors Don't Know Their Real Numbers (And How to Fix It)
The Month-End Surprise
You had a great month. Trucks were rolling, phones were ringing, techs were booked solid. You billed $185,000. Then your bookkeeper sends over the numbers and somehow you only netted $11,000. Where did $174,000 go?
This is the month-end surprise, and it happens to contractors at every revenue level. I've talked to shop owners doing $500K who can't explain where their money goes, and owners doing $3M with the same problem. Revenue is not the issue. Visibility is.
The root cause is almost always the same: the business owner doesn't know their real numbers until it's too late to do anything about them.
The Spreadsheet Trap
Most contractors who try to track their numbers end up in what I call the spreadsheet trap. It looks like this:
- You create a spreadsheet to track job costs
- For the first two weeks, you update it religiously
- Then you get busy — a big install, a callback, a tech calls in sick
- The spreadsheet falls 3 weeks behind
- Now you're entering data from memory, guessing at material costs, and rounding labor hours
- The data becomes unreliable, so you stop trusting it
- You go back to gut feel
This cycle repeats every quarter. The spreadsheet isn't the problem — the problem is that manual data entry doesn't survive contact with a busy contracting operation. You need numbers that populate themselves from the work you're already doing.
Why Gut Feel Fails at Scale
When you're running 3-5 jobs a week with one or two techs, you can hold the whole business in your head. You know what every job cost because you were on most of them. You bought the materials yourself. You know which jobs made money and which didn't.
But somewhere between $500K and $1.5M in revenue, this breaks down. You now have 4-8 techs running 10-25 jobs per week. You're not on every job anymore. Materials are being purchased by techs with company cards. Supplier bills come in 15-30 days after the materials were used. By the time you see the bill, you can't remember which job it was for.
This is the danger zone where contractors feel busier than ever but can't explain why profit isn't growing proportionally. Revenue doubled, but you're working twice as hard for the same take-home. The business grew, but profitability didn't scale with it.
The contractors who break through this ceiling are the ones who replace gut feel with systems. Not complicated systems — just reliable ones.
The Three Numbers Every Contractor Must Know
You don't need an MBA or a fancy dashboard with 47 metrics. You need three numbers, and you need to know them in real time — not 30 days later.
1. Gross Margin Per Job
This is the most important number in your business. For every job, what percentage of revenue is left after direct costs (materials, labor, subcontractors, permits)?
Why it matters: This tells you if your pricing is right and your operations are efficient. If your average gross margin is 52% but Job #4872 came in at 31%, something went wrong on that job — and you need to know what so it doesn't happen on the next 10 jobs.
How to track it: Every job needs three things recorded: total revenue (what you billed), total material cost (what you spent on parts and materials), and total labor cost (hours x loaded rate). Revenue minus materials minus labor = gross profit. Gross profit divided by revenue = gross margin.
The key word is "loaded rate." If you pay a tech $32/hr, your loaded cost is $38-42/hr after payroll taxes, workers comp, and benefits. Use the loaded rate or you'll overstate your margin on every job.
2. Overhead Rate
Your overhead rate is your total monthly fixed costs divided by the number of jobs (or billable hours) you run per month. This tells you how much each job needs to contribute toward keeping the lights on.
Example: Your monthly overhead is $22,000 (rent $3,500, office manager $4,500, insurance $2,800, truck payments $3,200, software $800, marketing $2,000, accounting $1,200, miscellaneous $4,000). You run 90 jobs per month. Each job must cover $244 in overhead.
Why it matters: If your gross profit on a service call is $180, that job didn't even cover its share of overhead — let alone generate profit. You need to either raise prices on small service calls, increase volume, or cut overhead. But you can't make that decision if you don't know the number.
The trap: Many contractors treat overhead as a fixed annual number and forget about it. But overhead creeps up. You add a part-time office person ($2,400/mo). You upgrade insurance ($400/mo more). You lease a bigger shop ($1,200/mo more). Suddenly your overhead rate per job went from $244 to $288 and your pricing didn't change. That's $44 per job in lost profit — $3,960 per month across 90 jobs.
3. Break-Even Point
Your break-even point is the revenue level where you cover all costs — direct and overhead — with zero left over. Every dollar above break-even is actual profit.
Formula: Break-even revenue = Total overhead / Gross margin percentage.
Example: If your monthly overhead is $22,000 and your average gross margin is 50%, your break-even is $22,000 / 0.50 = $44,000 per month. You need to bill $44,000 just to cover costs. Everything above $44K is profit.
Why it matters: If you know your break-even is $44K and you're on track to bill $38K this month, you know by week 2 that you're heading for a loss. You still have time to add jobs, push maintenance agreement renewals, or schedule the work that's been sitting in your backlog. If you don't know until month-end, you just eat the loss.
Getting From "I Don't Know" to "I Know in Real Time"
The gap between contractors who know their numbers and those who don't isn't intelligence or discipline — it's systems. Here's the practical path:
Step 1: Calculate your loaded labor rate
Take each tech's hourly wage. Add payroll taxes (7.65% FICA), workers comp (varies by state, often 8-15% for trades), unemployment insurance, and any benefits. That's your loaded rate. Use this number for all job costing, not the base wage.
Step 2: Track materials at the job level
This is where most contractors lose the thread. Materials get bought on account, bills come in weeks later, and nobody matches the bill to the job. You need a system where materials are allocated to jobs as they're used. This is the exact problem AI-powered bill matching solves — supplier invoices get automatically matched to the jobs that consumed the materials, so your job costs are accurate without manual data entry.
Step 3: Know your overhead number
Sit down once and add up every fixed monthly cost. Rent, insurance, truck payments, office staff, software, phones, marketing, accounting, licenses, uniforms, tools — everything that gets paid whether you run zero jobs or a hundred. Update this number quarterly. Divide by your average monthly job count to get your per-job overhead allocation.
Step 4: Review job margin daily, not monthly
The contractors who consistently hit 15%+ net margin look at their numbers daily. Not a deep analysis — just a quick scan of yesterday's closed jobs. Which ones hit target margin? Which didn't? Why? This takes 10 minutes and prevents small problems from compounding into a bad month.
With a tool like WrenchToCash, this daily review happens automatically — your dashboard shows real-time margin on every job as costs come in, so you don't have to pull reports or update spreadsheets.
What Changes When You Know Your Numbers
Contractors who track these three numbers consistently report the same set of changes:
- Pricing gets more confident. You stop underbidding because you know exactly what a job costs. You stop second-guessing quotes because you have data, not gut feel.
- Underperforming jobs get caught early. When a job goes over budget, you see it that day — not 30 days later. You can adjust scope, have a conversation with the customer, or at minimum document what went wrong.
- Overhead stays controlled. When you see the per-job overhead number every month, you think twice before adding costs that don't generate revenue.
- Growth becomes intentional. You know exactly how much revenue you need to hit your profit target. You can reverse-engineer the number of jobs, the average ticket size, and the marketing spend required to get there.
None of this requires complex financial analysis. It requires three numbers, tracked consistently, reviewed daily. That's the difference between a contractor who's busy and a contractor who's profitable.
Ready to know your numbers?
WrenchToCash gives you real-time job costing, AI bill matching, and AI call answering — so you know your profit on every job before you leave the site.
Start Free Trial