A client asks what a job will cost. You do not know exactly, because nobody has opened the wall, seen the codebase, or picked the tile yet. That is what an estimate is for: a professional, documented best guess for work with uncertain scope.
The trouble starts when an estimate is written like a promise. The client hears $3,000, the job lands at $4,100, and now you are negotiating from a position of "you said." A good estimate prevents that conversation by stating the number, the assumptions behind it, and what could move it.
The quick version
To write an estimate for a job:
- Label it "Estimate" with a unique number, the date, your business details, and the client's details.
- Describe the work in specific line items: labor, materials, and any subcontracted parts, each with an estimated cost.
- State whether the total is a single figure or a range, and list the assumptions it depends on.
- Use allowances for items that cannot be priced yet (like "flooring allowance: $1,200") and a contingency line for known risk.
- Add an expiry date (commonly 14 to 30 days) and a sentence on how scope changes will be handled.
- Note that the final invoice may differ, and explain how you will communicate variances before they land.
If the scope is fixed and you can commit to a price, write a quote instead; that case is covered in how to write a quote.
Estimate vs quote: pick the right document first
The difference is commitment. A quote says "this is the price, and I will honor it." An estimate says "based on what I know today, expect roughly this." The full document lineup is compared in invoice vs receipt vs quote; the practical test is simple:
| Situation | Right document |
|---|---|
| Scope fully defined, you control all costs | Quote (firm price) |
| Scope mostly defined, a few unknowns | Estimate with assumptions |
| Major unknowns (hidden conditions, unpicked materials) | Estimate with a range and allowances |
| Client just wants a ballpark before deciding | Verbal range, then a written estimate if they proceed |
Writing a quote when you should write an estimate is how you end up eating a $900 surprise. Say which one you are giving, in the document title, every time.
Single number, range, or range plus assumptions
There are three honest ways to present an uncertain total.
A single number with assumptions. "Estimated total: $3,400, assuming the subfloor is sound and existing wiring is up to code." This works when the unknowns are specific. The assumptions do the heavy lifting: if the subfloor is rotten, the estimate no longer applies and everyone can see why.
A range. "Estimated total: $3,000 to $4,200." Honest, but the client hears the bottom number and budgets for it, so explain what drives each end. "The low end assumes we reuse the existing fixtures; the high end covers full replacement."
A range plus itemized assumptions. For bigger jobs, do both. Example for a bathroom remodel:
- Labor (estimated 40 to 55 hours at $85/hr): $3,400 to $4,675
- Plumbing rough-in (assumes existing drain locations kept): $650
- Tile materials allowance: $900
- Contingency (10% of labor and materials): $495
- Estimated total: $5,445 to $6,720
That breakdown lets the client understand the number instead of just receiving it, and each line becomes a checkpoint when you reconcile the final invoice.
Allowances: pricing the unpriceable
An allowance is a placeholder budget for something that cannot be priced yet, usually because the client has not chosen it: fixtures, tile, countertops, stock photography licenses.
Write an allowance as its own labeled line: "Light fixture allowance: $400 (final cost per client selection)." Then state the reconciliation rule in one sentence: if the client's selection costs more than the allowance, the difference is added to the final invoice; if it costs less, the difference is deducted. That sentence prevents the most common allowance argument: the client assuming it was a cap rather than a placeholder.
Set allowances at realistic levels, not the cheapest possible option, or every job will "run over" by design, and get selections confirmed in writing before you purchase.
Contingency lines: when they are fair and when they are padding
A contingency is a stated buffer for known categories of risk: "Contingency for concealed conditions behind existing drywall: 10% of labor, $340." It is fair when three things are true:
- The risk is real and named. Old houses, undocumented legacy code, a venue you have never worked in. "General contingency" with no stated reason reads as padding.
- It is visible. A disclosed contingency line builds trust; the same amount silently baked into every other line erodes it.
- There is a rule for the unused portion. The cleanest practice: if the contingency is not needed, it does not appear on the final invoice. Saying so up front ("billed only if used, with documentation") turns the line from a fudge factor into a professional risk disclosure.
Contingencies cover risk inside the agreed scope, not the client adding a second bathroom; that is a scope change.
Document what could move the price
The most valuable section of an estimate is often a short list titled "What could change this estimate." Three to six bullets, plain English:
- Concealed damage or conditions not visible at inspection
- Material price changes between estimate and purchase date
- Client selections exceeding stated allowances
- Changes to the scope described above
- Permit or inspection requirements beyond those listed
When the price moves, you are not inventing a justification; you are pointing at a bullet the client already read and accepted.
Add an expiry date to the whole document: "This estimate is valid for 30 days." Material costs drift and your schedule fills; last spring's estimate should not be enforceable in the fall.
From estimate to final invoice: explaining the variance
When the work ends, the final invoice takes over. This handoff is where "estimated $5,500, invoiced $6,150" either feels legitimate or like a bait-and-switch.
Structure the final invoice so it maps to the estimate: same line-item names, same order. Then reconcile the differences explicitly, either in the line items or a short note:
- Tile allowance: $900 estimated, $1,180 actual (client selection, approved 6/12)
- Contingency: $495 estimated, $270 used (subfloor repair, photos attached)
- Labor: 48 hours actual, within the 40 to 55 hour estimate
Never let the client discover a variance for the first time on the invoice. The rule that keeps relationships intact: communicate any change when it happens, in writing, before the work that causes it. A two-line email ("the subfloor under the tub is rotted; repair adds about $270 from contingency, photos attached, OK to proceed?") costs three minutes and buys an uncontested invoice. What belongs on that final invoice line by line is covered in what to include on an invoice.
For genuinely new work beyond the estimated scope, put one sentence in every estimate: "Work outside the scope described above will be documented and priced in a written change order before it begins." How to run that process is covered in how to bill change orders.
A worked example
The skeleton of a solid small-job estimate, a deck repair:
Estimate #EST-2026-014 | Issued July 9, 2026 | Valid 30 days
Scope: Replace decking boards and railing on rear deck (approx. 200 sq ft). Framing assumed sound per visual inspection.
- Labor, estimated 22 to 28 hours at $75/hr: $1,650 to $2,100
- Decking materials (composite, mid-grade): $1,540
- Railing hardware allowance: $350 (final per client selection)
- Contingency, joist repair if rot found (billed only if used): $400
- Estimated total: $3,540 to $4,390
Could change this estimate: concealed framing damage, material price changes after 30 days, selections above allowance. Scope changes handled by written change order. Final invoice will itemize actuals against this estimate.
Ten minutes to write, and it pre-answers every hard conversation the job could produce.
One note for US readers: some states regulate estimates for certain trades (auto repair and home improvement are common examples), including when written estimates are required and how far a final bill may exceed one. Rules vary by state and jurisdiction, so verify yours. This is general guidance, not legal advice.
If you want the format handled for you, the free estimate generator builds a numbered, itemized estimate with your branding and downloads it as a PDF instantly, no signup needed. When the job wraps, the free invoice generator produces the matching final invoice, and trade-specific layouts like the general contractor invoice template give you a head start.
Frequently asked questions
What is the difference between an estimate and a quote?
A quote is a firm price commitment for a defined scope; an estimate is an informed approximation for work with unknowns. If nothing about the job can surprise you, quote it. If hidden conditions, unmade selections, or unclear requirements exist, write an estimate with stated assumptions and an expiry date.
Is a written estimate legally binding?
Generally, an estimate is not a binding price the way an accepted quote can be, but it is not meaningless. If the final bill wildly exceeds the estimate without warning, clients may have grounds to dispute it, and some states cap how far certain trades can exceed a written estimate. Rules vary by state, so verify yours; this is not legal advice.
How accurate does an estimate need to be?
There is no universal standard, but the working expectation is that a well-scoped estimate lands close to the final number unless a disclosed risk materializes. The real accuracy tool is communication: flag any variance in writing the moment you know about it, before doing the work that causes it. An estimate that moves with documented reasons feels accurate even when the number changes.
How long should an estimate be valid?
Fourteen to 30 days is the common convention, stated directly on the document ("valid for 30 days from the issue date"). Use the short end when material prices are volatile and the long end for labor-only service work. After expiry you are free to re-estimate at current costs, which protects you without needing an awkward renegotiation.