SERVICE COSTING

WORK ORDER COSTING, NOT JOB COSTING.

QUICK ANSWER

Project job costing and service work order costing are the same discipline at a different grain. A project contractor costs a handful of jobs across months and can afford deep detail on each one. A service contractor closes thousands of work orders across days, so full detail per ticket costs more to collect than the decision it feeds is worth. You cost the repeatable unit instead: work order type, technician, agreement, and truck.

There's no WIP schedule in a service business, because there's no long contract earning revenue against a schedule of values. Two reports take its place. The agreement margin schedule shows what each recurring agreement has cost to serve against what it has billed, and the open work order report shows every ticket that's dispatched, completed but not invoiced, or invoiced but not collected. Those two do for a service company what WIP does for a sub: they tell you whether the revenue you booked is worth what it says, and whether the work you finished has been billed at all.

BY JOSH LUEBKERPublished 2026-08-08Updated 2026-08-08
THE DEFINITION

WHAT IT MEANS.

Work order costing is cost measurement built at the unit a service business repeats: the cost of a work order type, the cost of a technician per billable hour, the cost to serve a recurring agreement, and the cost to run a truck for a day, rather than a full cost build on every individual ticket.

Service business margins move too much by region for us to publish a benchmark you should price against. Labor rates, drive time, competitive density, and what a market will pay for a recurring agreement vary more between two metros than they do between two trades, so an average built from somebody else's book would be wrong in both directions at once. We build your targets from your own cost to serve, work order type by work order type, which is more useful than an industry figure that was never true where you operate.

The discipline transfers even though the structure doesn't. Every dollar still needs one home, the coding still has to be identical across the whole business, and the person buying parts, the person installing them, and the person billing them still have to agree on where they go. What changes is the unit being costed and the reference point you compare it to. A project sub compares actual cost against a bid line by line. A service contractor has no bid, so the reference point becomes the catalogue price and the average cost of the last hundred work orders of that same type.

WHAT WE SEE IN SERVICE BUSINESSES

WHERE THE DETAIL BREAKS DOWN.

01

Per-ticket detail costs more than it returns

Full cost detail on every work order sounds like discipline and behaves like a tax. Every extra field a technician fills in on the tablet comes out of billable capacity on every call, and thousands of calls a year make that a large number. The deeper problem is that the answer is worthless once you have it, because knowing a single $380 ticket ran eleven dollars over its average changes nothing about how you price, staff, or dispatch. Cost detail earns its keep at the level where volume gives an average some weight, and one ticket never has that volume.

02

The cost codes were copied off a project build

Most service companies that attempt costing inherit a structure designed for projects: seven categories, two or three levels deep, built to mirror an estimate line by line. A service business has no estimate to mirror. It has a catalogue and a price book, so codes borrowed from the project side produce buckets nobody in dispatch or the field can read. Technicians then code by guess, the same repair goes to four different places across four trucks, and the reporting built on top of it's unusable regardless of how carefully the bookkeeper closes the month.

03

A losing agreement hides inside a profitable month

A service P&L is the sum of hundreds of small transactions collapsed onto one or two revenue lines. A strong month of replacement and install work will cover an entire agreement portfolio that costs more to serve than it bills, and nothing on the statement separates the two. The same blindness applies to one work order type that's priced below its own cost to deliver, and to one technician whose callback rate doubles his true cost per billable hour. The month closes profitable, the owner believes the business is fine, and the losing piece keeps growing because it's the piece the sales team finds easiest to sell.

THE ARITHMETIC

WHAT IT LOOKS LIKE IN DOLLARS.

The data entry arithmetic, as an illustration

Take a company closing 400 work orders a month and add five minutes of cost coding to each one. That's 2,000 minutes, or about 33 hours a month of field time spent producing detail that no report reads. This is arithmetic on made-up inputs rather than a claim about your business, but the direction holds: the cost of collecting per-ticket detail scales with volume while the value of it doesn't.

Utilization, worked as an example

