EstimatingJune 11, 202612 min read

How to Bid on Construction Jobs (+ Free Estimate Template)

How profitable contractors bid construction jobs — the four cost categories every bid needs, the markup-vs-margin math that trips everyone up, and a copy-ready estimate template.

T

Tradesmin Team

Tradesmin

Bidding is where construction businesses are quietly won and lost. Win every bid and you’re probably pricing too low — you’ll be busy and broke. Win none and the phone stops ringing. The goal isn’t to win every job; it’s to win the right jobs at a price that actually makes money after everything is paid. Most shops never learn the difference because they never break a bid down far enough to see where the margin went.

This guide walks through how to bid construction jobs the way profitable contractors do it: the anatomy of a real bid, how to estimate each piece without guessing, the markup math that trips everyone up, and the follow-through that turns a number into a signed job. There’s a simple estimate template at the end you can copy.

Estimate, bid, quote: know the difference

These words get used interchangeably and shouldn’t be. An estimate is your internal calculation of what the job will cost you to do — labor, materials, equipment, overhead. A bid or quote is the price you present to the customer, which is your estimated cost plus your markup. The estimate is private and honest; the bid is what they sign. Confuse the two and you’ll either show the customer your costs or forget to add your profit. Get the estimate right first; the bid is just the estimate plus margin.

The anatomy of a profitable bid

Every solid bid is built from four cost categories plus markup. Skip any one and the job loses money in a way you won’t see until it’s over.

1. Materials

List every material the job needs, with quantities and current prices — not last year’s prices. Then add a waste factor (typically 5–10%, higher for cut-heavy trades like tile or trim) because you never use exactly what you measured. Pull real numbers from your supplier, and if material prices have been volatile, note how long your quote is valid so a price spike between bid and start doesn’t eat the job.

2. Labor

Labor is where most bids go wrong, because shops estimate the wage but forget the loaded cost. Your true labor cost includes payroll taxes, workers’ comp, insurance, and benefits — typically 1.2 to 1.4 times the base wage. A $30/hour worker costs you $36–$42 once it’s all in. Estimate the hours each task will take, multiply by the loaded rate, and be honest about how long the work actually takes — including setup, cleanup, and travel. The best input here is your own history: if you track time per job, you already know how long this kind of work takes because you’ve measured it. (That’s the payoff of tracking employee hours per job — your estimates stop being guesses.)

3. Equipment and subcontractors

Rentals, specialized tools, dump fees, permits, and any work you’re subbing out. Get firm numbers from your subs in writing before you commit to a price — a verbal “about two grand” that comes in at three thousand comes straight out of your profit.

4. Overhead

This is the silent margin-killer. Your truck, fuel, office, software, insurance, phone, and your own time running the business all cost money whether or not any single job exists. If you don’t fold a share of overhead into every bid, your “profit” is really just unallocated expenses that bankrupt you slowly. Calculate your annual overhead, divide by your billable hours or jobs, and bake that number into every estimate.

The markup math everyone gets wrong

Here’s the mistake that costs contractors more money than any other: confusing markup with margin. They are not the same number, and treating them as the same quietly underprices every job.

Markup is the percentage you add to your cost. Margin is the percentage of the final price that is profit. A 20% markup does not give you a 20% margin:

  • Cost: $1,000
  • Add 20% markup ($200) → Price: $1,200
  • Profit as a share of price: $200 / $1,200 = 16.7% margin

To actually net a given margin, you mark up by more than the margin number. A few to memorize: for a 20% margin, mark up by 25%; for a 25% margin, mark up by 33%; for a 30% margin, mark up by ~43%. The formula is: markup % = margin % ÷ (1 − margin %). Price off margin, not off a markup number you guessed at — it’s the difference between a job that clears what you intended and one that quietly comes up short.

How to estimate without guessing

