How to Bid a Construction Job (Without Underbidding)
How to bid a construction job without underbidding: complete the takeoff, price labor honestly, add overhead, apply margin not markup, and carry a contingency.
June 19, 2026 · 6 min read
Winning a job at a price that loses money is worse than not winning it at all. Underbidding is rarely about being too generous on purpose, it is about missed quantities, forgotten costs and markup math that quietly fails to cover overhead. Here is how to put together a bid that wins work you can actually make money on.
Why bids come in too low
- Missed scope. An item that is not on the takeoff is not in the price, but you still have to build it.
- Underestimated labor. Material prices are easy to look up; labor hours are where bids go wrong. Optimistic crew estimates are the most common culprit.
- Forgotten overhead. Bid direct cost plus profit and your overhead comes out of profit.
- Markup mistaken for margin. Adding 15% markup does not give a 15% margin, it gives about 13%.
- No contingency. Every job has surprises; a bid with zero slack assumes a perfect job.
Step 1: A complete takeoff
Every accurate bid starts with a complete quantity takeoff. If the quantities are wrong, no amount of careful pricing saves you. Measure every trade, reconcile counts against the schedules, and add realistic waste factors. (See how to do a construction takeoff.)
Step 2: Price direct costs honestly
Attach material and labor costs to each quantity. Loaded labor, wage plus payroll taxes, insurance and benefits, is typically 1.25–1.5× the base wage, so a $28/hour carpenter costs you $35–$42. Price labor by realistic production rates, not best-case ones. Total materials, labor and equipment and you have your direct cost.
Step 3: Add overhead
Overhead is the cost of running the business spread across your jobs, office, insurance, software, admin, a share of your vehicles. Figure your annual overhead as a percentage of the volume you do and add it to every bid. If overhead runs 10% of revenue, build it in; do not hope profit covers it.
Step 4: Apply margin, not just markup
This is the step that quietly sinks bids. Markup is figured on cost; margin is figured on price. They are not the same number.
The formula that matters To hit a target margin, price = cost ÷ (1 − margin). For a 20% margin on a $10,000 cost: 10,000 ÷ (1 − 0.20) = $12,500. Marking cost up by 20% instead gives 10,000 × 1.20 = $12,000, a margin of only 16.7%. Same intent, $500 difference.
Start freeThe full breakdown is in markup vs. margin in construction estimating.
Step 5: Carry a contingency
A contingency is deliberate slack for the unknowns, unexpected conditions, price swings, a detail the plans left vague. Typically 3–10% depending on how well-defined the job is. A renovation with hidden conditions warrants more than new construction off complete plans. Contingency is not padding; it is the difference between a small surprise and a loss.
Step 6: Sanity-check before you send
Step back and look at the whole number. Does the price per square foot land where similar jobs do? Is any single line suspiciously low? Did you carry every allowance and exclusion? A two-minute reality check catches the transposed quantity that would have cost you thousands.
Know when to walk away
Not every job is worth winning. If the only way to be competitive is to cut your margin below what covers your risk, the right bid is the one you do not submit. A disciplined bid you lose is better than a low bid you win and regret.
JobPlumb carries your takeoff quantities straight into a line-item estimate, applies your assemblies and margin, and turns it into a proposal the client accepts online, so the number you bid is the number you can defend. Start free, or grab a free estimate template to practice the workflow first.