How to Build a Project Estimate That Wins Bids and Holds Margin

A construction estimate is not a guess with a markup - it's a structured document that prices every scope item, accounts for conditions you can see and ones you can't, and builds in enough margin to survive the inevitable surprises. The difference between contractors who grow and those who stay small is usually the quality of their estimates: detailed enough to be accurate, clear enough for the client, and protected enough to be profitable. Contractors who win the right jobs at the right price share one thing in common - they treat estimating as a discipline, not an afterthought.

This guide walks you through building a complete construction estimate from the first site visit through the final bid number. You'll learn how to structure your scope sections, build line items with real quantities and loaded rates, and layer in overhead and profit so your price holds margin even when the job doesn't go perfectly. At every step you can use the BidFlow Project Estimate Builder to work through your actual numbers - it handles the math so you can focus on the scope.

Anatomy of a Professional Construction Estimate

A professional estimate is organized by scope section, not by the order you happened to think of things. Organized estimates are easier to check, easier to hand to a subcontractor for a scope review, and easier for clients to understand - which directly improves close rates. The standard approach is to follow CSI (Construction Specifications Institute) division logic or a simplified version of it, grouping all related work together before you price any of it.

For a residential remodel or addition in the $75K–$150K range, the following scope sections cover the full project. Use this as your estimate skeleton every time - add or remove sections as the scope requires, but never skip the overhead and profit rows.

Section What it covers Typical cost share
General Conditions Permits, dumpsters, portable toilets, temporary power, project management time, site protection 5–10%
Site Work & Demo Demolition, excavation, grading, site drainage, concrete flatwork 3–8%
Foundation & Concrete Footings, stem walls, slabs, piers 5–15%
Framing & Structural Rough framing, engineered lumber, beams, headers, sheathing 12–18%
Roofing & Exterior Roofing, siding, windows, exterior doors, flashing, waterproofing 8–14%
Mechanical (Plumbing) Rough-in plumbing, supply, drain-waste-vent, fixtures 8–12%
Mechanical (HVAC) Ductwork, equipment, controls, ventilation 6–10%
Electrical Rough-in wiring, panel work, devices, fixtures, low-voltage 6–10%
Insulation Batt, blown-in, spray foam, vapor barriers 2–4%
Drywall & Interior Drywall hang, tape, mud, prime, interior doors, millwork, trim 8–14%
Flooring & Tile Hardwood, tile, LVP, carpet, subfloor prep 6–10%
Cabinetry & Countertops Kitchen and bath cabinets, countertops, hardware 5–15%
Paint & Finishes Interior and exterior paint, stain, specialty coatings 4–7%
Landscaping & Final Site Final grading, seeding, landscaping, concrete flatwork, cleanup 2–5%
Subtotal (Direct Costs) 100%
Contingency Unknown conditions, scope creep buffer (typically 5–10%) Add-on
Overhead Office, insurance, vehicles, admin staff, software (typically 8–15%) Add-on
Profit Net profit after all costs (typically 10–20%) Add-on
Total Bid Price

Every section in the table gets its own set of line items in the estimate. You're not pricing "framing" as a lump number - you're pricing LF of treated plate, sheets of sheathing, hours of framing labor, and so on. That specificity is what keeps your number accurate and defensible when a client pushes back.

From Site Visit to Scope of Work

The estimate only holds if the scope of work is complete. The most common reason contractors lose margin isn't bad math - it's a scope gap: something that was obviously going to be needed, wasn't priced. Getting the scope right starts on the job site, not at the desk.

Before you price a single line item, spend time on site and document:

  • Existing conditions. What's there now, and what's the actual condition - not what the drawings say. Rot, settling, outdated electrical panels, non-code-compliant work, and asbestos are all scope items waiting to surface if you miss them on the walk.
  • Access and logistics. Can a concrete truck get close enough? Is there room for a dumpster? Will interior work require protection of adjacent finished spaces? Every yes costs time and money.
  • What the plans don't say. Drawings specify what to build, not always what to demo, patch, prep, or coordinate. Read what's implied, not just what's drawn.
  • Subcontractor scope boundaries. For work you're subbing out, get their scope in writing before you finalize your number. A sub's verbal estimate that doesn't cover what you thought it covered is your problem, not theirs.
  • Lead times and sequencing constraints. Custom windows, engineered lumber, specialty tile - long lead items affect scheduling and can require early purchase orders. If you have to carry material cost weeks before installation, that's a cash-flow consideration.

