Markup on Materials: Charging for Parts on Heating & Plumbing Jobs
- 1. A 25% markup and a 25% margin are different amounts of money
- 2. Markup vs margin, in plain terms
- 3. How much should you mark up materials?
- 4. What your markup is actually paying for
- 5. Trade price is not your cost price
- 6. Should you show materials on separate line items?
- 7. Where markup and your hourly rate overlap
- 8. Materials on quotes & estimates vs invoices
- 9. Add markup and control your margin by invoicing on GES
- 1. A 25% markup and a 25% margin are different amounts of money
- 2. Markup vs margin, in plain terms
- 3. How much should you mark up materials?
- 4. What your markup is actually paying for
- 5. Trade price is not your cost price
- 6. Should you show materials on separate line items?
- 7. Where markup and your hourly rate overlap
- 8. Materials on quotes & estimates vs invoices
- 9. Add markup and control your margin by invoicing on GES
Markup and margin both describe the profit you make on the parts you fit, but they’re worked out from different numbers. That means a 25% markup on materials and a 25% margin are not the same amount of money, and if you mix them up, you might end up making less on every job than you think.
This guide is aimed at heating & plumbing businesses in the UK and covers the difference between the two, what to mark materials up by, what that markup actually has to pay for, and how to handle parts on your quotes and invoices.
- 1. A 25% markup and a 25% margin are different amounts of money
- 2. Markup vs margin, in plain terms
- 3. How much should you mark up materials?
- 4. What your markup is actually paying for
- 5. Trade price is not your cost price
- 6. Should you show materials on separate line items?
- 7. Where markup and your hourly rate overlap
- 8. Materials on quotes & estimates vs invoices
- 9. Add markup and control your margin by invoicing on GES
- 1. A 25% markup and a 25% margin are different amounts of money
- 2. Markup vs margin, in plain terms
- 3. How much should you mark up materials?
- 4. What your markup is actually paying for
- 5. Trade price is not your cost price
- 6. Should you show materials on separate line items?
- 7. Where markup and your hourly rate overlap
- 8. Materials on quotes & estimates vs invoices
- 9. Add markup and control your margin by invoicing on GES
A 25% markup and a 25% margin are different amounts of money
Take a job where the parts cost you £120.
Adding a 25% markup means you charge £150. That’s £120 × 1.25. Your profit is £30.
Adding a 25% margin means you charge £160. That’s £120 ÷ 0.75. Your profit is £40.
Same parts, same “25%”, and a £10 difference on one modest parts bill. Across every £1,000 of materials you buy, it can add up.
The key takeaway? If you’ve set your prices thinking in margin but you’re working them out with a markup, you’re earning significantly less profit.
Markup vs margin, in plain terms
Both start with the same profit figure. The difference is what you divide it by.
- Markup is your profit as a percentage of what the part cost you.
- Margin is your profit as a percentage of what you charged the customer.
Carrying on the example above, £30 profit on a £150 charge is 25% markup but only 20% margin. Markup is always the bigger number of the two.
To work out a selling price:
- From a markup: cost × (1 + markup). A 30% markup on £80 is £80 × 1.3 = £104.
- From a target margin: cost ÷ (1 − margin). A 30% margin on £80 is £80 ÷ 0.7 = £114.29.
Here’s how a range of markups convert for parts that cost you £100:
| Markup | You charge | Profit | Actual margin |
|---|---|---|---|
| 20% | £120.00 | £20.00 | 16.7% |
| 25% | £125.00 | £25.00 | 20.0% |
| 30% | £130.00 | £30.00 | 23.1% |
| 33.3% | £133.33 | £33.33 | 25.0% |
| 40% | £140.00 | £40.00 | 28.6% |
| 50% | £150.00 | £50.00 | 33.3% |
| 100% | £200.00 | £100.00 | 50.0% |
While markup is easier to use on site because it’s one multiplication. Margin is what’s normally used by accountants and in your financials. Use whichever suits you, but know which one you mean, and don’t set a target in one and price in the other.
How much should you mark up materials?
There’s no official figure, although 30% markup is a good place to start. The right markup is the one that covers what getting that part actually costs you, plus a fair return for the risk you’re carrying. A few things will push that number up or down, including:
-
How long the part takes to get hold of. A fitting that’s already on the van costs you almost nothing extra in time. A special-order part, or one that means a trip across town to the only merchant with it in stock, costs you a chunk of your day or a repeat visit.
-
Who carries the risk. You order it, you pay for it, and if the customer cancels or it turns out to be the wrong part, you’re the one stuck with it.
-
Warranty exposure. If the part fails in the first year, you’re usually back out to replace it and the labour is on you. Parts with a higher failure risk, or a higher cost to swap, justify a bigger markup.
-
Where you sit in your market. If you’re positioned as the cheapest van in town, your markup has less room. If you’re competing on quality and reliability, it has more. There’s more on this in our guide to the best pricing strategies for heating and plumbing businesses.
-
What the part costs. A flat percentage can behave oddly at both ends. The same percentage that barely covers your time on a £4 washer can look steep on a £1,500 boiler. Whether you want to consider different rates on more expensive/premium items and sundries is up to you and your wider pricing strategy.
Above: In GES, you can save line item templates for common parts and pieces with your markup already included.
What your markup is actually paying for
The markup isn’t pure profit. Most of it pays for costs that don’t show up anywhere else on the invoice.
- Merchant runs. Driving there, queuing at the counter and driving back is work time, and it has a cost whether you bill it or not.
- Van stock. Parts sitting on your shelves are money you’ve spent and haven’t got back yet. Some of it gets damaged, goes out of date or stops fitting anything.
- Returns. Wrong part, customer changes their mind, merchant charges a restocking fee.
- Warranty callbacks. Going back to replace a failed part is usually unpaid labour.
As an example, if your labour cost works out at £40 an hour, a 45-minute round trip costs you £30 before fuel. On a £120 parts bill, that one trip already wipes out a 25% markup. Not charging a high enough markup means you’re silently giving your customer discounts and cutting into your profit. Click here to read more about calculating an accurate labour cost rate.
Trade price is not your cost price
The number on the merchant’s receipt is the trade price, not what the part really cost. That figure also includes the time it took to get it and the risk of being stuck with it if the job falls through.
Marking up the trade price is fine, and it does give you room to add markup without setting the prices way higher than retail. Just make sure the percentage is big enough to cover what the receipt leaves out, because if your markup only covers a merchant run, the part is making you nothing.
A note on VAT. If you’re VAT registered, you reclaim the VAT you pay on parts, so put your markup on the net trade price and add VAT to the final selling price. If you’re not VAT registered, you can’t reclaim it, so the VAT you pay is part of your real cost and belongs in the figure you mark up.
Should you show materials on separate line items?
There’s a fair argument both ways.
Itemising parts is transparent. The customer sees exactly what they paid for, and you have a clear record of what was fitted if there’s a warranty question later. The downside is that it invites line-by-line checking.
Rolling materials into one price keeps the invoice clean and fits naturally with fixed pricing, where the customer is comparing a total rather than a parts list. The trade-off is that it’s harder to explain if someone does challenge the number. Our blog on hourly vs fixed pricing goes into why a lot of engineers have moved to the fixed-price side for the majority of heating & plumbing jobs.
A middle ground that works for many jobs is listing the major parts and putting sundries into a single line. If a customer does question your prices, here are some tips on justifying them.
In Gas Engineer Software, you can save the parts you fit regularly as line-item templates with your selling price already set.
Where markup and your hourly rate overlap
If you worked out your hourly rate by adding up all your business costs, as in our guide to working out your hourly rate, your van, fuel and non-billable time may already be in there.
If they are, a big markup on parts can mean effectively charging for the same merchant run twice. If they aren’t, a small markup can mean not charging for it at all.
Decide which part of your price covers what:
- Hourly rate covers your time and overheads, including sourcing. Your markup only needs to cover risk and the money tied up in stock, so it can stay modest.
- Hourly rate covers time on the job only. Your markup has to pay for sourcing time too, so it needs to be higher.
Materials on quotes & estimates vs invoices
Parts prices move. If you price a quote on a part you haven’t yet sourced, then the merchant puts up the prices, the difference comes out of your profit.
The solution is to put a validity period on every quote or to issue an estimate instead. More on our guide to quotes vs estimates for heating and plumbing jobs.
Once the job’s agreed, the parts on the invoice should match the parts on the quote, unless you’ve agreed a change with the customer. In GES, you can convert an accepted quote into an invoice in one tap.
For more, see our guide to invoicing a heating and plumbing job.
Add markup and control your margin by invoicing on GES
From itemising your invoices with templates to generating them from a quote, tracking payments, and syncing everything to your accounting platform, GES makes the admin side of a heating & plumbing business far simpler.
Try every feature for free for 14 days by starting a trial. No card details required.
