You can have a full calendar and still be losing money.
That is the uncomfortable truth many contractors discover when they finally look beyond revenue and ask a better question:
Which jobs are actually profitable after labor, materials, callbacks, and overhead are counted?
More work is not always the answer. Sometimes, more work simply multiplies the leaks already hiding inside your business.
If you want sustainable service business growth, you need financial visibility at the job level. Not just monthly sales. Not just bank balance. Not just the number of estimates you sent.
You need a dashboard that shows what each job produced, what it consumed, and whether it was worth accepting in the first place.
Revenue Is Not Profit
A $5,000 job does not automatically create a $5,000 win.
That job may include:
- 30 hours of field labor
- Payroll taxes and workers’ compensation
- Materials and parts
- Subcontractor expenses
- Fuel, equipment, and disposal fees
- Office payroll and software
- A callback that nobody billed for
- An unapproved change order that quietly became free work
If you only track the invoice, you see the top line. You do not see the truth.
A job-costing dashboard connects the revenue to the real cost of delivering the work. That gives you the information to decide whether to:
- Keep selling the job type.
- Raise the price.
- Change the process.
- Train the team.
- Stop accepting that work altogether.
That is the difference between staying busy and building a business that can breathe.
The Five Numbers Every Job Dashboard Needs
You do not need a complicated software stack to begin. You need consistent categories and clean data.
For every completed job, track these five areas.
1. Job revenue
Start with the original quoted or contracted amount.
Then add:
- Approved change orders
- Additional billable services
- Material markups
- Service fees
- Any other revenue tied directly to the job
Keep a clear distinction between quoted revenue, invoiced revenue, and collected revenue. A profitable job on paper can still create cash-flow pressure if payment is delayed.
2. Direct labor
Record the actual hours spent on the job, not just the hours you expected to spend.
Include:
- Drive time when it is part of the service delivery
- Setup and cleanup
- Installation or repair time
- Supervisor or foreman hours
- Rework and warranty visits
Then apply the full labor cost, not just the employee’s hourly wage.
3. Labor burden
Labor burden includes the costs attached to employing your team. Depending on your business, that may include:
- Payroll taxes
- Workers’ compensation
- Health benefits
- Paid time off
- Retirement contributions
- Training time
- Uniforms and employment-related expenses
If you pay a technician $25 per hour but the true cost of employing that person is $34 per productive hour, your dashboard needs to use $34.
Otherwise, your margins are wearing a disguise.
4. Materials and job-specific expenses
Track the actual cost of:
- Parts
- Supplies
- Equipment rentals
- Permits
- Dump fees
- Fuel or mileage
- Subcontractors
- Special-order items
Do not lump everything into a vague “job expense” category. The more specific your data, the easier it is to see patterns.
5. Allocated overhead
Overhead is the cost of keeping the business available to serve customers.
It may include:
- Rent
- Office payroll
- Insurance
- Phones
- Software
- Accounting
- Marketing
- Vehicle payments
- Utilities
- Administrative expenses
A job can cover direct costs and still fail to carry its share of overhead. That is why your dashboard should show both:
- Profit before overhead
- Profit after allocated overhead
The second number is the one that helps you make better decisions.