The contractors who bid accurately aren’t better guessers — they have better records. Three habits make estimates precise instead of hopeful:

  • Use historical job data. If you’ve tracked time and costs on past jobs, you know what similar work actually took. Last year’s real numbers beat this year’s optimism every time.
  • Break the job into tasks. Estimating one big number for a whole job hides the errors. Break it into phases — demo, rough-in, finish, cleanup — and estimate each. Small estimates are more accurate and easier to check.
  • Walk the site. Bidding off a photo or a phone description is how you discover the surprise at the worst possible moment. Whenever the job is big enough to matter, walk it before you price it.

A simple construction estimate template

Copy this structure for your next bid. It separates your internal cost breakdown from the customer-facing total, which keeps your margin private and your math honest.

Internal estimate (private):

  • Materials (itemized, with quantities + waste factor): $______
  • Labor (hours × loaded rate, by task): $______
  • Equipment / rentals / permits: $______
  • Subcontractors (firm quotes): $______
  • Overhead allocation: $______
  • Total cost: $______
  • Markup to hit target margin (cost ÷ (1 − margin%)): $______
  • Bid price: $______

Customer-facing quote:

  • Company name, license #, contact info
  • Customer name and job address
  • Scope of work (clear, specific, with exclusions)
  • Price — lump sum or by phase
  • Payment schedule (deposit, progress, final)
  • Quote valid-until date
  • What’s not included (prevents scope disputes)
  • Signature lines for both parties

That “what’s not included” line prevents more disputes than anything else on the page. Spell out the assumptions — “price assumes existing electrical is to code,” “excludes permit fees,” “additional rot discovered during demo billed at $X/hour” — so a surprise doesn’t become an argument about who eats it. The same clarity carries into the invoice; see our construction invoice template and invoicing best practices.

Presenting the bid so it wins

The lowest number doesn’t always win, and chasing “lowest” is a race to the bottom you don’t want to win. How you present the bid matters as much as the number:

  • Be specific about scope. A detailed bid that shows you understand the job beats a cheaper one-line number. Specificity signals competence and justifies the price.
  • Respond fast. The contractor who gets a professional bid back in 24 hours often wins over a cheaper one that takes a week. Speed signals that you’ll show up the same way on the job.
  • Offer options when it fits. Good/better/best tiers let the customer buy up instead of forcing a yes/no, and they anchor your recommended option in the middle.
  • Don’t apologize for the price. If you’ve done the math, the number is what the job costs to do right. Present it with confidence; discounting on the spot tells the customer your first number was inflated.

Follow up — most bids die in silence

A bid sent is not a bid closed. Most contractors send the number and wait, then assume a non-response is a no. Often the customer just got busy. Follow up within a few days with a simple check-in: “Wanted to make sure you got the estimate — happy to walk through any of it or adjust the scope.” That single message wins jobs that would otherwise have gone cold. Track which bids are out, which closed, and which you lost — and ask the ones you lost why, because the pattern in those answers tells you whether you’re priced wrong or selling wrong.

Where Tradesmin fits

Accurate bidding runs on good records, and that’s where software earns its keep. A few pieces of Tradesmin feed directly into better bids:

  • Estimates let you build itemized quotes with materials, labor, and markup, then send a clean customer-facing version.
  • Per-job time tracking gives you the historical hours that make your next estimate accurate instead of hopeful.
  • Job management ties actual costs back to each job, so you can compare what you bid against what it really took — and bid the next one better.
  • Invoicing turns the won bid into an invoice without re-keying the line items.

The flywheel is simple: bid a job, track what it actually costs, and feed that reality into the next bid. Do that for a year and your estimates stop being guesses.

The bottom line

Bidding well isn’t about being the cheapest or the luckiest. It’s about knowing your true costs — including loaded labor and overhead — pricing off margin instead of a guessed markup, presenting a specific bid fast, and following up. Get those right and you’ll win the right jobs at prices that actually pay. The contractors who do this consistently aren’t better guessers. They just keep better records and do the math every time.

Try Tradesmin free

Tradesmin helps trade businesses bid more accurately by tying estimates to real job costs and time data. Start a 14-day free trial — no credit card required. Compare plans on our pricing page.

TagsEstimatingBiddingJob Costing

Ready to build with
intelligence?

Join the growing number of trade businesses saving time, impressing customers, and getting paid faster.