On a mid-size commercial job, manual duct and pipe takeoffs can take days of tracing runs, counting fittings, and cross-referencing riser diagrams against specifications. AI extraction handles most of the measuring and counting, then gives estimators a focused list of items that need a decision.
Introduction
A duct and pipe takeoff turns mechanical and plumbing drawings into quantities an estimator can price: linear feet by system and size, fitting and valve counts, insulation, and the material and gauge the specs call for.
On a mid-size commercial job, doing it by hand can take days. Most of that time goes into tracing runs, counting fittings, and checking riser diagrams against spec sections.
AI extraction handles most of the tracing and counting, then gives the estimator a short list of items that need a decision. This guide shows how that works on an example three-story office building, following:
- One supply duct run: from the plan sheet to sheet metal weight
- One domestic hot water system: from the riser diagram to hanger counts
What AI Duct and Pipe Quantity Extraction Does
AI duct and pipe quantity extraction reads mechanical and plumbing plans, riser diagrams, schedules, and specifications, then produces quantities by system, size, and material.
Every quantity links back to the sheet it came from. Anything the drawings don't define clearly goes to the estimator for review instead of being guessed by the system.
The Manual Work Behind Every Duct and Pipe Takeoff
A manual takeoff involves:
- Tracing every run on every floor, size by size
- Separating systems by line type, such as supply, return, and exhaust air, or domestic water, sanitary, vent, and gas
- Counting elbows, transitions, tees, takeoffs, valves, dampers, and diffusers
- Finding vertical runs on riser diagrams, sections, and isometrics
- Pulling material, gauge, insulation, and joining methods from the specs
- Avoiding double counts where enlarged plans repeat the main plan
Each task is routine on its own. Across dozens of sheets and several systems, they take up most of an estimator's time before pricing starts.
Supply Duct Example: From Plan Sheet to Sheet Metal Weight
Reading the Level 2 Supply Main on M-201
Here's what the drawings and specs show for this run:
- Plan (M-201): a 24" × 14" rectangular supply main runs from the shaft to the east wing
- Legend: supply air is drawn as a solid double line
- Specs (Section 23 31 13): the gauge table assigns 24 gauge galvanized steel for this duct size
- Insulation spec: 1.5" duct wrap on concealed supply duct
The Extracted Duct Record
| Field | Result |
|---|---|
| System | Supply air, Level 2 |
| Size | 24" × 14" rectangular |
| Length | 186 LF |
| Material | Galvanized steel, 24 ga |
| Insulation | 1.5" duct wrap, 186 LF |
| Fittings | 6 elbows, 3 transitions, 9 branch takeoffs |
| Diffusers on this run | 9 (from the schedule on M-601) |
| Sources | M-201, M-601, Section 23 31 13 |
Example record.
What this gives you: size, length, material, insulation, and fittings for the run in one place, each traced to the sheet it came from.
Converting Duct Footage to Sheet Metal Weight
For sheet metal shops that price by the pound, the record converts straight into weight:
- Perimeter: 2 × (24" + 14") = 76", or 6.33 ft
- Surface area per linear foot: 6.33 sq ft
- Weight per linear foot: 6.33 sq ft × 1.156 lb per sq ft (24 ga galvanized) = 7.32 lb/LF
- Weight for the run: 7.32 lb/LF × 186 LF = about 1,362 lb
This covers the duct wall only. Add your shop's allowance for seams, joints, and reinforcement, and price fittings separately, since they take more labor per pound than straight duct.
Duct Items Held for Estimator Review
- Single-line branch connection: the fitting type isn't clear from the drawing, so it's flagged instead of assigned
- Flex duct runouts: all 9 diffusers connect with flex, but no lengths are drawn, so the runouts are counted with no footage assumed
- Size change with no transition drawn: the duct steps from 24" × 14" to 18" × 12" at grid D-5, so a likely transition is added and marked for confirmation
We build extraction to measure what's drawn and flag what's implied. A takeoff that fills gaps with guesses looks complete while hiding the items an estimator most needs to see.
Domestic Hot Water Example: From Riser Diagram to Hanger Count
Reading the DHW Risers and Branches
Here's what the drawings and specs show for this system:
- Plans (P-201 to P-301): domestic hot water runs as a dashed line labeled DHW, with branch sizes on each run
- Riser diagram (P-501): a 1" riser runs from the Level 1 water heater room to Level 3
- Floor-to-floor height: 14 ft
- Specs: Type L copper (Section 22 11 16) with 1" fiberglass insulation (Section 22 07 19)
The Extracted Pipe Record
| Field | Result |
|---|---|
| System | Domestic hot water |
| Size | 1" |
| Horizontal length | 206 LF across Levels 1 to 3 |
| Vertical length | 36 LF (28 LF riser + 8 LF drops to fixtures) |
| Total length | 242 LF |
| Material | Type L copper |
| Insulation | 1" fiberglass, 242 LF |
| Fittings and valves | 14 elbows, 8 tees, 3 ball valves |
| Sources | P-201, P-202, P-301, P-501 |
Example record.
What this gives you: 36 LF of vertical pipe that comes only from the riser diagram and fixture details. A plan-only takeoff would miss all of it.
Calculating Hangers and Riser Supports
Pipe footage also sets support counts. Using the International Plumbing Code's maximum spacing for copper tubing 1-1/4" and smaller:
- Horizontal hangers (every 6 ft): 206 LF ÷ 6 = 34.3, rounded up to 35
- Riser supports (every 10 ft): 28 LF ÷ 10 = 2.8, rounded up to 3
Check the project specs and your local plumbing code before pricing. Some jurisdictions use a different code, and specs often call for closer spacing than the minimum.
Pipe Items Held for Estimator Review
- Unmatched riser: a second riser symbol near the east restrooms on P-201 has no vertical information anywhere in the set, so it's flagged for an RFI or an estimator decision
- Unlabeled branch: one branch on P-202 has no size, so it stays out of the totals until confirmed
Six Takeoff Errors Automated Extraction Is Built to Catch
| Error | Why it slips through manual takeoffs | How extraction catches it |
|---|---|---|
| Missing risers and drops | Vertical runs live on risers and sections, not plans | Matches every plan riser to a riser diagram and flags the rest |
| Missing fittings | Attention goes to footage | Counts a fitting at every turn, size change, or branch |
| Wrong system | Similar line types on busy sheets | Checks every line against the legend |
| Wrong material or gauge | Spec data sits in a separate document | Applies spec data to every run and flags gaps |
| Double counts | Enlarged plans repeat the main plan | Measures each run once using match lines |
| Scale errors | Enlarged plans use different scales | Reads the scale on each sheet and detail view |
Decisions That Stay With the Mechanical Estimator
Extraction handles measuring and counting. The estimator still decides:
- Undrawn routing: how to price runs the drawings leave to the installer
- Allowances: waste factors, seam allowances, and fitting allowances
- Flagged items: whether to send an RFI, carry an allowance, or state an assumption
- Pricing: labor units, crew productivity, and the final number
Setting Up Duct and Pipe Extraction for Your Drawings
- Save a legend map for each engineer you bid with often: line types, symbols, and abbreviations repeat, so setup gets shorter with every job
- Include the Division 22 and 23 specs: they carry material, gauge, insulation, and joining data for every run
- Include risers, sections, and isometrics: without them, vertical footage stays incomplete
- Keep fittings tied to their runs: counts linked to a run are much easier to check than one total per floor
- Send approved quantities to your estimating software: labor units and pricing apply without retyping
Testing Extraction Accuracy Against a Past Takeoff
Before using extraction on live bids, run it on two or three past projects with takeoffs you trust. Compare:
| What to compare | What it confirms |
|---|---|
| Footage by system and size | Tracing and scale are accurate |
| Fitting counts per run | Labor quantities will hold up |
| Vertical footage | Risers and sections are being picked up |
| Time spent on the review list | Real time saved against a manual takeoff |
If results differ on one system or one engineer's drawings, the cause is usually a gap in that engineer's legend map, which can be fixed before the next bid.
Automate Your Duct and Pipe Takeoffs With Octopus Builds
The examples above depend on details specific to your shop: the engineers you bid with, the systems you price separately, the allowances you use, and the estimating software your labor units live in.
Octopus Builds builds duct and pipe quantity extraction around those details:
- Legend maps for the engineers you see most
- Spec data applied to every run
- Risers and fittings traced back to their source sheets
- One review list for every open item
- Approved quantities sent directly into your estimating software
We scope engagements in about two weeks and deliver working software every two weeks after that, starting with a test on one of your past bids. If duct and pipe takeoffs are using up time your estimators need for pricing, automate your takeoffs with Octopus Builds.
Octopus Builds is the Ellenox services arm for AI systems, software delivery, and product execution for teams that need reliability and speed to production.
Build with Octopus Builds
Need help turning the article into an actual system?
We design the operating model, product surface, and delivery plan behind AI systems that need to ship cleanly and keep working in production.
