Guide May 4, 2026

Job Costing & Profitability: Knowing Your True Numbers

Revenue is vanity, profit is sanity. This guide teaches you how to calculate true job costs, identify your most and least profitable service types, and use that data to grow smarter.

The Number Most Service Businesses Are Getting Wrong

Ask most service business owners how profitable they are, and they will tell you their revenue. Ask them for their profit margin, and they will tell you revenue minus materials. Push further — ask what that job actually cost after labor burden, vehicle expenses, overhead allocation, and rework — and the conversation usually slows down.

This is not a criticism. It is a structural problem. Most field service businesses were built by skilled tradespeople who are excellent at their craft and are learning financial management on the job. The gap between “we’re busy and making money” and “we know exactly where our money is going and how much we keep per job” is where most growth stalls.

Job costing closes that gap. It gives you numbers precise enough to make decisions: which services to promote, which to reprice, which to drop, and which clients to pursue more aggressively.

Revenue vs. Profit: The Fundamental Distinction

Revenue is the total amount clients pay you. Profit is what remains after you have paid for everything it took to deliver the service.

A $400 lawn care job sounds healthy. But consider what it actually cost to complete:

  • Technician labor: 3.5 hours at $22/hr = $77.00
  • Labor burden (payroll taxes, workers’ comp, benefits): 28% of labor = $21.56
  • Fuel and vehicle wear for the route: $18.00
  • Equipment depreciation (mower, trimmer, blower): $12.00
  • Allocated overhead (office, software, insurance, phone): $35.00
  • Materials (trimmer line, fuel, fertilizer if applicable): $8.00

Total job cost: $171.56 Gross profit: $228.44 Gross margin: 57.1%

That 57% margin is actually solid for lawn care. But without running these numbers, many owners assume their margins are higher — then wonder why they can’t make payroll after a good revenue month.

What Makes Up True Job Cost

Labor

Labor is the largest cost component for most service businesses and the one most frequently undercalculated. The common mistake is using only the base hourly wage. True labor cost must include:

  • Base wage or salary
  • Payroll taxes (employer share of Social Security, Medicare, federal/state unemployment): typically 10–15% of wages
  • Workers’ compensation insurance: varies by trade, but commonly 8–25% of wages in higher-risk industries
  • Health insurance contributions (if you provide benefits)
  • Paid time off (which is labor cost spread across productive hours)

A technician earning $24/hour has a fully burdened labor cost of approximately $32–$38/hour depending on your benefits structure. If you are costing jobs at $24/hour, you are systematically underpricing every job this technician touches.

Labor burden rate formula: (Total annual labor cost including taxes, insurance, benefits) / (Total annual base wages) = Labor burden multiplier

Example: $85,000 total burdened cost / $65,000 base wages = 1.31 burden multiplier. Every dollar of base wage costs $1.31 in actual expense.

Materials

Materials should be tracked at the job level, not lumped into a monthly average. Every supply run, every bulk material used, every specialized product applied should be logged against the job that consumed it.

In Job Pilot, materials can be added directly to a job record in the field by your technician — either by selecting from your pre-loaded inventory list or by entering a custom item. This creates a real-time cost record rather than a retroactive reconstruction.

Common materials-tracking failure: technicians buying small items (caulk, fasteners, cleaning solution) out of pocket and not logging them. Even small items add up. A $6 tube of caulk used on five jobs per week is over $1,500 per year in untracked cost.

Vehicle and Equipment

Every mile your truck drives costs money. Every hour your equipment runs costs money. These costs do not appear on a single invoice — they accumulate and arrive suddenly as a $4,200 repair bill or a $28,000 equipment replacement.

Vehicle cost per mile (simplified): (Annual fuel + insurance + registration + maintenance + depreciation) / Annual miles driven

For a typical work truck driving 25,000 miles per year, total operating cost is commonly $18,000–$24,000, or $0.72–$0.96 per mile. If a job requires 45 miles of round-trip driving, your vehicle cost for that job is $32–$43 before your technician steps out of the truck.

Equipment depreciation: Take the replacement cost of each major piece of equipment, divide by its expected useful life in hours, and multiply by the hours used on a job.

Example: A commercial mower costing $8,500 with an expected 2,000-hour useful life costs $4.25 per hour of operation. A 3-hour mowing job incurs $12.75 in equipment depreciation cost — money you need to be setting aside to replace that mower when it dies.

Overhead Allocation

Overhead is every expense that keeps your business running but does not attach directly to a single job: your office rent or home office, Job Pilot subscription, phone bill, liability insurance, accounting fees, marketing, and your own salary as the owner-operator.

Most service businesses never allocate overhead to individual jobs, which means every job looks more profitable than it truly is.

Simple overhead allocation method:

  1. Total all monthly overhead costs
  2. Estimate your total monthly billable hours (hours your technicians spend doing paid work, not driving or in the office)
  3. Divide: overhead per billable hour = total overhead / total billable hours
  4. Add that rate to every job based on its duration

Example: $8,500/month in overhead across 400 monthly billable hours = $21.25 in overhead per billable hour. A 4-hour job carries $85 in overhead cost.

