The Estimating Assumptions Worth Writing Down

Why this matters

Every estimate is a stack of assumptions with a number sitting on top. When the job comes back over, the number is the only part anyone recorded, so the review has nothing to test. You end up with a room full of people arguing about whether 23 hours was reasonable, which is unanswerable, instead of asking which of the seven things the estimator believed turned out to be false, which is answerable in ten minutes.

This is not the customer-facing conditions clause that protects you contractually. That document is written to be read by someone else, and it is deliberately broad. What is described here is an internal record, written for your own future self, and it works in the opposite direction: narrow, specific, and each item stated so that a closed job can prove it right or wrong.

The payoff is that variance stops being a single mysterious percentage and becomes a list of named claims, most of which held and one or two of which did not.

An assumption is a testable claim, not a disclaimer

The test for whether something belongs on the record: could a person standing on the finished job site say yes or no to it without needing your opinion?

  • "Access assumed unobstructed" is a disclaimer. Unobstructed by what, judged by whom.
  • "Assumed the crew can park within 50 feet of the work and carry material in one trip per load" is a claim. You can stand there and check it.

The disclaimer version protects you in a dispute and teaches you nothing. The claim version teaches you something on every job and, as a bonus, usually produces the better contract language anyway because it is specific.

Each recorded assumption needs three parts: the claim, the unit or quantity it affects, and where it came from. The source matters more than people expect. An assumption sourced from a site visit, one sourced from a photo the customer sent, and one sourced from "this type is usually like that" have three very different failure rates, and after a year of records you will be able to say by how much.

The classes worth recording

Seven classes cover nearly all of the variance that shows up in small-shop field work. Keep the list this short deliberately: a record of thirty assumptions per estimate gets filled in by rote and read by nobody.

Class The claim states Affects Checkable after?
Access and staging Distance, opening size, parking, carry path, floor protection needed Labor hours, mobilization Yes, on site
Condition of existing work What you expect to find behind, under, or connected to the work Labor hours, material Yes, from photos
Crew composition Headcount and skill mix the hours were priced at Labor hours Yes, from the schedule
Working window Hours per day available, days available, occupied or empty Mobilizations, hours Yes, from time entries
Scope boundary What is explicitly not included, and who does the adjacent work Everything Yes, from change orders
Material availability and form On the shelf, lead time, stock size or package assumed Material, schedule, waste Yes, from purchase records
Site services and disposal Power, water, waste handling, who hauls, permit and inspection wait Hours, direct cost Yes

Two notes on this table. Crew composition is the most commonly omitted and the most commonly broken. An estimate priced at a mixed crew and executed with a green crew will run over for reasons that have nothing to do with the estimate, and if the composition was never recorded the review will misfile it as an estimating error and correct a template that was right.

Working window is the one that hides its own cost. Everyone records what work is included; almost nobody records that they assumed the work happens in a single continuous stretch. A job split across two short windows carries an extra full mobilization, and that cost lands entirely in labor hours where it looks like slow work.

What does not earn a line

Do not record an assumption you would never check, would never price differently, or cannot state as a quantity. Specifically:

  • Weather, unless your trade has a hard stop threshold and the job has a fixed date. Otherwise it is a schedule risk, not a cost assumption, and it clogs the record.
  • Anything already in the contract's exclusions. Cross-reference it, do not duplicate it. Two copies drift, and the drifted internal copy is the one that will be quoted in a review.
  • Assumptions about the customer's behavior ("customer will be responsive"). Real, expensive, and not testable in the terms above. Handle it as a customer-tier or terms decision rather than an estimate line.
  • Any assumption that does not change the number. If the claim were false and you would bid the same, it is background, not an assumption.

Density tells you how confident the bid actually is

Count the assumptions on a given estimate, and count how many are sourced from something weaker than a site visit. That ratio is a better confidence signal than the estimator's gut, and it is available before the job runs rather than after.

A rough working rule you can tune: if more than about half your recorded assumptions on a job are sourced from a phone description or a customer photo rather than from your own eyes on the site, the bid is a range, not a price, and it should either carry an explicit conditions allowance or trigger a site visit before it goes out. Two or three weak-sourced assumptions on an otherwise well-scoped job is normal and not worth stopping for.

This also gives you a way to compare estimators without comparing their totals. An estimator whose bids carry six recorded assumptions each and an estimator whose bids carry one are not doing the same job, whatever their variance numbers look like this quarter.

A worked estimate, then its actuals

