Skip to content
Spryhand

How to price a construction job

Build the cost up in the order it is actually incurred, then add markup — and know that the markup you added is not the margin you earned.

The short answer

Price a construction job by building total cost from materials, labour hours at your charge-out rate, overhead and contingency, then applying markup to that total. The margin the job earns is markup divided by the bid price, which is always lower than the markup percentage itself.

The formula

direct cost = materials + (labour hours x labour rate)

total cost = direct cost + (direct x overhead%) + (direct x contingency%)

bid price = total cost x (1 + markup%)

margin earned = (bid price - total cost) / bid price

markup needed for a target margin = margin / (1 - margin)

Overhead belongs in cost, not in markup. If overhead is left for the markup to cover, markup stops being profit and the margin figure describes nothing.

Worked example

$11,250 of materials and 166 labour hours at $58, with 11% overhead and 5% contingency, quoted at the usual 18% markup:

labour = 166 x 58 = 9,628

direct cost = 11,250 + 9,628 = 20,878

total cost = 20,878 + 2,297 + 1,044 = 24,219

bid = 24,219 x 1.18 = 28,578

margin = 4,359 / 28,578 = 15.3%

An 18% markup earned a 15.3% margin. To actually keep 25%, the markup has to be 33.3% and the bid becomes $32,291 — about $3,700 more than habit would have quoted.

Price from a book, not from memory

A bid built from recollection misses line items, and the ones it misses are always the unglamorous ones — disposal, making good, the second visit.

Keeping material cost and labour hours per unit in one place means a supplier price rise is a single edit rather than a mistake repeated across every future quote.

Contingency is not padding

Contingency covers what you could not have quoted for: what is under the floor, behind the plaster, or inside the wall. It is not a cushion for poor estimating, and it should be visible as its own line rather than hidden inside the labour rate.

When a job has a known unknown, give it a real allowance instead of a blanket percentage. A blanket 5% on a job with an unsurveyed roof is a decision to absorb the roof.

What quietly moves the margin after you win

Change orders. Work agreed on site and never written down is work you are doing for free, and the more agreeable the client, the easier it is to let happen.

The test that matters is not whether a change was discussed but whether it was approved before your crew started. Anything started without sign-off is money you are spending with no authority to bill it.

What this leaves out

  • One labour rate. Multiple trades at different rates need per-line rates, not an average.
  • Excludes retention, finance costs and payment terms — a profitable job can still fail on cashflow.
  • Markup is applied to total cost, which is the usual convention. Applying it to direct cost gives away the overhead recovery.
  • This is bid arithmetic, not a certified estimate or engineering approval.

This arithmetic is free to run in your browser — no signup, nothing held back.

Open the free calculator

Common questions

What markup should a contractor use?
Work backwards from the margin you need rather than copying a number. Markup = margin / (1 - margin), so a 25% margin needs 33.3% markup and a 40% margin needs 66.7%. Copying someone else's markup copies their cost base, not their profit.
Should overhead be a percentage or a fixed amount?
A percentage of direct cost is the common approach and works when jobs are broadly similar in shape. If you run both very short and very long jobs, a percentage under-recovers on the long ones — an hourly overhead recovery fits better.
How much contingency should I add?
It depends on what you could not inspect. A refurbishment where floors and walls are open is a different risk from a new build on a cleared site. Five percent is a common default for well-understood work, and a default is not an assessment.

Spreadsheets that do this

The formulas above, already built and checked — so you fill in your numbers rather than the arithmetic.

Related guides

Last reviewed 22 August 2026