A Simple Job-Profitability Formula
Use this basic structure:
Total job cost = direct labor + labor burden + materials + job-specific expenses + allocated overhead
Then:
Job profit = total job revenue − total job cost
And:
Job margin = job profit ÷ total job revenue × 100
Here is a simple example.
You sell a job for $2,400.
Your actual costs are:
- Labor and burden: $576
- Materials: $620
- Equipment and travel: $80
- Allocated overhead: $250
Your total job cost is $1,526.
Your job profit is $874, giving you a margin of approximately 36.4%.
That might be a healthy job for your business, or it might fall below your target. The point is that now you know.
Without this calculation, you are guessing.
And guessing is a rough way to run a company.
Build the Dashboard Around Decisions
A dashboard should not exist to make attractive charts. It should help you decide what to do next.
At a minimum, create a job-level table with these columns:
- Job number
- Customer
- Service type
- Lead source
- Quoted revenue
- Change-order revenue
- Total revenue
- Estimated labor hours
- Actual labor hours
- Labor and burden cost
- Materials cost
- Subcontractor cost
- Equipment or travel cost
- Allocated overhead
- Total job cost
- Job profit
- Job margin
- Callback count
- Estimate-to-actual variance
- Payment status
Add color-coded alerts for jobs that:
- Fall below your target margin
- Exceed estimated labor hours
- Have unapproved scope changes
- Require callbacks
- Remain unpaid
- Produce unusually high material costs
This lets you sort the dashboard by more than revenue. You can sort by margin, profit dollars, labor variance, callback cost, or customer.
That is where the useful stuff starts to show up.
Questions your dashboard should answer
- Which service types create the strongest margins?
- Which jobs consistently take longer than estimated?
- Which customers require the most unpaid rework?
- Which lead sources produce revenue but weak profitability?
- Which technicians or crews need process support?
- Which materials are regularly over budget?
- Are change orders improving margin, or merely rescuing bad estimates?
If your dashboard cannot answer those questions, it is probably a report, not a decision tool.
Do Not Hide Callbacks
Callbacks deserve their own line item.
A callback is not simply “part of doing business.” It is a cost event. It consumes labor, fuel, scheduling capacity, and often materials without producing additional revenue.
Track:
- Date of the callback
- Original job
- Reason for the callback
- Technician or crew
- Hours used
- Materials consumed
- Whether the issue was workmanship, product failure, customer expectation, or estimating error
Then calculate the margin before and after the callback.
For example, a job may begin at a 40% margin. A four-hour callback plus $70 in materials may reduce that margin to 28%.
That changes the conversation.
Instead of saying, “We had a few callbacks,” you can say, “This service type lost 12 margin points because of repeat visits.”
That is information you can act on.
Could the installation checklist be improved? Does a certain product fail more often? Was the customer promised something the crew could not deliver? Are estimates undercounting complexity?
Find the root cause. Do not just absorb the cost.
Treat Change Orders as Separate Profit Events
Change orders can protect your margin, or create the illusion that a difficult job is performing well.
Track every change order separately:
- Added revenue
- Added labor
- Added materials
- Added subcontractor cost
- Approval date
- Approval method
- Margin on the change order
A $1,000 change order with $900 in added costs is not a $1,000 win. It is a $100 contribution before overhead.
That may still be worthwhile, but you need to know what you are accepting.
Most importantly, never let “we will figure it out later” become your change-order process. If the scope changes, document it before the work begins. Get approval. Update the job record.
The dashboard can only protect you from bad decisions when the business records the decision correctly.

Use Estimate-to-Actual Variance to Improve Pricing
Your estimate is a prediction. Your completed job is evidence.
Compare the two.
Track variance in:
- Labor hours
- Labor cost
- Materials
- Subcontractors
- Total job cost
- Final margin
If you estimated 12 labor hours and used 19, that is not merely an annoying surprise. It is a signal.
Maybe the estimate is missing setup time. Maybe the service area is more complex than expected. Maybe your crew needs a better process. Maybe the price is too low.
Do this across 10, 20, or 30 similar jobs. Individual jobs can be noisy. Patterns are powerful.
This is one of the most valuable parts of contractor business coaching because it moves the discussion from emotion to evidence. You are no longer debating whether your prices “feel high.” You are looking at what the work actually costs.
When Should You Accept More Work?
Before adding another job to the calendar, review three things:
1. Capacity
Do you have the labor hours, materials, and management attention to deliver the job properly?
2. Expected margin
Does the job meet your minimum margin after burden and overhead?
3. Operational risk
Is the job likely to involve difficult access, unclear scope, unpaid coordination, or repeat visits?
A full schedule is not automatically a healthy schedule. If your next five jobs are low-margin, high-risk, and labor-heavy, adding a sixth may make the business weaker, not stronger.
Sometimes the right move is to raise the price, narrow the scope, or say no.
That is not leaving money on the table. That is protecting the table.
Start Small and Review Weekly
You can build the first version in a spreadsheet. If you already use field-service or accounting software, look for job-costing and estimate-to-actual reporting features. Tools such as Housecall Pro’s job-costing platform, Jobber’s job-costing software, and Xero’s project-tracking tools can provide useful starting points.
Do not spend three months building the perfect dashboard.
Start with your last 10 completed jobs.
- Enter the revenue.
- Add actual labor hours.
- Calculate labor burden.
- Add materials and direct expenses.
- Allocate overhead.
- Record callbacks and change orders.
- Compare estimated versus actual results.
- Review the patterns with your team.
Then hold a 30-minute weekly financial review.
Ask:
- What surprised us?
- Which jobs made money?
- Which jobs looked better than they really were?
- What should change in our estimates this week?
- What should we stop doing for free?
That weekly rhythm will teach you more than another month of staring at gross sales.
More Insights for Building a Stronger Service Business
If you are working on the bigger picture, explore my services and coaching approach, review more business articles, or start with The Market Dominance Blueprint (MDB).
The goal is not to turn you into an accountant.
The goal is to help you make clearer decisions as an owner.
Are you measuring job profit after the work is complete? Are callbacks being tracked as real costs? Do your change orders carry margin? Do you know which work deserves more of your calendar: and which work needs a higher price?
If you want meaningful service business growth, start there.
You do not need more activity.
You need better visibility, sharper decisions, and the discipline to act on what the numbers are telling you.