A job type priced at 16 labor hours. The estimator records seven assumptions:

  1. Access: park within 50 feet, material carried in one trip per load. Source: site visit.
  2. Condition of existing work behind the panel: serviceable, no remediation. Source: customer photo.
  3. Crew: two people, one journey-level and one apprentice. Source: standard for this type.
  4. Working window: one continuous day plus a partial second day, space unoccupied. Source: customer statement.
  5. Scope boundary: adjacent finish work by others. Source: written scope.
  6. Material: all items in standard stock sizes, on the shelf. Source: supplier check.
  7. Disposal: shop hauls, one load. Source: standard for this type.

The actuals. 23 labor hours. That is 7 hours over a 16 hour estimate, about 44 percent over.

Walking the record. Assumptions 1, 2, 5, 6 and 7 held; the site visit was accurate, the condition behind the panel was serviceable, nobody added scope, materials were in stock in standard sizes, one disposal load. Five of seven, confirmed in about ten minutes from the job record and the purchase history. That is the part of the review that normally does not happen at all, and skipping it is why reviews wander.

Assumption 3 broke. The schedule sent two apprentice-level techs. The shop's own history on this job type puts an all-apprentice pairing at roughly 1.2 times the hours of the mixed pairing the estimate was priced at. Against a 16 hour base that is about 3 hours.

Assumption 4 broke. The space turned out to be occupied during business hours, so the work ran in two short windows on separate days instead of one continuous stretch. That added a second full mobilization: setup, protection, staging, teardown, measured on this shop's other jobs at roughly 2.5 crew-hours per cycle.

The arithmetic closes. 3 hours from crew composition plus 2.5 hours from the extra mobilization is 5.5 of the 7 hours over. The remaining 1.5 hours, about 9 percent of the 16 hour estimate, is unattributed and gets no action. Noise at that level on a job this size is expected.

Now the useful part: who owns each break. The crew composition break is not an estimating error at all. The estimate was correct for the crew it named; dispatch sent a different crew. The fix is either a dispatch rule or a documented multiplier applied when the priced crew is not available, and the template stays where it is. A shop without the assumption record would have seen 44 percent over, concluded the template was light, and added hours to a number that was right.

The working window break is an estimating error, and a specific one: the source on assumption 4 was "customer statement," and the customer answered a question about the space being empty, not about business-hours occupancy. That is a scoping question defect. The correction is one added question on the estimate form asking whether the work area is in use during working hours, and a standing rule that a split window adds one mobilization cycle to the hours.

What the record cost. Seven short lines at bid time. What it bought: a correction aimed at the one thing that was actually wrong, and protection for a template that a total-only review would have damaged.

What changes the answer

A time-and-materials job. The assumptions still get recorded, but their job changes. On a fixed price they protect the number; on time and materials they protect the conversation, because the customer's sense of how long it should take was formed by the same assumptions and you want the broken one on paper when you explain the hours.

A long-running or phased job. Assumptions decay. Anything sourced from a site visit more than a few months before mobilization should be re-sourced, especially condition of existing work and material availability, both of which move without anyone telling you.

A repeat job at a site you know well. The record gets shorter and stronger, not longer. Drop the classes you have confirmed repeatedly at that site, and keep the ones that move between visits, usually working window and condition of existing work.

A competitive bid where you will not get a site visit. The record is more valuable, not less, because nearly every line will be weak-sourced. Count them, and use that count to decide whether to bid a price, bid a range, or decline.

How to verify the records are doing work

  • Sample five closed jobs and try to falsify each assumption. If more than one or two per job are worded so that neither yes nor no can be established, they are disclaimers and need rewriting as claims with quantities.
  • Check that reviews cite assumption numbers. A post-job note reading "assumption 4 broke, split window, one extra mobilization" is the system working. A note reading "took longer than expected" means the record exists but nobody opens it, which is the common failure and it looks exactly like success on an audit of whether the field is filled in.
  • Track break rate by source. Over a couple of quarters, count how often assumptions sourced from a site visit break versus those sourced from a photo or a phone call. If they break at the same rate, either your site visits are cursory or your sourcing field is being filled in inaccurately, and both are worth knowing.
  • Watch for the record turning into boilerplate. If the same seven lines appear verbatim on every estimate regardless of job type, they have stopped being assumptions and become a template footer, and they will never break because they no longer claim anything.

References

  • Trade-standard practice for estimate basis-of-estimate documentation and scope qualification
  • U.S. Small Business Administration (SBA), contracting and project scoping guidance for small business
  • See related: Estimating the Unknown: The Conditions Clause, The Assumption That Cost You an Hour, How to Separate Estimating Error From Execution Error, Scope Creep Starts at the Estimate