Ask an owner which part of the business makes the most money and you'll get a confident answer. Ask how they know and the answer usually gets shorter. Most owners can tell you which service brings in the most revenue. Far fewer can tell you which one leaves the most behind once its own costs are paid, and fewer still can say which one earns the most for each hour it takes.
Those are three different questions with three different answers, and the usual way of answering them points owners at the wrong line.
A worked example, made up on purpose
The business below is a hypothetical, with round numbers chosen so the arithmetic is easy to follow. Picture a yard and snow company in the mountains with three lines of work. Weekly mowing from spring through fall. Mulch and bed installs, mostly in April and May. And snow removal in winter, with a plow on the truck.
Here's one year, by line. Direct costs are the ones that exist only because the work happened, like crew hours, fuel, mulch by the yard, and salt.
| Line | Revenue | Direct costs | Contribution |
|---|---|---|---|
| Mowing | $120,000 | $78,000 | $42,000 |
| Mulch and beds | $60,000 | $33,000 | $27,000 |
| Snow removal | $30,000 | $21,000 | $9,000 |
On top of that sit $54,000 of shared costs. Insurance, the truck payment, the phone, the accountant, the shop rent. Total contribution of $78,000 minus $54,000 leaves $24,000 of profit for the year.
The report that tells the wrong story
Now do what most cost reports do and spread the shared $54,000 across the lines by their share of revenue. Mowing brought in about 57% of revenue, so it carries about $30,900 of the shared costs. Mulch carries about $15,400. Snow carries about $7,700.
After that spread, mowing shows roughly $11,100 of profit, mulch shows $11,600, and snow shows about $1,300. Snow looks like a lot of cold mornings for almost nothing. An owner reading that report could reasonably decide to sell the plow and sleep in all winter.
The numbers
| Line | Profit shown |
|---|---|
| Mowing | $11,100 |
| Mulch and beds | $11,600 |
| Snow removal | $1,300 |
Source: Worked example, this post, 2026
Run what actually happens if they do. The insurance, the truck payment, the phone, the accountant, and the shop rent are all still there in January. Without snow, the business has $69,000 of contribution to pay $54,000 of shared costs, and profit falls to $15,000. Snow was carrying its full $9,000 all along. The report made it look like $1,300 because it handed snow a slice of bills that would never leave.
That's the whole trap. Spreading shared costs by revenue is an accounting convention, useful for some things, and it quietly answers a question nobody asked. The decision question is what changes if this line goes away, and only the costs that leave with the line belong in that answer.
There's one honest exception to check. If dropping snow means selling the plow blade and cancelling a policy that covers only plowing, those costs do leave, and you subtract them from what snow contributes. Everything that stays, stays.
Margin per hour
The second question is sharper, and it's the one I'd want answered before the busy season.
Most small businesses run out of hours before they run out of customers. A dental hygienist's chair holds so many appointments a day. A bakery's oven holds so many sheet pans. Our hypothetical crew has only so many hours in May, and May is when mowing and mulch both want them.
Say mowing takes 2,400 crew hours a year and mulch takes 900. Divide contribution by hours. Mowing earns $17.50 for each crew hour. Mulch earns $30. Mowing brings in twice the revenue, and mulch earns about 70% more for every hour the crew spends on it.
In a slow week that difference barely matters, because there are enough hours for both. In the first two weeks of May it matters a lot. If a new mowing contract would push a mulch job into June, the owner is trading $30 hours for $17.50 hours, and the revenue line will never show it. Snow fits this picture too. It runs in months when the crew would otherwise sit idle, so its hours cost the business almost nothing in lost work.
The same reading works anywhere capacity is the limit. A law office can look at contribution per attorney hour across estate plans and real estate closings. A salon can look at it per chair hour across cuts and color. The arithmetic doesn't care what you sell.
Running it on your own business
You need three numbers per line, and you probably know two of them already. Revenue for the year is in your books. Direct costs take some sorting, because most bookkeeping lumps materials and labor together across every line. Hours are the one owners guess at, and a rough guess is fine for a first pass.
Pick your two or three biggest lines. Subtract direct costs to get contribution. Divide by hours. Then ask the question for each line in the form that matters. If this went away tomorrow, which costs would leave with it?
For setting prices once you know your margin, the price-increase calculator and the post on whether to raise your prices take it from there. The post on why cutting costs didn't raise your profit covers what happens when a cut moves work around instead of removing it.
The piece I haven't solved for most owners is the hours column. It usually lives in a scheduling app that doesn't talk to the books, and the owner's own hours appear nowhere at all. Joining those two records is the part of this that our intelligence work exists for. Until they're joined, the margin question gets answered from memory, and memory tends to favor whichever line feels busiest.