A technician billing 6 of 8 hours is at 75 percent utilization. Add two extra stops a day at 20 minutes of drive time each and 40 minutes comes off billable capacity, which over 240 working days is roughly 160 hours, or a month of one technician's year. Route density is a costing question rather than a dispatch preference, and cost per technician per billable hour is the number that makes it visible.

How an agreement disappears, illustrated

An example agreement bills $3,000 a year across 12 monthly invoices and covers four scheduled visits at two hours each, so eight hours of planned labor. Add six hours of callbacks that get coded to demand service and not to the agreement and the true cost to serve carries 14 hours plus drive time, parts, and truck. Whether that agreement makes money depends entirely on your own loaded labor cost and truck rate, and that's the point: no industry average can answer it, so the report has to carry cost to serve for each agreement individually.

HOW SPM BUILDS IT

WHAT TO COST INSTEAD.

Four costing units, not one

Cost per work order type is the first one, built as a rolling average off closed tickets, because it tells you whether each line of your catalogue is priced above what it costs to deliver. Cost per technician per billable hour is the second, loaded with burden and truck, because two techs on the same pay rate can differ by a third once callbacks and drive time are counted. Cost to serve per agreement is the third and the one most service businesses have never seen. Cost per truck per day is the fourth, and it settles fleet decisions the same way an equipment cost basis settles them on the project side.

Cost codes built from the catalogue, not from an estimate

Level 1 is the revenue stream: recurring agreements, demand service, replacement and install, and warranty or callback work. Level 2 is the work order type straight out of your price book, using the same words dispatch already uses, so a technician closing a ticket picks the code without thinking about accounting at all. Cost types cross both levels: labor, material, vehicle, subcontracted, and permit. The test is the same one we run on the project side, only pointed at a catalogue instead of an estimate: the person selling the work, the person doing it, and the person billing it all have to agree on where a cost belongs before the first ticket gets coded.

Warranty and callback work gets its own code

Rework coded back to the original work order type disappears into the average and makes bad work look normal. Given its own Level 1 stream, it becomes a number you can watch by technician, by work order type, and by install crew. Most service businesses that fix one thing fix this one, because it's usually the largest single piece of cost nobody has ever been billed for and nobody has ever measured.

The two reports that replace the WIP schedule

The agreement margin schedule lists every recurring agreement with what it has billed to date, what it has cost to serve to date including callbacks, and how many scheduled visits remain in the term. The open work order report lists every ticket by state: dispatched, completed but not invoiced, and invoiced but not collected. Completed and not invoiced is the service equivalent of underbilling, and it's where the money sits in almost every service business we open up. One hybrid case survives: a change-out or install that runs more than a couple of weeks and carries a deposit gets treated as a small job with its own code and a cost to complete.

A cadence that catches it inside the month

Weekly, you look at margin by work order type and by technician, completed and not invoiced, and callback count. Monthly, with the books closed by the tenth, you look at the agreement margin schedule and a P&L split by revenue stream rather than one service line. Quarterly, agreement renewal pricing gets set off measured cost to serve instead of last year's price plus three percent. The 13 week cash forecast runs alongside all of it, because a service business collects in small pieces and a slow week of dispatch takes about six weeks to reach the bank account.

WHAT YOU GET

THE OUTPUTS, NAMED.

Cost per work order type, as a rolling average off closed tickets
Cost per technician per billable hour, loaded with burden and truck
Cost to serve by agreement, against what that agreement bills
Cost per truck per day, including fuel, maintenance, and depreciation
A P&L split by revenue stream: agreements, demand service, replacement and install, warranty
The open work order report: dispatched, completed and not invoiced, invoiced and not collected
The agreement margin schedule, with the books closed by the tenth
A rolling 13 week cash forecast built on collections, not on billings
$10.7M+
Client AR Recovered Since 2023
48
Active Trade Specializations
60 DAYS
Average Onboarding Time
PRICING

FLAT MONTHLY FEE. NO SURPRISES.

Three tiers, priced by your trailing twelve month revenue. Which one you're in depends on how much of the work you want off your desk. No hourly billing, no payroll, and no add-ons.

Pricing

