This is the actual workflow for running a commercial reroof bid through BuildCrux multi-pass AI. The pipeline is built for plan-set takeoff: a dimensioned roof plan plus detail sheets plus equipment schedules and existing-conditions notes. The output is a line-itemed estimate ready for senior review, typically 40 to 60 line items on a 12,000 to 50,000 sqft commercial reroof. Total elapsed time from plan upload to bid ready for submission: 3 to 5 hours including a pre-bid roof walk. Bidder hours: 1.5 to 2.5 hours of active work, the rest is wall-clock for the AI pass plus walk drive time. This guide walks the workflow.
BuildCrux multi-pass is a three-pass pipeline: Pass 1 identifies relevant sheets, Pass 2 runs takeoff with computed areas using the compute_area tool, Pass 3 applies unit costs using lookup_unit_cost. The pipeline supports scope filter mode (roofing-only, mechanical-only, electrical-only, etc.) which scopes Pass 3 to output only line items for the selected discipline. For commercial reroof, scope filter is set to roofing-only. This page documents the full workflow step-by-step including the senior review checkpoints that keep accuracy inside the 3 to 5 percent band.
Step 1 — Pre-bid roof walk
A 60 to 90 minute roof walk before bid catches what the plan set cannot show: actual deck condition (under existing insulation), drain function and ponding history, equipment curb integrity, tenant operations that affect tear-off sequencing, and dumpster/staging access. Skip the walk only when the building is sealed, occupied by sensitive tenants, or located far enough that the walk burns more bid hours than the avoided risk is worth.
- Decking condition: spongy spots, visible rust on underside (if accessible), historic moisture intrusion signs
- Drain function: photograph each drain, note ponding stains within 48 hours of last rain
- Equipment curbs: photograph each curb, measure curb dimensions, note flashing condition
- Penetration count: every pipe, vent, exhaust hood, satellite mount, lightning rod — all need TPO target patches
- Parapet condition: photograph each elevation, measure parapet height, note coping condition
- Tenant operations: kitchen exhaust schedules, dry cleaner vents, restroom vents — coordinate vent capping during tear-off
- Access: dumpster placement, crane staging, material lift access, roof tie-off anchor points
- Existing roof core sample: take 6-inch core to verify insulation type and check for moisture (this is the most diagnostic data point you can collect)
Step 2 — Upload the roof plan set
Drag the architect plan PDF into the BuildCrux estimate creation form. Roof plan sets are typically 4 to 12 sheets including roof plan, roof details, equipment schedule, edge metal profiles, and existing conditions notes. Multi-trade sets are also supported (you will use scope filter to scope to roofing-only in Step 3). Max upload: 500 MB per file using the Files API. For owner-supplied partial sets (original 1990s architectural drawings plus newer scope sheets), upload the complete bundle; the pipeline reads the cover sheet and sheet index to disambiguate.
Step 3 — Set project metadata and scope filter
Enter project address, building type (commercial reroof), and approximate square footage. Set scope filter to "roofing-only" — this tells Pass 3 to output line items only from the A-series roof plan plus M-series equipment schedule plus E-series electrical equipment locations (for curb count). Architectural floor plans (interior tenant spaces) are used for context but contribute zero non-roofing line items. For multi-trade sets, the filter prevents structural, mechanical interior, electrical interior, plumbing, finishes, and other non-roof scope from appearing in the output.
Step 4 — Pass 1 sheet identification
Pass 1 reads the cover sheet and sheet index, identifies the relevant sheets, and tags non-drawing sheets (existing conditions notes, T24 energy compliance forms, specifications text) so they are excluded from takeoff. Pass 1 runs in 60 to 120 seconds and is included in the preflight (no credit charged). The output is a sheet inventory with relevance tags: roof plan (primary), roof details (primary), equipment schedule (primary), edge metal profiles (primary), architectural floor plan (context only), structural (excluded by filter), mechanical interior (excluded by filter), electrical interior (excluded by filter), specs and notes (excluded for takeoff but referenced for scope language).
The pipeline displays the sheet inventory on the preflight confirmation screen. Sanity-check before approving Pass 2 + Pass 3. Common review catches: a sheet labeled "roof plan" that is actually the architectural floor plan annotated with roof-line dashed overlay (re-tag as architectural context), a sheet labeled "details" that is actually structural framing details (re-tag as excluded), or an equipment schedule that lists demolition equipment rather than new install (annotate).
Step 5 — Pass 2 takeoff with compute_area
Pass 2 runs takeoff with the compute_area tool. The tool extracts roof areas from the roof plan, computes perimeter linear feet from the building outline, enumerates drain symbols and equipment curb symbols and penetration symbols, and reads detail sheets for parapet height plus edge metal profile plus drain detail spec. The output is a structured takeoff table with quantities by item type.
Pass 2 takeoff items by source sheet and extraction tool.
| Pass 2 takeoff item | Source sheet | Tool used |
|---|---|---|
| Roof area sqft | Roof plan | compute_area |
| Parapet linear feet | Roof plan + parapet detail | compute_perimeter |
| Drain count (4-inch, 6-inch, scuppers) | Roof plan + drain symbols | count_symbols |
| Equipment curb count + dimensions | Equipment schedule + roof plan | count_symbols + extract_table |
| Penetration count (vents, exhaust, satellite) | Roof plan | count_symbols |
| Insulation R-value spec | Roof details + specs | extract_text |
| Membrane spec (TPO mil, EPDM mil, mod-bit) | Roof details + specs | extract_text |
| Edge metal profile + gauge | Edge metal detail + specs | extract_text |
| Existing layer count | Existing conditions notes | extract_text |
| Deck type (steel/concrete/wood/tectum) | Existing conditions notes + structural ref | extract_text |
Step 6 — Pass 3 unit costs with lookup_unit_cost
Pass 3 applies unit costs from the lookup_unit_cost catalog. The catalog ships with the 2026 North Texas baseline (see the cost-benchmarks page) and is editable per workspace. Pass 3 multiplies takeoff quantities by unit costs, applies the regional adjustment factor set in workspace settings, and outputs the line-itemed estimate grouped by scope group (tear-off, insulation, membrane, drains, equipment curbs, perimeter, warranty). Pass 3 also produces long-lead annotations for items with lead times over 6 weeks.
- TPO 60-mil white membrane: 4 to 6 week lead in 2026
- TPO 80-mil specialty membrane: 8 to 16 weeks
- EPDM 60-mil mechanically fastened: 3 to 5 weeks
- Modified bitumen 2-ply: 2 to 4 weeks
- Custom-color edge metal (Kynar): 4 to 8 weeks
- Specialty NDL warranty registration approval: 2 to 4 weeks pre-install
- Polyiso ISO insulation 2.5-inch: 1 to 3 weeks
- GAF Master Select certified installer status: required for Total System warranty (not lead time but compliance gate)
Run your next commercial reroof through the multi-pass pipeline
14-day free trial. 30-day money-back guarantee.
Get StartedStep 7 — Senior review checkpoints
Senior estimator review of AI output runs 30 to 45 minutes on a clean plan set. The review catches: line items that the AI did not surface, line items that the AI surfaced incorrectly, unit-cost overrides for specific suppliers, contingency rate adjustments for project-specific risk, and proposal-language polish. Skipping senior review on commercial reroof is a common cause of under-bidding by 7 to 12 percent because the AI is calibrated to the median scope and not to project-specific complications.
- Drain count check: confirm drain count matches roof walk photos (AI counts symbols on plan; walk confirms current condition)
- Equipment curb dimensions: cross-check AI-extracted curb dimensions against owner-supplied equipment schedule from prior RTU replacement
- Deck inspection allowance: add line item if existing layer or moisture risk warrants ($1,000 to $3,000 typical commercial)
- Tenant coordination scope: add line item if tear-off requires coordinated vent capping with active tenants
- Weather contingency: adjust contingency rate (5 to 10 percent typical) based on bid season and project length
- Warranty system selection: confirm Total System vs membrane-only NDL aligns with owner spec
- Long-lead annotations: confirm annotated items match current supplier lead times
- FM wind uplift zone confirmation: verify FM 1-90 / FM 1-120 / FM 1-180 fastener pattern matches AHJ
Step 8 — Markup, proposal, submission
Final step: apply markup layers (general conditions 5 to 8 percent, overhead 14 to 18 percent, contingency 5 to 10 percent, profit 10 to 14 percent), generate proposal PDF with scope-of-work writeup plus warranty terms plus exclusions plus alternates, and submit via the GC submission portal or email. BuildCrux generates the proposal PDF automatically from the line-itemed estimate plus a configurable template. Customer-facing total presented as a single number with optional itemized backup attached.
| Workflow step | Time | Bidder vs AI |
|---|---|---|
| Pre-bid roof walk + drive | 2 to 3 hr | Bidder |
| Plan upload + scope filter setup | 5 min | Bidder |
| Pass 1 sheet identification | 60 to 120 sec | AI |
| Preflight review + Pass 2/3 approve | 5 min | Bidder |
| Pass 2 takeoff | 4 to 8 min | AI |
| Pass 3 unit costs + line items | 3 to 6 min | AI |
| Senior estimator review | 30 to 45 min | Bidder |
| Markup + proposal generation | 15 to 25 min | Bidder + AI |
| Submission via portal or email | 5 to 10 min | Bidder |
| Total wall-clock | 3 to 5 hr including walk | Hybrid |
| Total bidder hours active | 1.5 to 2.5 hr | Bidder |
Frequently asked questions
How big a plan set can the pipeline handle?+
Up to 500 MB per file via the Files API. Most commercial reroof plan sets are 4 to 24 MB. Multi-trade GC sets are 25 to 150 MB. Very large sets (over 500 MB, rare) are split per-page using the pdf-lib splitter and uploaded as separate files. The pipeline handles 30 to 80 sheet commercial sets without splitting required.
What happens if the plan set is missing dimensions?+
Pass 2 uses scale notation plus reference dimensions when available. When neither is present, the pipeline asks for clarification rather than guessing. The most common gap is older 1990s plan sets where dimensioning is partial; in those cases, the bidder enters approximate sqft as project metadata in Step 3 and the pipeline calibrates the takeoff against that anchor.
Can I run the same plan as a GC estimate AND a roofing sub-bid?+
Yes. Create two separate estimates on the same plan set. The first estimate has scope filter off (or set to "all trades") for the GC bid covering everything. The second estimate has scope filter set to roofing-only for the sub-bid covering only the roofing scope. Both are billed as separate estimates because they run separate Pass 2 and Pass 3 cycles.
How does scope filter handle existing conditions notes?+
Existing conditions notes are extracted and included as context for Pass 3 unit cost selection even when not part of the takeoff. For example, "existing 2-layer modified bitumen over 18-year-old R-15 ISO" tells Pass 3 to use the 2-layer tear-off labor rate plus the R-15 ISO disposal rate even though those items are not symbols on the roof plan.
What is the credit cost for a commercial reroof estimate?+
For commercial reroof under 25,000 sqft on a standard plan set: 1 standard credit (1 credit pool, 1 credit each). For commercial reroof over 25,000 sqft or multi-trade plan sets requiring scope filter: 1 commercial credit (15-credit equivalent from the same pool). Pricing is presented in the mode-confirmation modal before the run starts.
How does the pipeline handle re-bids when scope changes?+
Edit the estimate (project address, scope filter, square footage). Re-run Pass 2 and Pass 3 (Pass 1 sheet identification is cached for 24 hours so re-runs are faster on the same plan). Each re-run is a separate credit charge because the AI work is re-done. Most contractors bundle re-bid changes and re-run once per change rather than per-line-item edit.
The bottom line
AI multi-pass workflow for commercial reroof is a structured pipeline: roof walk plus plan upload plus scope filter plus three AI passes plus senior review plus proposal plus submission. Total elapsed time 3 to 5 hours including walk; bidder hours 1.5 to 2.5 active. The unlock is not "AI replaces the estimator" — it is "estimator does 3 to 4 commercial bids in the time they used to do one, and the bids land inside the same 3 to 5 percent accuracy band as 10-hour manual takeoff." For a small commercial roofing GC, that scales bid volume without scaling headcount.
See the workflow applied to a real $148K commercial reroof
See how AI compares to manual takeoff and EagleView
See the multi-discipline commercial TI workflow
Run your next commercial reroof through BuildCrux
14-day free trial. 30-day money-back guarantee.
Get Started