After the site visit, write out a scope of work narrative before opening any spreadsheet. This forces you to articulate what you're actually bidding, which surfaces gaps while there's still time to close them. The scope narrative also becomes the foundation of your contract exclusions and inclusions list.

Building the Estimate Line by Line

With scope sections defined and a site visit complete, you build the estimate bottom-up: one line item at a time, one section at a time. The BidFlow Project Estimate Builder uses exactly this structure - each line item takes a description, quantity, unit, and rate, and the tool sums them into a subtotal before applying overhead and profit. Here's how to fill in those fields correctly.

1Quantify materials from drawings and field measurements

Every material line item starts with a take-off: a measured quantity pulled from the plans or field measurements. Don't estimate quantities - measure them. Use the actual square footage of the room for flooring, the actual linear feet of wall for framing, the actual square footage of ceiling for drywall. Rounding up 5–10% for waste is standard; rounding up 30% because you're unsure of the dimensions is not estimating, it's guessing with a safety net.

BidFlow has dedicated calculators that handle the take-off math for specific materials: use the concrete calculator for flatwork and footings, and the drywall calculator for interior wall and ceiling coverage. Once you have the quantity, enter it in the Project Estimate Builder with its unit (SF, LF, CY, EA) and the current material cost per unit.

For our example - a 600 SF master suite addition - the framing materials line might read: 3,200 LF of 2×6 stud at $0.95/LF = $3,040. That number came from a take-off of the wall linear footage and height, not from a guess.

2Price labor by task using a loaded hourly rate

Labor is where estimates go wrong most often, because contractors frequently use an incomplete rate. The hourly rate you enter for a carpenter or laborer needs to be the loaded rate - the true cost of that person on the job, not just their wage.

FormulaLoaded Rate = Base Wage + Payroll Taxes (7.65%) + Workers' Comp + General Liability Share + Benefits

A carpenter earning $30/hr typically costs $42–$48/hr loaded when you include FICA, workers' comp (which runs 5–15% in construction), and a share of GL insurance. Use the Contractor Hourly Rate Calculator to build your loaded rate precisely - then apply that rate consistently across every labor line in the estimate.

FormulaLabor Cost = Estimated Hours × Loaded Hourly Rate

For the master suite framing, if you estimate 80 hours at a loaded rate of $55/hr, the labor line is $4,400. Be honest about the hours - don't compress the estimate by assuming best-case productivity on every task. Use your historical data from past projects, or industry production rates as a cross-check.

3Enter subcontractor costs as single line items per trade

When a scope item is subcontracted - plumbing, electrical, HVAC, roofing - the sub's written quote becomes a single line item in your estimate. Enter their number as the amount directly (quantity 1, rate = sub's total). Do not mark up the sub's labor or materials separately; apply your overhead and profit to the whole estimate including the sub costs at the end.

If you haven't received a sub quote yet, use a budget number based on past projects and note it clearly as an allowance. An allowance is a placeholder you intend to replace with a real quote before the contract is signed. Never present an allowance to a client as a firm price - and never forget to replace it.

4Include general conditions as explicit line items

General conditions are real costs that many contractors forget to price, then wonder why the job lost money. Price each one as a separate line item: permit fee (look up the actual fee schedule), dumpster rental (number of pulls × cost per pull), temporary toilet (weekly rental × duration), project manager time (hours × loaded rate), and final cleanup. These are not overhead - they're direct project costs that should appear in the line item section, not buried in a percentage.

For a 12-week addition project, general conditions might total $4,500–$8,000. That number disappears into thin air if you don't explicitly price it.

5Add a contingency line for unknown conditions

Contingency is not a profit buffer - it's a risk reserve that covers the things you can't see on the site visit. How much depends on the project type and how well-defined the scope is. For a gut-renovation of an older home, 10% of direct costs is appropriate. For new construction with a clean set of plans, 3–5% may be enough.

Enter contingency as an explicit line item - a percentage of subtotal translated to a dollar amount - rather than spreading vague padding across individual line items. Explicit contingency is easier to defend to a client ("this covers conditions inside the walls") and easier to track against actuals during the job.

FormulaContingency Amount = Direct Cost Subtotal × Contingency %