Last 12 months revenueMonthly fee
Up to $1M$1,900 to $2,900
$1M to $3.5M$2,600 to $3,900
$3.5M to $6.5M$3,800 to $5,700
$6.5M to $9.5M$5,100 to $7,100
$9.5M to $12.5M$6,100 to $8,500
$12.5M to $15.5M$7,400 to $11,000
$15.5M to $18.5M$9,400 to $13,500
$18.5M+Quoted individually

Range reflects the three tiers below. Which one you're in depends on how much of the work you want off your desk. No payroll. No hidden line items.

Core

You stop guessing.

You get the CFO work. Job costing built against the way you estimate, a 13 week cash forecast, monthly WIP, and a meeting every month that ends in decisions rather than a report.

Your bookkeeper keeps doing the books.

Executive

You stop touching the books.

Everything in Core, and we run the bookkeeping and the controllership as well. Nobody in your office is answering coding questions or chasing a reconciliation at month end.

We do the books. No payroll.

Strategic

Every job shows its margin while it's still running.

Everything in Executive, plus the job costing and WIP platform set up, loaded with your cost codes, and managed for you every month. You never have to learn it.

We do the job costing.

COMMON QUESTIONS

FREQUENTLY ASKED.

They need costing, just not at the job level. The unit that repeats in a service business is the work order type, the technician, the agreement, and the truck, so those are the four things worth costing. Applying project-grade detail to a two hour service call produces a data collection burden your technicians will defeat within a month, and applying nothing at all leaves you pricing a catalogue you've never costed. Costing at the repeatable unit is the middle path, and it's the one that survives contact with a dispatch board.
The agreement margin schedule and the open work order report. WIP exists to answer two questions on a long contract: is the revenue you've recognized supported by the work you've completed, and have you billed what you earned. A service business answers the first with cost to serve per agreement against what that agreement has billed, and the second with the completed but not invoiced list. If a work order sits completed and uninvoiced for three weeks, that's underbilling in a service business, and it costs you the same thing it costs a sub.
Enough to place the ticket in the right work order type, capture labor hours, and attach parts used. That's three inputs, and every one of them is something the technician already knows when he closes the call. Anything past that gets coded wrong under time pressure, and wrong data is more expensive than no data because you'll make decisions on it. The depth belongs in the reporting structure and not in the technician's tablet.
We won't give you a figure, and anybody who does is guessing on your behalf. Labor rates, drive time, competitive density, and what a market will pay for a recurring agreement move more between two metros than they do between two trades, so a published service benchmark is an average of markets you don't operate in. What we do instead is build your own cost to serve by work order type and by agreement, then set target pricing off that. Your own book is the only reference point with any authority behind it.
Three tiers, and which one you are in depends on how much of the work you want off your desk. Core is where you stop guessing: job costing built against the way you estimate, a 13 week cash forecast, monthly WIP, and a monthly meeting that ends in decisions, while your bookkeeper keeps doing the books. Executive is where you stop touching the books, because we run the bookkeeping and the controllership as well. Strategic is where every job shows its margin while it is still running, because the job costing and WIP platform is set up and managed for you. No payroll. No scope gaps.
WHAT THIS TIES INTO
Josh Luebker, The Construction CFO
Josh Luebker
FRACTIONAL CFO · THE CONSTRUCTION CFO

Former commercial construction project manager and master electrician. Managed 150+ projects worth more than $2.1B combined, with individual jobs from $50,000 to $300M, including data centers, military bases, hospitals, and high-rises. Now fractional CFO for commercial subcontractors doing $1M to $12M through Sulphur Prairie Management.About Josh  | LinkedIn

WHICH OF YOUR AGREEMENTS ARE YOU PAYING TO KEEP?

Bring your last twelve months and your agreement list. We will work out cost to serve on the ten biggest ones and tell you which of them you would be better off repricing.

You don't hire a CFO because it's safe, you do it because the real risk isn't having one.
Book a 20 minute diagnostic

20 minutes. No sales pressure. We will tell you exactly what's broken before we talk about anything else.

OR START WITH THE WORKBOOKS. NO CALL NEEDED.