Margin Per Job: The Number Your Service Business Probably Isn’t Tracking
Revenue is easy to feel good about. A busy schedule, invoices going out, money coming in — it looks like…
Read →
Most 5-person service businesses know their revenue. Almost none of them know their true margin per job — and that gap matters more at 5 people than it does at 50.
Revenue is easy to see. It shows up on every invoice, every bank deposit, every monthly summary a business owner glances at. Margin per job is different — it requires knowing not just what a job billed, but what it actually cost: materials, labor at a real hourly rate, a fair share of overhead. Most small business software tracks the first half of that equation and simply doesn’t collect the second half at all, which means the number doesn’t get skipped out of laziness. It gets skipped because most tools were never built to produce it in the first place.
This shows up constantly with one and two-person service operations traveling to customer locations. “I don’t have a real office, so I don’t have overhead” is one of the most common things a business owner will say — right before finding out that gas, vehicle maintenance, insurance, equipment depreciation, and material costs add up to real overhead, whether there’s a building attached to it or not.
True margin per job. Take a one-person lawn and landscaping business as an example. The invoice says $180 for a job. The generalized version of “cost” most owners track is just the bag of fertilizer and maybe gas money — call it $40, leaving what looks like $140 in profit. The real number includes drive time to and from the job, the labor hours actually spent, the fertilizer and materials, and a fair share of the mower and truck’s depreciation and maintenance. Once all of that gets factored in, that same $180 job might actually net closer to $70 to $90 — still profitable, but nowhere near what the owner assumed, and a very different number if that job type makes up half the weekly schedule.
Revenue per employee hour. Picture a small electrical services company with two employees plus the owner. A job invoices for $600 and takes 4 hours combined between two people working it. The naive math says $150 an hour. The real number divides that $600 by total labor hours, then subtracts what it actually costs to have those people on that job — their wage, materials, a share of the truck and tool costs — and what’s left, divided by hours, is the real revenue per hour the business is generating. A simple way to think about it: a job takes a certain number of hours and brings in a certain amount of money; subtract what the job actually cost to deliver — materials, labor, a fair share of overhead — and divide what’s left by the hours worked. That’s the real number, not the one on the invoice divided by a guess.
Customer acquisition cost by channel. Take an HVAC business running both referral-based marketing and paid Google ads. Word-of-mouth referrals might cost almost nothing in direct spend but take longer to generate volume. Paid search might bring in customers faster but cost $150-$300 per acquired customer once ad spend and conversion rates are factored in. Without tracking both channels separately, it’s easy to assume referrals are “free” and paid ads are “expensive” — when the real comparison depends on volume, close rate, and how much each type of customer is actually worth over time.
A 50-person company can absorb one underpriced service line without the business being threatened by it — there’s enough scale elsewhere to cushion the mistake. A 5-person service business doesn’t have that cushion. One consistently underpriced job type can quietly erode the entire company’s margin for months before it shows up anywhere obvious, like a bank balance that never seems to build the way it should.
There isn’t usually one exact moment this starts to matter — it’s valuable at any stage. But it tends to become urgent around the same point a business starts scaling: when an owner is spending more time running the business than doing the actual work, or when the first internal hire — someone answering phones, someone handling scheduling — gets added and overhead stops being an abstraction and starts being a real number on a real payroll.
STELLA’s cross-platform reporting for customer acquisition cost by channel is still in active development.
This article was co-authored by Brandon Sheriff and STELLA, Intelligent Analytics’ AI Intelligence Layer for business data and unit economics.
Revenue is easy to feel good about. A busy schedule, invoices going out, money coming in — it looks like…
Read →Most small businesses track the wrong metrics. Here's which numbers actually connect to outcomes — and how connected reporting changes…
Read →