Parts Margin Is a Per-Line Average, Not a Basket
Why this matters
The parts margin most shops read is the average of the margin on each individual part line used in the period. Consumables and small hardware carry heavy markups and produce most of the lines. Major components carry thin markups and produce most of the money. Average the lines and the consumables win the vote by a landslide, so the figure describes a part of the business that is not where the parts money is. A shop can watch that number sit comfortably in the high sixties while the margin on what it actually sold in parts is half that, and while a handful of expensive components are going out below cost.
What the average is taken over
One part-usage line is one part, used on one job. Its margin is its sale price less its cost, divided by its sale price, where the cost is the figure snapshotted at the moment the part was used rather than what the catalogue says today.
The headline figure adds up those percentages across every part line in the period and divides by the number of lines. Every line counts once. A fitting counts once. A compressor counts once.
That is a legitimate measurement of one thing - whether your markup structure is holding across the catalogue - and it is not a measurement of what you made on parts.
The worked month
A shop records 180 part-usage lines in a month. Index cost and price in units where 1.0 unit is roughly the cost of one small fitting.
| Line class | Lines | Cost per line | Price per line | Line margin |
|---|---|---|---|---|
| Consumables and small hardware | 156 | 1.0 unit | 4.0 units | 75.0 percent |
| Major components | 24 | 60.0 units | 72.0 units | 16.7 percent |
The reported figure, the plain average of the line margins: (156 times 75.0) plus (24 times 16.7) is 11,700 plus 400, or 12,100, over 180 lines: 67.2 percent.
What the parts money did. Parts revenue is (156 times 4.0) plus (24 times 72.0), or 2,352.0 units. Parts cost is (156 times 1.0) plus (24 times 60.0), or 1,596.0 units. Margin earned is 756.0 units, and 756.0 over 2,352.0 is 32.1 percent.
The 24 component lines are 13.3 percent of the lines and 73.5 percent of the parts money. That is the general weighting rule, which the averages card derives in full, so take it as read here.
What is specific to parts is the weight itself. In a job-margin average the weight is job size, which at least has something to do with value. Here the weight is the LINE COUNT, and line count is set by how many separate items a job happened to touch. A job that needed one compressor and eleven fittings casts twelve votes, eleven of them from the fittings, and that split has no relationship at all to where the money went.
Quantity does not weigh either
There is a second layer here that is specific to parts, and it catches people who have already understood the first one.
A line's margin is (price minus cost) over price, and both price and cost scale with the quantity on that line. The quantity cancels. A line where one fitting was used and a line where a case of forty was used have the same margin percentage and the same single vote in the average, though one is forty times the money.
So the per-line average is insensitive to unit value AND insensitive to quantity. Two of the three things that determine how much a part line contributed are invisible to it. Only the markup rate survives, which is precisely why it is a good catalogue-structure measure and a bad money measure.
The practical consequence is that the figure will not move when your parts business does. A month where one large job consumed cases of everything and a month where fifty small calls each consumed one of everything can return the same per-line average on completely different parts spend, because nothing in the calculation ever asks how much of anything went out of the van.
The error has no fixed sign, so there is no correction factor
It is tempting, having seen the worked month, to decide the per-line figure runs about twice the real one and mentally halve it. Do not. The direction of the error depends entirely on whether your markup rises or falls with unit value, and plenty of shops run it the other way.
Take a shop that marks major components up hard and passes small stock through at nearly cost as a convenience to the customer. In a month it records 40 consumable lines at 1.0 unit cost and 1.2 units price, a margin of 16.7 percent, and 30 component lines at 50.0 units cost and 100.0 units price, a margin of 50.0 percent.
- Per-line average: (40 times 16.7) plus (30 times 50.0) is 666.7 plus 1,500.0, or 2,166.7, over 70 lines: 31.0 percent.
- The money: revenue 48.0 plus 3,000.0, or 3,048.0 units; cost 40.0 plus 1,500.0, or 1,540.0 units; margin 1,508.0 over 3,048.0: 49.5 percent.
Here the per-line figure understates by 18.5 points. Same arithmetic, opposite direction, because the weight is still on the lines and this time the lines are the thin ones. The only way to know which way your own figure errs is to compute both, and the moment you have computed both you no longer need a correction factor.
Why cost is snapshotted at the moment of use
The cost on a part line is captured when the part goes onto the job and it stays there. It is not re-read from the catalogue afterwards.
This matters more than it sounds. Suppliers move prices constantly. If the line read the catalogue live, a price increase announced in June would silently rewrite the margin on every job closed in March, April and May. A closed job's margin would stop being a fact about what happened and become a fact about today's price list, and no historical comparison would ever hold still.
The snapshot has one cost of its own, and it is the failure mode to watch: a catalogue cost that nobody updates keeps getting snapshotted, so new jobs record a cost that stopped being true some time ago. The margin on those jobs looks healthy while the supplier invoice says otherwise, and nothing in the figure will tell you. Snapshotting protects your history; it does nothing to protect your present.
The part quietly sold below cost
Take six of the 24 component lines and suppose that part's real cost rose from 60.0 to 78.0 units while the catalogue price stayed at 72.0. Its line margin is now (72.0 minus 78.0) over 72.0, which is negative 8.3 percent. The shop is paying for the privilege of installing it.
What the reported figure does. Those six lines used to contribute 6 times 16.67, or 100, and now contribute 6 times negative 8.33, or negative 50. The sum goes from 12,100 to 11,950, and 11,950 over 180 lines is 66.39 percent. The headline fell 0.83 of a point, from 67.22 to 66.39.
What the money did. Parts cost rises by 6 times 18.0 units, or 108.0 units, to 1,704.0. Revenue is unchanged at 2,352.0. Margin earned falls to 648.0, and 648.0 over 2,352.0 is 27.55 percent. The money figure fell 4.59 points, from 32.14 to 27.55.
Both movements are carried to two decimals because they are about to be divided by each other, and rounding either one first moves the answer. Five and a half times the movement, on the figure nobody was watching. And a move of eight tenths of a point in a monthly number is indistinguishable from ordinary variation, so the reported figure will not raise the alarm this month or any month.
The detection method follows from the diagnosis: do not look for it in a margin ranking, look for it in a cost ranking. Rank part numbers by cost consumed in the period - unit cost times quantity used, not unit cost alone - and work down from the top. The parts that can hurt you are the parts you spend on, and there are rarely many of them.
The ranking is the whole method and it is four columns wide: part number, quantity used, the snapshotted unit cost, and the two multiplied. Sort descending on the last one and stop at twenty. Then write the unit cost off the most recent purchase invoice beside each row. Every drift large enough to matter is now the difference between two adjacent columns, and a margin ranking would have buried all of it, because the fittings that carry the best margins consume almost none of the spend.
Commit to a cadence and it stops being a project: reconcile the snapshotted cost against the most recent purchase invoice monthly for the top 20 part numbers by cost consumed, and quarterly for everything else. Twenty part numbers is an hour with the invoices in front of you, and in most shops those twenty carry the large majority of the parts spend.
The monitors to carry, and what each one is for
Start with two averages, and know which question each answers.
- The per-line average answers "is the markup structure in my catalogue intact?" It is deliberately insensitive to which parts happened to move this month, which makes it a stable measure for reviewing the book itself. Read it quarterly. A drift here means catalogue prices, not this month's mix.
- The weighted parts margin - total parts revenue minus total parts cost, over total parts revenue - answers "what did we make on parts?" This is the one that reconciles with the money and the one to trend monthly.
And add one count that is neither: the number of part lines delivered at zero margin or below, reported with the cost consumed on those lines. Zero is a hard floor that needs no interpretation, a count cannot be diluted by 156 healthy lines the way an average can, and a single line on that list is worth investigating whatever either average says.
Add its opposite too, because it is the same defect wearing a friendly face. A line with a blank or zero recorded cost reads at 100 percent margin, which is the highest possible value, so missing cost data does not show up as a hole - it shows up as your best-performing parts. Add eight such lines to the worked month and the per-line figure goes from 12,100 over 180 to 12,900 over 188, or 68.6 percent, up 1.4 points. Nothing looks wrong. Count lines with no cost recorded every period and treat that count as a data check rather than a result.
Checking your own
- Compute both figures for the same period on the same lines and write them together. A large gap is expected and normal; what you want is to know its size, because that is how far off the per-line figure is when someone quotes it in a meeting.
- Count your lines by class. If small hardware is producing four out of five lines, the per-line average is a hardware markup figure wearing a general name.
- Take the top 20 part numbers by cost consumed and check each snapshotted cost against the last purchase invoice. Anything where the purchase invoice is more than 5 percent above the snapshotted cost is a catalogue that has fallen behind, and it is understating your cost on every job since it drifted. Five percent is a starting point to tune.
- Pull any line at or below zero margin for the last two periods. If the list is empty, confirm a negative margin can appear on that list at all rather than being dropped before you see it; a report that quietly hides its worst rows is the most comfortable failure in the building.
References
- See related: Gross Margin Percent Is an Average of Averages - the general weighting rule this card applies to part lines
- See related: Markup vs Margin: The Mistake That Kills Profit
- See related: Cost per Job, and What Is Actually Inside It - where the snapshotted part cost lands in a job's total
- See related: The Dead Stock That's Quietly Costing You