Quantity takeoff is the task of reading a set of construction drawings and producing a priced list of everything needed to build what is drawn. It is slow, it is skilled, and it is the gate on how many jobs a contractor can bid. Bid more, win more. So automating it is obviously valuable and, for a decade, obviously not quite good enough.
Vision models changed the accuracy enough to matter. They did not change the fundamental property of the task: it is judgment, and judgment is sometimes wrong. A takeoff tool that is right 94% of the time is not 94% of a product. It is either a very good product or a liability, and which one it is depends entirely on whether the estimator can tell which 6% to check.
The failure mode we designed against
Picture the version without confidence scoring. The model reads the plans, detects the spaces, produces 340 priced line items, and presents them as a bill of quantities. It looks authoritative. It is mostly right.
The estimator now has two options, both bad. Trust it, and eventually send a bid with a wrong number in it that nobody caught. Or check it, which means re-doing the takeoff by hand to find out where it was wrong — at which point the tool has saved nothing and cost the price of a subscription.
An AI output with no uncertainty attached transfers all of the verification cost to the user, and hides it.
Scoring every line, not the document
The unit of confidence has to match the unit of work. A document-level score — "this takeoff is 91% confident" — is useless, because the estimator still has to check everything to find the bad lines.
So confidence attaches to each detected space and each derived quantity. A clearly labelled rectangular room with dimensions printed on the drawing scores high. A space bounded partly by a hatched region that might be an existing wall or might be a demolition note scores low, and says why.
That turns the review from "verify 340 lines" into "look at these 19". The estimator spends their expertise where it is actually needed, which is the entire value proposition.
Ranking beats thresholding
A tempting simplification is to pick a threshold and auto-accept everything above it. We do not, for two reasons.
- The right threshold depends on the bid. A competitive fixed-price job on a tight margin deserves more scrutiny than a rough order of magnitude for a repeat client.
- Thresholds hide the distribution. An estimator who sees the low-confidence items ranked learns quickly which kinds of drawings the model struggles with, and starts drawing better ones or checking harder. A threshold teaches them nothing.
So the review surface is a ranked list, worst first, with the model's reasoning and the region of the drawing it came from. Accept, adjust or reject, one line at a time, in the order that maximises the value of each minute spent.
The general principle
This is not a construction insight, it is an AI product insight that construction happened to make obvious. Any time a model produces output a human is accountable for, the model owes that human two things: the answer, and an honest signal about where the answer is weak.
Systems that provide only the first are not saving work. They are moving it somewhere less visible, and charging for the privilege.
