PER-AGREEMENT PROFITABILITY

SERVICE AGREEMENT PROFITABILITY.

QUICK ANSWER

A service business with 300 recurring agreements is running 300 small businesses, and the monthly P&L reports all of them as a single result. That result is a net of the agreements that make money and the ones that lose it, so both ends of the book vanish into an average nobody can act on. Producing the report takes three things: every work order coded to an agreement, labor and materials attributed to that work order, and drive time allocated to the stop that caused it. Once the ranking exists, the twenty worst accounts stop being a mystery and become a renewal list with dates on it.

Nobody sets out to keep a losing agreement. It happens because the price was right at signing and then nobody looked at it again while labor cost, material cost, and the scope the customer had come to expect all moved. The blended margin on the P&L stayed healthy through the whole thing, which is the most persuasive argument there's for leaving the agreement alone.

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

WHAT IT MEANS.

Per-agreement profitability is the revenue one recurring agreement produces over a year less every cost incurred delivering it: burdened technician labor, materials consumed on the customer's site, and the drive time between stops.

Service business margins move too much by region for us to publish a benchmark anyone 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. We build your numbers out of your own book instead of giving you an average that was never true where you operate, and we would rather say that plainly than quote you a figure with no evidence behind it.

A service business has none of the instruments a project business runs on. There's no backlog, no schedule of values, no pay application, no retainage, and no WIP schedule to true up at month end. What it has instead is a book of agreements and a stream of work orders, so the report that does the work a job cost report does on a project business is profitability by agreement.

This is the report almost nobody in a recurring-revenue service business has, and it's the one that changes the most decisions. It tells you which renewals to raise, which routes to rebuild, which customers are subsidizing which, and which accounts you should be glad to lose. Every one of those decisions is currently being made on instinct, and instinct is optimistic about accounts you've held for a long time.

WHAT WE SEE IN THIS BUSINESS

WHY THE BOOK LOOKS FINE.

01

The P&L nets the winners against the losers

One line of service revenue and one line of service cost produce one margin, and that margin is an average of everything. The agreements throwing off strong margin pay for the ones bleeding, and the blended figure comes out respectable enough that nobody investigates. Both ends of the book are invisible at the same time, which means the best accounts never get studied and the worst ones never get fixed.

02

Work orders aren't coded to an agreement

In most service businesses the work order exists to tell a technician where to go and to get the customer invoiced. It has an address, a date, and a description, and then it closes. Without an agreement number written on it, there's no way to roll a year of visits back to the contract that obligated them, so the cost side of any single agreement can't be assembled at all.

03

Drive time belongs to nobody

Windshield hours are paid labor that produces no billable output, and they usually sit in a general labor account where no agreement tracks them. That treatment makes a dense downtown route and a rural route with 40 minutes between stops look identical on the books. The rural agreements are consuming far more of the day than they're paying for, and the accounting is built in a way that can't show it.

04

A legacy agreement drifts into a loss with nobody deciding it

An agreement signed five or six years ago was priced against the labor rates, material costs, and visit scope of that year. Wages have moved since, materials have moved more, and the customer has added expectations that were never written into the contract. Nothing about the agreement changed on the day it turned into a loss, so no event exists for anyone to react to, and the oldest accounts on the book are frequently the worst ones.

THE MATH

WHAT IT LOOKS LIKE IN DOLLARS.

How netting hides both ends, an example

Take a constructed book of 300 agreements where 40 of them lose $1,500 a year each and the other 260 make $900 each. The losses total $60,000, the winners total $234,000, and the P&L reports $174,000 of margin on the service line and looks perfectly healthy. Repricing or releasing those 40 accounts is worth $60,000 without selling anything new, and the blended report gives you no reason to go looking for them.

A legacy agreement, costed out as an illustration

Consider an agreement billing $400 a month, which is $4,800 a year, covering twelve visits that now take two technicians four hours each. That's 96 technician hours, and at an illustrative burdened rate of $55 an hour it costs $5,280 before anything else. Add $600 of materials and twelve hours of drive time at the same burdened rate, and the agreement costs about $6,540 to deliver $4,800 of revenue. The number was fine when the visits took half as long.

What two extra stops cost you

Two additional stops a day at 20 minutes of drive time each takes 40 minutes out of a technician's billable capacity. Over 250 working days that's about 167 hours, which is a month of one technician's year spent driving. This is math rather than a claim about your business, and the point of it's that route density is a margin decision that never appears on a chart of accounts.

HOW SPM FIXES IT

HOW EVERY AGREEMENT GETS ITS OWN NUMBER.

The agreement becomes the cost object

Every recurring agreement is set up as its own cost object, and every work order written against it is tagged with that identifier before a technician is dispatched. Nothing gets invoiced or closed without it. That single rule is what makes the rest of the report possible, and it's a dispatch discipline rather than an accounting one.

Labor and materials attributed at the work order