On our 600 SF addition with $85,000 in direct costs, a 7% contingency adds $5,950 to the estimate before overhead and profit.

Protecting Your Margin: Overhead, and Profit

Once every scope section has line items and contingency is included, the subtotal represents the true cost of building the project. What remains is applying overhead and profit - and doing it in the right order. The BidFlow Project Estimate Builder applies these exactly as described below: overhead is calculated on the direct cost subtotal, then profit is applied to the overhead-inclusive number.

6Apply overhead as a percentage of direct costs

Overhead is every cost you carry that doesn't belong to a specific project: office rent, admin salaries, your truck payment, accounting software, business insurance not already in loaded labor rates, and your own management time when it's not directly billable. Most contractors carry 8–15% overhead as a share of revenue.

Use the Job Costing Calculator and your historical financials to determine your actual overhead rate. If you've never calculated it, divide your last 12 months of non-project operating expenses by your total revenue. That's your overhead rate. Apply it to every estimate.

FormulaOverhead Amount = (Direct Costs + Contingency) × Overhead %

On $90,950 in direct costs plus contingency at a 12% overhead rate, overhead adds $10,914.

7Apply profit on top of the overhead-inclusive total

Profit is applied after overhead is added, not on direct costs alone. This is the correct sequence because your profit should compensate you for the risk of carrying overhead - you want margin on the full cost structure, not just the field work.

FormulaBid Price = (Direct Costs + Contingency + Overhead) × (1 + Profit %)

This is exactly what the BidFlow Project Estimate Builder computes: it adds overhead to the subtotal, then applies your profit percentage to that combined number to reach the final bid price.

On our example: ($90,950 direct costs + contingency) + $10,914 overhead = $101,864. At 15% profit: $101,864 × 1.15 = $117,144 total bid price. You can cross-check the profit margin using the Profit Margin Calculator - enter the bid price and total costs to confirm your actual net margin percentage.

What profit percentage should you target? Use the Bid Price Calculator to work backward from your target margin and arrive at a price, or use it to test whether your current pricing actually delivers the return you think it does. Many contractors discover their effective profit margin is 3–5%, not the 15% they assumed, once overhead is properly accounted for.

Presenting the Estimate to Win the Job

The math determines your floor. The presentation determines whether you close at your price or get beaten down - or beaten out.

A well-presented estimate does three things: it demonstrates competence (you priced everything, nothing is vague), it reduces the client's perceived risk (you've done this before, you know what you're doing), and it makes comparison to a lower competitor difficult (because your estimate is more detailed, it's harder to line up against a one-page lump-sum bid).

Show line items at the section level, not the task level. Clients don't need to see 47 line items - they need to see that you priced framing, electrical, and drywall as separate scopes with real numbers attached. Present a section-level summary, and keep the full detail in your own records for job cost tracking.

Separate inclusions and exclusions explicitly. A short "What's included" and "What's not included" section eliminates scope disputes before they start. If you're not painting the ceiling in the hallway, say so. If permit fees are included, say so. This protects you and helps the client understand what they're buying.

Tie the estimate to a clear payment schedule. Milestone-based payments linked to the construction schedule reduce your cash flow exposure and signal to the client that this is a professionally managed project. A 10% deposit, progress payments at framing complete, rough MEP complete, and drywall complete, with 5–10% held until final walkthrough, is a standard structure for a project in this range.

Don't cut your price to win - explain your value to close. If a prospect wants you to match a lower number, the right answer is almost never to reduce your margin. The right answer is to walk through your estimate structure and help them understand what's in your price that isn't in the other one. Contractors who compete on price alone don't survive long enough to grow. Contractors who compete on certainty - "here's exactly what you're getting, here's my track record, and here's why my number is real" - win the clients worth having.

Once you've built the estimate in the Project Estimate Builder, you have all the inputs for a professional bid package: the scope breakdown, the line item totals, and the final price with overhead and profit applied correctly. That's the document that wins jobs and holds margin - not a ballpark with a guess attached.

Ready to stop losing project details?

Keep every estimate, note, and approval in one timeline your whole crew can trust. Free to start.

Start Your Free Project

Put these numbers to work

Construction Project Estimate Builder

Free. 30 seconds. No account needed.

Open calculator

By BidFlow Editorial · Last verified