Quotes & Estimates

How to Estimate a Contractor Job (Step by Step)

Published August 7, 2026·10 min read

A good contractor estimate isn't a gut-feel number — it's built line by line from scope, quantities, labour hours, materials, subs and overhead, with a markup on top. Skip a step and you either scare off the customer with a padded price or eat the difference yourself. Here's the process, in order.

1. Scope the job first

Before you touch a calculator, write down exactly what you're doing and what you're not doing. Walk the site, take photos, and note anything unusual — old wiring, uneven grade, access problems. A vague scope is the number one reason estimates turn into arguments later.

2. Measure and quantify

Turn the scope into quantities: square footage of flooring, linear feet of fence, number of fixtures, cubic yards of concrete. Round up slightly for real-world measuring error, but don't pad quantities to hide a soft price — that's what markup is for.

3. Estimate labour hours and rate

Break the job into tasks (demo, rough-in, install, finish, cleanup) and estimate hours for each based on your own job history, not a generic online chart — every crew works at a different pace. Multiply hours by your fully-loaded labour rate, which is wages plus burden (payroll taxes, workers' comp, benefits) — not just the hourly wage you pay out.

TaskHoursLoaded rateCost
Demo4$55/hr$220
Rough-in10$55/hr$550
Finish6$55/hr$330

4. Price materials and add a waste factor

Price materials at what you'll actually pay, including delivery. Add a waste factor for cuts and mistakes — commonly 10% for flooring or siding, less for fixtures you buy exact quantities of. State your waste assumption on the estimate so it isn't a surprise if you need a top-up order.

5. Get real subcontractor quotes

If part of the job goes to a sub (electrical, HVAC, a specialty install), get an actual quote from them rather than guessing. Add your markup on top of what they charge you — you're still managing the sub, scheduling them and carrying the risk if they're late.

6. Account for overhead

Overhead is everything that keeps the business running that isn't tied to one job — insurance, your truck, software, phone, an office if you have one. Roll it in as a percentage of job cost (many small contractors use something in the 10-15% range as a starting point, then adjust based on their own actual numbers) so every job contributes its fair share instead of overhead quietly eating your profit.

7. Apply markup — and know the difference between markup and margin

Markup and margin are not the same number, and mixing them up is one of the most common ways contractors underprice a job. See the worked math in how to calculate profit on a construction job.

8. Add contingency for unknowns

On renovation or repair work where you can't see everything up front, add a contingency line — a percentage held aside for the "we found rot behind that wall" moment. Being upfront that this line exists (and what triggers using it) heads off disputes later.

9. Don't forget tax

Show applicable sales tax as its own line rather than folding it into the total — it's clearer for the client and easier for you to reconcile at bookkeeping time.

10. Present it like a professional

An itemized, clean, signable document builds more trust than a lower number on a napkin. Once your estimate is solid, turn it into a document the client can actually sign — see how to write a contractor estimate for the full anatomy of that document. JobWorks365's quoting software keeps your labour rates, materials and markup as reusable line items so you're not rebuilding the math from scratch every time.

Try JobWorks365 free for 30 days

No credit card required. Made in Canada. Plans start free.

Related