Technician hours post to the work order at a burdened rate that includes taxes, insurance, benefits, and vehicle cost, not at the base wage. Materials post to the work order they were consumed on and not to a monthly supply expense. Both of those are setup decisions made once, and getting them wrong is the most common reason a service business has costing that it doesn't trust.

Drive time allocated to the stop that caused it

Windshield hours get allocated across the stops on the route instead of sitting in a general labor bucket. A rural agreement that consumes 40 minutes of travel per visit takes on that cost, and a dense route stops subsidizing it. This is usually the change that reorders the ranking most, because it moves cost onto the accounts that always felt hardest to service without anyone being able to prove why.

One ranked report, worst account first

The monthly package includes agreement-level margin sorted from worst to best, with revenue, labor hours, material cost, and allocated travel on each line. The top of that list is the work order for the month. Reviewing the bottom twenty accounts every month is a thirty minute exercise once the data exists, and it replaces a conversation about whether the business is doing well.

Renewal dates managed off the report

Every agreement has an anniversary, and that anniversary is the only moment when the price is genuinely open. We build a renewal calendar alongside the profitability report so the two get reviewed together, which means you know what an account earns before the renewal window opens rather than three months after it closed. A price increase asked for with a costed visit history behind it's a different conversation from one asked for because everything went up.

A decision for the ones that can't be repriced

Some agreements can't move: a multi-year term with no escalator, a customer who will walk, or a logo you keep for reasons that have nothing to do with margin. Those get one of three treatments, which are reducing the cost to serve by rescoping or rerouting the visits, holding it deliberately as a known and quantified loss with an end date, or declining to renew. The point is that keeping it becomes a decision somebody made rather than an accident.

WHAT YOU GET

THE OUTPUTS, NAMED.

Agreement-level margin for every recurring contract on the book, ranked worst to best
Work order coding structure that ties every visit back to its agreement
Burdened labor rate built from your own payroll taxes, insurance, benefits, and vehicle cost
Drive time allocation across route stops instead of a general labor bucket
A renewal calendar aligned to the profitability report
Monthly review of the bottom of the ranking with a decision on each account
Books closed by the tenth of the following month so the report is current enough to use
$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. The one-time onboarding fee is right here in the table.

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

The onboarding fee covers migrating your books back to the start of your last taxable year and getting you fully operational in 60 days. It's billed once, with your first invoice. It's the same for all three tiers. Your first month is prorated, and your monthly engagement starts on the first of the first full month.

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. The onboarding fee is right here in the table.

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 and never in a report.

Your bookkeeper still does the books.

Executive

You stop touching the books.

Everything in Core, and we run the bookkeeping and the controllership as well. Your office stops answering coding questions and stops chasing a reconciliation on the last day of the month.

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 books, the job costing, and the software. No payroll.

COMMON QUESTIONS

FREQUENTLY ASKED.

We won't give you a number, and we would be making it up if we did. Service business margins move too much by region to publish a benchmark anyone should price against, because labor rates, drive time, competitive density, and what a market will pay for a recurring agreement vary more between two metros than between two trades. What we can tell you is how your own agreements rank against each other, which is the comparison that changes what you do on Monday. An average built somewhere else has never repriced anything.
Three things, and none of them are complicated. Every work order has to be tagged with the agreement it belongs to before it gets dispatched, technician hours and materials have to post to that work order and not to a monthly expense account, and drive time has to be allocated to the stops that caused it. If those three are in place, agreement-level profitability falls out of the data every month with no extra effort. If any one of them is missing, the report can't be built regardless of how good the software is.
Reduce the cost to serve it, hold it as a quantified loss with an end date, or decline to renew. Rescoping is the first option worth trying, because a visit frequency or a scope written years ago is often more than the customer needs today. Rerouting is the second, since the same agreement serviced on a day when you're already in that area costs materially less to deliver. If neither works and the customer won't move on price, keeping the account is defensible as long as you know the number you're paying for it and somebody chose to pay it.
You need a system where the agreement is a cost object and the work order can be coded to it, which most general ledgers can't do on their own. We set clients up in ControlQore, which lists at $150 per $1M of revenue a month and handles the cost structure the report depends on, and which SPM pays for on your behalf inside the Strategic package. The software is the smaller half of the work. The larger half is the coding discipline at dispatch, and that's a process we build with you rather than something a tool does for you.
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 project manager and master electrician: 150+ projects worth $2.1B combined, from $50,000 to $300M. Now fractional CFO to commercial subcontractors.

CAN YOU TELL ME YOUR WORST FIVE AGREEMENTS?

It's twenty minutes of questions about your recurring agreements and what it costs you to service each one. No selling happens on the call and no proposal comes from it. If Josh can help, you'll book a longer second call.

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 call

20 minutes. Nothing gets sold on this call and nothing gets proposed. Josh asks questions to work out whether he can help at all.

OR START WITH THE WORKBOOKS. NO CALL NEEDED.