The site visit itself takes an hour or two. The proposal assembly loop is what stretches the timeline.
You have the raw inputs: photos, measurements, scope notes, material preferences. Someone still has to organize those inputs into line items, pull pricing from the price book or vendor catalogs, format the document, add payment terms and exclusions, and run the final review before the quote goes out.
Photo organization alone can add hours. The walkthrough album contains dozens of images: wide shots of the yard, close-ups of existing deck damage, railing details, foundation conditions, access points. The estimator has to sort through that album, label the relevant photos, and match them to the scope sections in the proposal. If the photos are not captioned during the site visit, the estimator is guessing which image supports which line item.
Measurement reports add another layer. The LiDAR scan or manual tape measurements produce a set of dimensions: deck footprint, railing runs, stair rise and run, post spacing. Those numbers have to be translated into material quantities: board feet of framing lumber, linear feet of decking, railing sections, fastener counts. If the price book is not structured to accept those inputs directly, the estimator is doing unit conversions and quantity math by hand.
A roofing contractor asked peers what realistic turnaround time is for estimates and reported their own 3-4 hour average from takeoff-complete to proposal-sent. That is a different vertical, but the workflow shape is the same: the inspection is fast, the assembly is slow.
The bottleneck is a data-labeling problem. The contractor has the information, but it is scattered across photo albums, measurement reports, and handwritten notes. Turning that into a sendable quote takes hours or days, depending on how standardized the workflow is.