Tracking Labor Hours Accurately

The biggest data quality problem in job costing is labor hours. If your technicians are not recording precise start and stop times per job, your labor cost calculations are guesses.

In Job Pilot, the mobile clock-in/clock-out feature lets technicians start and stop a timer when they arrive and leave a job. That data feeds directly into your job cost report — no manual entry, no after-the-fact reconstruction.

Build a culture around this from the start. Your technicians should understand that time tracking is not surveillance — it is the data that lets you pay them fairly, price jobs accurately, and eventually give them raises because the business is running profitably.

For multi-stop days, ensure your technicians are clocking out from one job and clocking in to the next. Travel time between jobs should be tracked separately from billable job time.

Calculating Gross Margin Per Job Type

Once you have your cost components defined and tracked, you can calculate gross margin per service type across a period.

Gross margin formula: (Revenue - Direct job costs) / Revenue x 100 = Gross margin %

Direct job costs include labor (burdened), materials, and vehicle/equipment. Overhead is typically separated out for gross margin calculation and handled at the net margin level.

Run this calculation across your service categories for a 90-day period. Sort the results from highest to lowest margin. What you see will likely surprise you.

Common findings when service businesses run this analysis for the first time:

  • Their “bread and butter” high-volume service often has the thinnest margins because it’s priced competitively and is labor-intensive
  • A specialty service they offer as an add-on has significantly better margins because clients accept premium pricing
  • One-time jobs are frequently underpriced relative to the quoting and setup overhead they incur
  • Recurring maintenance clients are usually more profitable than one-time jobs because route density reduces vehicle cost per job

Identifying Your Most and Least Profitable Services

Using 90 days of job cost data, build a simple matrix:

Service TypeAvg. RevenueAvg. Job CostAvg. Gross Margin
Recurring lawn maintenance$185$9847%
Seasonal cleanup$425$19853%
Irrigation repair$310$10466%
New mulch installation$680$39043%
Tree trimming$850$51040%

In this example, irrigation repair generates the best margin at 66% — likely because it requires specialized knowledge that commands a premium price with relatively fast completion time. Tree trimming generates the lowest margin despite being the highest-revenue service, probably due to equipment cost, labor intensity, and liability insurance.

With this data, you make smarter decisions:

  • Market irrigation repair more aggressively
  • Evaluate whether tree trimming pricing needs to increase by 15–20% to justify the risk and cost
  • Bundle mulch installation with seasonal cleanup to improve average job revenue

Using Data to Reprice or Drop Unprofitable Services

When a service type consistently produces margins below your target (typically 40–55% gross margin for most home services, varying by trade), you have three options:

  1. Raise the price until the margin is acceptable. Test a 15–20% price increase and track whether your close rate drops significantly. Often it does not.

  2. Reduce the cost by improving route efficiency, negotiating better material pricing, or reducing labor hours through process improvement.

  3. Stop offering it if neither option is viable. Some services exist in your menu because you said yes to one client years ago. They may not belong in your core offer.

Dropping a low-margin service feels counterintuitive — it looks like revenue leaving. But every hour your technicians spend on a 30%-margin job is an hour they cannot spend on a 65%-margin job. The opportunity cost is real.

Industry Gross Margin Benchmarks

These are typical gross margins (revenue minus direct job costs, before overhead) for common home service categories. Use them as a starting point, not a ceiling.

IndustryTypical Gross Margin Range
Residential cleaning50–65%
Lawn care / landscaping40–55%
HVAC service & repair50–65%
Plumbing repair45–60%
Pest control55–70%
Painting35–50%
Handyman services40–55%
Pool service55–65%

If your numbers are consistently 10+ points below these benchmarks, the cause is almost always one of three things: underpriced services, untracked direct costs, or excessive materials waste on job sites.

Sample Job Cost Worksheet

Use this structure to manually cost a job before building it into your software:

Job: Residential deep cleaning, 2,400 sq ft home Quoted price: $295

Cost ItemCalculationAmount
Labor — 2 cleaners, 3.5 hours each7 hours x $18/hr base wage$126.00
Labor burden (32%)$126 x 0.32$40.32
Cleaning suppliesActual cost per job$14.00
Vehicle (round trip, 18 miles)18 x $0.82/mile$14.76
Overhead allocation3.5 hrs x $19/hr overhead rate$66.50
Total job cost$261.58
Gross profit$33.42
Gross margin11.3%

This job is significantly underpriced. At $295, you are keeping 11 cents of every dollar after direct costs and overhead — and you haven’t accounted for your own time managing it. A correctly priced version of this job, targeting a 45% net margin, should be quoted closer to $476.

Building the Habit

Job costing is not a one-time exercise. It is a monthly discipline. Set aside one hour at the end of each month to review your job cost reports in Job Pilot, check for services where costs are trending upward, and flag any job that came in significantly over budget.

Over time, this practice replaces gut-feel pricing with data-backed confidence. You will know exactly which jobs to take, which to price up, and which to politely decline — and your business will be healthier for it.