How to Estimate a Construction Job: Takeoff, Overhead, Then Price
You have a set of plans on the truck seat, a client who wants a number by Friday, and a competitor who will probably come in lower. The temptation at that point is to price the job the way jobs often get priced: add up what you think it will cost, add a percentage that feels about right, and send it.
That method is not merely rough. It is wrong in three specific places, and the three compound. Here is a complete bid built the other way — a kitchen and hall bath remodel, taken off line by line, with every figure shown — so you can see exactly where the money goes and, more to the point, where it silently doesn’t.
Every number on this page is worked from one consistent set of assumptions, stated as assumptions. A four-person crew, a $28 base field wage, a 32% labour burden, 5% material waste, 7.25% sales tax, a 28% target margin. Yours will differ. The structure will not.
Step 1: Take Off the Work, Not the Job
An estimate that starts at the job level — “kitchens like this run about ninety” — cannot be checked, cannot be defended to a client, and cannot be compared against actual costs when the job is over. A takeoff is a list of quantities. Each line needs six things and nothing else:
| Field | Why it has to be its own column |
|---|---|
| Cost code | So the estimate and the job costs can be compared later, code by code |
| Description | What a subcontractor or supplier would recognise |
| Type | Material, Labour, Subcontractor, Equipment or Other — each is priced differently |
| Quantity and unit | The thing you actually measured |
| Unit cost | What one of them costs you |
| Labour hours | For labour lines only — hours, never dollars |
That last row is the one most estimates get wrong. Labour goes into a takeoff as hours, not as money. Hours are what you measured on the last three jobs, hours are what you can argue about honestly, and hours are what the overhead calculation later needs. The moment you write “demo: $3,500” you have thrown away the only figure that lets you check the estimate against reality.
Here is the full takeoff for the worked bid. Seventeen lines, 304 labour hours:
| Cost code | Description | Type | Qty | Unit cost | Hrs | Base cost |
|---|---|---|---|---|---|---|
| 01 General Conditions | Dumpster, portable toilet, floor protection | Other | 1 LS | $2,150.00 | $2,150.00 | |
| 02 Site and Demolition | Demo kitchen and hall bath to studs | Labour | 96 | $3,548.16 | ||
| 02 Site and Demolition | Debris haul-off | Equipment | 3 load | $385.00 | $1,155.00 | |
| 06 Rough Carpentry | Framing lumber, headers and blocking | Material | 1 LS | $2,850.00 | $2,850.00 | |
| 06 Rough Carpentry | Framing labour | Labour | 40 | $1,478.40 | ||
| 15 Plumbing | Rough and trim, two rooms | Subcontractor | 1 LS | $9,800.00 | $9,800.00 | |
| 16 Electrical | Rough, trim and panel work | Subcontractor | 1 LS | $7,600.00 | $7,600.00 | |
| 09 Drywall | Hang, tape and finish | Subcontractor | 1 LS | $5,200.00 | $5,200.00 | |
| 11 Cabinets and Millwork | Semi-custom cabinetry package | Material | 1 LS | $18,400.00 | $18,400.00 | |
| 11 Cabinets and Millwork | Cabinet set and adjust | Labour | 64 | $2,365.44 | ||
| 12 Countertops | Quartz, templated and installed | Subcontractor | 1 LS | $6,450.00 | $6,450.00 | |
| 22 Flooring and Tile | Porcelain tile, floor and shower surround | Material | 620 sq ft | $6.35 | $3,937.00 | |
| 22 Flooring and Tile | Tile setting and grout | Subcontractor | 1 LS | $7,450.00 | $7,450.00 | |
| 09 Finishes | Paint, primer and sundries | Material | 1 LS | $1,180.00 | $1,180.00 | |
| 09 Finishes | Painting labour | Labour | 56 | $2,069.76 | ||
| 10 Specialties | Fixtures, hardware and accessories | Material | 1 LS | $4,300.00 | $4,300.00 | |
| 01 General Conditions | Project management and punch list | Labour | 48 | $1,774.08 |
Two things in that table are already doing work that a back-of-envelope number never does.
The labour lines are priced at $36.96 an hour, not $28. That is the base wage plus a 32% burden — payroll tax, workers’ comp, liability, any benefits. The burden is not overhead and it is not optional; it is part of what an hour of that person costs you, and it belongs on the line. Ninety-six hours of demo is $3,548.16, not $2,688. Across all 304 hours of this bid, the burden alone is $2,723.84.
The 48 hours of project management are on the sheet. Your time walking the job, ordering the cabinets, meeting the inspector and chasing the punch list is labour. It is easy to leave off, because it does not look like work you can point at. Leave it off this bid and you have given away $1,774.08 of cost plus the overhead those hours carry — and then priced the job as though it were free.
Step 2: Add Waste and Sales Tax — to Material Lines Only
A supplier quote is not a material cost. It is a material cost before the offcuts, the broken tile, the box you open and half use, and the tax. Both uplifts apply to material lines and to nothing else: you do not pay sales tax on your own crew’s hours, and a subcontractor’s lump sum already contains their waste and their tax.
| Material line | Base | Waste 5% | Tax 7.25% | Line total |
|---|---|---|---|---|
| Framing lumber, headers and blocking | $2,850.00 | $142.50 | $216.96 | $3,209.46 |
| Semi-custom cabinetry package | $18,400.00 | $920.00 | $1,400.70 | $20,720.70 |
| Porcelain tile (620 sq ft @ $6.35) | $3,937.00 | $196.85 | $299.70 | $4,433.55 |
| Paint, primer and sundries | $1,180.00 | $59.00 | $89.83 | $1,328.83 |
| Fixtures, hardware and accessories | $4,300.00 | $215.00 | $327.34 | $4,842.34 |
| Materials total | $30,667.00 | $1,533.35 | $2,334.53 | $34,534.88 |
Note the order: tax is charged on the material plus its waste, because you buy the waste. That is $3,867.88 on this bid — more than the entire paint and fixtures package — and it is invisible in every estimate built from supplier quotes alone.
Waste percentages are a judgement call, not a constant. Long-run lumber and dimensional stock sit at the low end; tile that has to be cut into a pattern, and anything sold by the box, sits at the high end. Three to seven per cent is a sensible working band, and 5% is used throughout this page because it is the middle of it — not because it is a rule. Set yours from your own offcut history.
With waste and tax applied, the seventeen lines total $85,575.72. That is the job’s direct cost: everything that exists only because this job exists.
Step 3: Add Overhead as a Rate Per Hour, Not a Percentage
Direct cost is not what the job costs you. Your rent, your insurance, your trucks, your bookkeeper and your phone bill arrive whether or not anyone is on a job, and they have to be paid out of the jobs you do run. The question is how much of that this particular bid should carry.
The percentage answer — “add 10% for overhead” — is easy to say and wrong in a way that is easy to demonstrate. A percentage of cost charges overhead in proportion to money, but overhead is consumed in proportion to time. A $40,000 job that is mostly a cabinet package and a countertop sub occupies a four-person crew for a few days. A $40,000 job that is 900 hours of that same crew occupies them for the better part of six weeks. Charging both the same $4,000 over-prices the first and under-prices the second, and over a year you win the wrong ones.
So work it out per billable field hour instead:
| Annual overhead | |
|---|---|
| Office rent and utilities | $14,400 |
| General liability and umbrella insurance | $9,800 |
| Vehicles: payments, fuel and maintenance | $18,600 |
| Tools and small equipment not billed to jobs | $6,200 |
| Software: estimating, accounting, scheduling | $3,480 |
| Office and admin salary | $32,000 |
| Accounting and legal | $5,400 |
| Marketing, website and lead generation | $4,800 |
| Licences, bonding and association dues | $3,900 |
| Phone and internet | $2,640 |
| Total annual overhead | $101,220 |
Then the hours that have to carry it:
| Field crew | 4 people |
| Paid hours per person per week | 40 |
| Weeks worked per year (52 less holidays, vacation, dead weeks) | 48 |
| Gross paid field hours | 7,680 |
| Billable utilisation | 78% |
| Billable field hours per year | 5,990.4 |
| Overhead recovery per billable hour | $16.90 |
Utilisation is the number to be honest about. Travel, shop time, weather days, warranty callbacks and rework are paid and not billable. Sixty-five to eighty-five per cent is a plausible band to start from; 78% is used here. Measure yours from payroll rather than adopting a figure. Whatever you choose, it is the denominator of everything that follows, so guessing high is the same as pricing low.
Two numbers fall out of this. The first is the overhead each billable hour must carry: $16.90. The second is what an hour of field time actually costs your company:
Burdened wage $36.96 + overhead recovery $16.90 = $53.86 per field hour
That is break-even. Bill an hour below $53.86 and you are paying for the privilege of doing the work, no matter how busy the calendar looks.
This bid holds 304 labour hours, so it carries 304 × $16.90 = $5,137.60 of overhead. Added once, against the bid’s hours — not smeared across every line, where it would also land on the cabinet package and the countertop sub, neither of which consumes any of your office.
| Direct cost (takeoff) | $85,575.72 |
| Overhead recovery (304 hrs × $16.90) | $5,137.60 |
| Total cost | $90,713.32 |
Step 4: Price From the Margin — This Is Where the Money Is
You want to keep 28% of this job. The instinct is to add 28% to cost. The instinct is wrong, and it is wrong by nearly ten thousand dollars on this one bid.
Margin is measured against the price. Markup is measured against the cost. Adding 28% to a cost gives you a price of which the profit is only 21.88%. To keep 28%, divide by what is left over after the margin:
Price = Total cost ÷ (1 − margin) = $90,713.32 ÷ 0.72 = $125,990.72
| Solve for 28% margin | Add 28% markup | |
|---|---|---|
| Total cost | $90,713.32 | $90,713.32 |
| Price | $125,990.72 | $116,113.05 |
| Gross profit | $35,277.40 | $25,399.73 |
| Margin actually kept | 28.00% | 21.88% |
| Difference on this one job | −$9,877.67 |
The markup that corresponds to a 28% margin is 38.89%. Here is the conversion for the range most residential and light-commercial work sits in — it is worth pinning inside the truck:
| Margin you want to keep | Markup you must add | Multiply cost by | On $10,000 of cost you bill |
|---|---|---|---|
| 10% | 11.11% | 1.1111 | $11,111.11 |
| 15% | 17.65% | 1.1765 | $11,764.71 |
| 20% | 25.00% | 1.2500 | $12,500.00 |
| 25% | 33.33% | 1.3333 | $13,333.33 |
| 28% | 38.89% | 1.3889 | $13,888.89 |
| 30% | 42.86% | 1.4286 | $14,285.71 |
| 35% | 53.85% | 1.5385 | $15,384.62 |
| 40% | 66.67% | 1.6667 | $16,666.67 |
| 45% | 81.82% | 1.8182 | $18,181.82 |
Going the other way: add 20% to a $10,000 cost and you bill $12,000. You kept $2,000 out of $12,000, which is 16.7%, not 20%. Every contractor who has ever said “I run on twenty points” and wondered where the year went has made this exact substitution.
The finished bid:
| Direct cost | $85,575.72 |
| Overhead recovery | $5,137.60 |
| Total cost | $90,713.32 |
| Bid price at 28% margin | $125,990.72 |
| Gross profit | $35,277.40 |
| Margin | 28.00% |
| Implied markup | 38.89% |
The Five Mistakes, Priced
Each of these is worked against the same bid, so the figures are directly comparable.
1. Adding markup where you meant margin. Costs $9,877.67 on this job. The most expensive arithmetic in the trade, and the easiest to fix.
2. Leaving overhead out entirely. Price the direct cost at a 28% margin and you bid $118,855.17. Your real cost is still $90,713.32, so you kept 23.68% — $7,135.55 short, on a job you will believe went to plan.
3. Pricing labour at the base wage. At $28 instead of $36.96, the 304 hours come in $2,723.84 light, and that error then flows through the margin division: about $3,783 off the price.
4. Quoting materials from the supplier’s number. Skip waste and tax and you drop $3,867.88 of cost, which at a 28% margin is $5,372.06 of price.
5. Guessing utilisation high. Assume 85% of paid hours are billable when the truth is 70% and you bid at $15.51 an hour of recovery instead of $18.83. On this one bid that is $1,009.28. Applied across a year, the $15.51 rate charged over the 5,376 hours you actually billed returns $83,381.76 against $101,220 of overhead — $17,838.24 that never comes back in, with nothing on any individual job looking wrong.
After You Win It: The Estimate Is Now a Budget
The bid stops being a sales document the day it is signed and becomes the yardstick everything is measured against. Three habits keep it honest.
Code the actual costs the same way you coded the estimate. Every invoice, every hour, every sub payment posts against a job and a cost code. That is what makes “we lost money on tile” a sentence you can say in October rather than a suspicion you have in February.
Keep committed apart from incurred. A signed subcontract for $7,450 that has not been invoiced yet is not a cost you have paid — but it is absolutely a cost you have. A job that looks under budget because the sub has not billed is a false positive that is very easy to miss.
Measure profit at completion, not today. Percentage complete, cost to date, cost to complete, forecast final cost. A job that is 40% billed and 60% spent is not “doing fine so far”; it is telling you now what it will do at the end, while there is still something you can do about it. In the workbook below, that comparison — bid margin against forecast margin, with the slip in percentage points — is the number the dashboard ranks every live job by.
Related Reading
- How much overhead to add to a construction bid — the per-hour recovery rate worked end to end, with utilisation and crew-size sensitivity tables.
- Fixed price vs time and materials — the same $125,990.72 job billed both ways, plus what happens under a 10% overrun.
- How to bid a bathroom remodel — a complete 18-line takeoff for a single hall bath, and why price per square foot is useless here.
- How to set up a draw schedule with retainage — six draws against this contract, the $12,599.07 of retainage, and how to get it released.
Featured on ReadySheetGo
Construction Estimating, Bid & Job Costing Spreadsheet — $19.99
Fourteen linked tabs and 10,450 working formulas, with a sample contractor already loaded — bids won and lost, live jobs, and real costs posted against them — so you can see it running before you type anything.
Settings holds your labour burden, target margin, retainage, sales tax, waste and average field wage in six boxes, and changing one of them re-prices every open bid in the file. Overhead and Burden does the calculation on this page: annual overhead over billable field hours, giving your recovery per hour and your fully loaded cost per field hour, with the markup-versus-margin table printed underneath it. Bid Estimator takes a 260-line takeoff where material lines pick up waste and sales tax on their own and labour lines price themselves at your burdened rate. Bids and Win Loss sums each bid’s takeoff, adds overhead once against that bid’s labour hours, solves the price from your margin, and reports the true margin and the implied markup side by side — along with win rate and the reason you lost the ones you lost.
Then the job side: Jobs measures profit at completion with incurred, committed, cost to complete and the margin slip against what you bid; Job Costs codes every real cost and keeps committed apart from incurred; Change Orders raises the contract only when the change is approved; Draw Schedule holds retainage per draw and ages invoices in days; Subcontractors tracks contract value, W-9 on file and insurance expiry; plus Materials, a 26-week Schedule bar chart, and a Dashboard ranking every live job by the margin it will really deliver.
Thirty-two integrity checks look for the things that are always wrong: a cost coded to a job that does not exist, a bid with no takeoff behind it, a won bid nobody opened as a job, retainage on a paid draw nobody released. Each says OK or REVIEW and names the tab to open.
Works in Excel and Google Sheets. No macros, no add-ons.
Get the Construction Estimating, Bid & Job Costing Spreadsheet →
Frequently Asked Questions
How do you estimate a construction job step by step?
Five steps, in this order. One, take off the work line by line — quantity, unit, unit cost, and labour in hours rather than dollars. Two, uplift material lines for waste and add sales tax to them, because both are real money and neither is in the supplier quote. Three, price labour lines at your burdened wage, not your base wage. Four, add company overhead once, as a rate per billable field hour multiplied by the bid's total labour hours. Five, divide that total cost by one minus your target margin to get the price. The worked bid on this page runs $85,575.72 of takeoff plus $5,137.60 of overhead, which is $90,713.32 of cost, priced at $125,990.72 for a 28% margin.
What is the difference between markup and margin in construction?
Margin is profit as a share of the price. Markup is profit as a share of the cost. They are never the same number, and confusing them costs $9,877.67 on the single bid worked below. To keep a 28% margin you must add a 38.89% markup, not 28%. On the $90,713.32 bid on this page, adding 28% instead of solving for 28% prices the job at $116,113.05, keeps 21.88%, and hands back $9,877.67 of profit on one job.
How much overhead should I add to a construction bid?
Not a flat percentage — a rate per billable field hour, multiplied by the hours in that bid. Total your annual overhead, divide by the field hours that are actually billable in a year, and you get the recovery each hour must carry. The example here runs $101,220 of overhead across 5,990.4 billable hours, which is $16.90 an hour. The 304-hour bid therefore carries $5,137.60. A percentage of cost gets this wrong in both directions: it over-charges material-heavy jobs and under-charges labour-heavy ones.
Should I include sales tax and waste in a construction estimate?
Yes, on material lines, and separately so you can see them. Waste covers offcuts, breakage and the extra box; 3 to 7 per cent is a sensible working band depending on the material. Sales tax then applies to the material plus its waste. On the worked bid, 5% waste and 7.25% tax add $1,533.35 and $2,334.53 to $30,667 of materials. Quote from supplier prices alone and you drop $3,867.88 of cost, which once the margin is applied is $5,372.06 of price and $5,372.05 of profit.