Guide

Materials markup on small jobs: why 20% loses money

A flat markup percentage punishes you on cheap parts and lets you off easy on expensive ones. Here's a tiered structure that actually covers your time, plus the maths to check it against your own jobs.

The problem with "just add 20%"

Most trades pick a markup number early on, usually 15%, 20% or 25%, and never revisit it. It feels fair because it's the same for every job. That's exactly the problem. A flat percentage doesn't know or care how much of your day a job actually ate.

Say you need a $60 valve for a callout. You ring two suppliers, drive to the one with stock, queue at the trade counter, load it, drive back. That's 25 minutes gone, easily. At a $75/hour effective rate (see the hourly rate calculator if you haven't worked yours out), that trip alone costs you about $31. A 20% markup on the part earns you $12. You've lost $19 before you've even picked up a tool.

Markup on small jobs has to cover procurement time, not just carry a bit of risk margin. On big-ticket materials, procurement time barely moves the needle. On small ones, it's the whole story.

What markup is actually paying for

Break it down and there are three separate costs hiding inside "materials markup":

A single percentage tries to price all three with one number. It can't, because procurement time doesn't scale with price and the other two roughly do.

A tiered structure that actually works

Instead of one rate, use bands. The logic: charge a flat handling fee where procurement time dominates, a healthy percentage in the middle where risk and time both matter, and taper off at the top where the dollar value alone generates plenty of margin.

Materials costSuggested approachWhy
Under $100Flat fee, e.g. $15–$35 handling charge on top of costA percentage earns almost nothing; the trip cost is the same whether the part is $20 or $95
$100–$1,00035%–50% markupCovers procurement, ties up cash, and starts carrying real warranty exposure
$1,000–$5,00020%–30% markupTrip count doesn't rise proportionally with value; percentage alone now covers time
Above $5,00010%–15% markupAt this size the dollar markup is large in absolute terms even at a low rate

These bands aren't fixed law. Adjust them to your own supplier relationships, delivery access and how far you drive. The point is the shape: flat or high at the bottom, tapering as the invoice grows.

Worked example: the $60 valve

Materials cost: $60. Time cost of the supply run: 25 minutes at a $75/hour rate = $31.25.

Charged as $60 + $25 handling, the client pays $85 for the valve line. That's a 42% effective markup on this particular job, but it's not because you picked "42%" — it's because a flat fee happens to land there on a $60 part. On a $95 part the same $25 fee is only a 26% markup. That's the tiering doing its job automatically.

Worked example: the $900 material bill, three supplier trips

This is the trap in the brief, and it's a common one on mid-size jobs like a water heater swap with extras, or a small bathroom rough-in.

Materials: $900 across three separate trips (initial order, a missing fitting, a wrong-part exchange). Say each trip costs about $35 in time. Total procurement cost: $105.

The 20% rate looks reasonable on paper but doesn't survive contact with a job that needed three trips instead of one. Three trips are common, not the exception, on jobs with any complexity.

Markup and margin are not the same number

This trips people up constantly, so run it through a calculator rather than doing it in your head under pressure. Markup is added to cost; margin is a share of the selling price.

If you're quoting jobs based on a target margin (say, "materials need to run at 35% margin"), converting that to the right markup percentage isn't obvious in your head. Use the markup vs margin calculator before you commit to a rate, especially if you're changing your pricing structure across the whole business.

Don't forget the warranty loading

If a part fails under warranty, you're usually not billing the client for your return visit or labour to swap it. That cost has to live somewhere, and the honest place is inside the materials markup on the original job, not absorbed silently as "just bad luck."

Cheap consumables and well-known brands: low failure risk, minimal loading needed. Off-brand parts, anything with moving components, or suppliers you don't fully trust: add a few extra points to the relevant band. This isn't guesswork you have to get exactly right; it's a small adjustment that stops warranty callbacks from quietly eating your annual profit.

Checking it against real jobs

The tiered structure is a starting point, not a guarantee. The only way to know if your markup actually protects your margin is to check it against completed jobs: total materials cost, total hours including procurement, and what you actually invoiced. The job profitability calculator does this comparison for you, job by job, so you can see whether your $100–$1,000 band, for example, is genuinely landing at 35–50% margin or quietly slipping under it once real supply trips are counted.

Run three or four recent jobs through it. If the small ones keep coming out thin, your handling fee is too low. If the big ones look suspiciously profitable, you can afford to taper the top band down and win more work on price.

Put this into practice

The Small Business Operations Kit ($19) turns guides like this one into fill-in-once worksheets: rate card, quoting sheet, job costing, payment terms and follow-up templates. Built by the same people who write these guides.