Revit

Revit MEP quantity takeoff: pipe, duct area, insulation

Revit MEP quantity takeoff in 13 steps on Revit 2027: pipe length by system and size, fitting counts, a duct area schedule and a pipe insulation schedule.

  • GV. Trần Ngọc Việt
  • 11 min read
A pipe schedule grouped by system and size, with a total per system and a grand total, in metres Photo: Revit 2027 screenshot, Snowdon Towers sample project supplied by Autodesk with the software

The model is finished, and yet many teams go back to CAD or a spreadsheet to measure quantities by hand. The model already holds the length, size and material of every pipe segment; what is missing is the way to read the numbers out.

Revit MEP quantity takeoff means building schedules straight from the model: total pipe length by system and size, fitting counts, duct sheet metal area, insulation quantities and equipment counts. Change the model and the schedule follows. This article walks through 13 steps in Revit 2027, including how to show metres in a schedule while the project itself uses imperial units. For the full MEP modelling and documentation workflow, see the Institute's Revit MEP course.

What you can take off, and from which field

ItemCategoryMain fieldsUnit
Water, gas and fire pipesPipesSystem Type, Size, Lengthm
Pipe fittingsPipe FittingsFamily and Type, Size, Countpcs
Valves and metersPipe AccessoriesFamily and Type, Countpcs
DuctworkDuctsSystem Type, Size, Length, Aream, m²
Pipe insulationPipe InsulationsInsulation Thickness, Length, Aream, m²
Equipment and fixturesPlumbing Equipment, Plumbing FixturesFamily and Type, Countpcs

A Revit MEP quantity takeoff always starts by picking the right category from the table above. The Area field of a duct is the outer surface area of that segment, the sheet metal to be cut, before joints and waste. The Length field of a pipe is the length along its centreline.

The Schedule Properties dialog itself, including export to Excel and Material Takeoff, is covered in schedules in Revit. This article only deals with the MEP side. Whether the numbers are right depends on whether the model is fully assigned to systems; see Revit MEP systems.

Files to follow along

The files used here are Snowdon Towers Sample Plumbing.rvt and Snowdon Towers Sample HVAC.rvt from the Samples folder of the Revit 2027 installation. Open copies and do not save over them. The sample uses imperial units, so sizes read in inches; the length and area columns are switched to metres inside the schedule in step 6. The Institute's template files are set up in millimetres; see Revit MEP sample files.

A pipe schedule by system and size: steps 1 to 6

Step 1. Go to View › Create › Schedules ▾ › Schedule/Quantities. The menu also holds Graphical Column Schedule, Material Takeoff, Sheet List and Note Block.

Step 2. In the New Schedule dialog, type Pipes in Category name search, select Pipes in the Category list, name the schedule, keep Schedule building components and the phase, then click OK.

Calling the schedule command and the New Schedule dialog Photo: (1

The Category list holds every MEP category: Ducts, Duct Fittings, Duct Accessories, Duct Insulations, Duct Linings, Duct Systems, Flex Ducts and their piping equivalents, plus <Multi-Category> at the top of the list.

MEP categories in the New Schedule dialog Photo: (1

Step 3. On the Fields tab, type a field name into Parameter Name Search and click the green arrow to move it into Scheduled fields. Take four fields: System Type, Size, Length and Count. The list of pipe fields is long, so use the search box.

The Fields tab of Schedule Properties Photo: (1

Pick Size, not Overall Size: Overall Size includes the insulation.

Step 4. On Sorting/Grouping, set Sort by System Type, tick Footer and choose Title, count, and totals, and tick Blank line. Set Then by Size. Tick Grand totals with the same option. Most important of all: clear Itemize every instance.

The Sorting/Grouping tab Photo: (1

Autodesk's Sort and Group Fields in a Schedule page puts it plainly: clear the box and "multiple instances collapse to the same row based on the sorting parameter". Every size of every system lands on one row.

Step 5. On the Formatting tab, select the Length field and change No calculation to Calculate totals in the list below. Without it the total rows stay empty.

Step 6. With Length still selected, click Field Format.... Clear Use project settings, set Units to Meters, Rounding to 2 decimal places and Unit symbol to m. Click OK twice.

Formatting and the Field Format dialog Photo: (1

The schedule appears at once: one block per system, one row per size, a footer row with the count and total length, and a grand total at the bottom. This is exactly what people look for when they search for a revit pipe schedule total length.

A pipe schedule by system and size Photo: (1

Counting fittings by type and size: step 7

Step 7. Repeat steps 1 and 2 with the Pipe Fittings category. Take Family and Type, Size and Count. On Sorting/Grouping, sort by Family and Type with a footer and a blank line, then by Size, tick Grand totals and clear Itemize every instance.

A pipe fitting count schedule Photo: (1

The Size column of a fitting shows both ends, for example 4"ø-2"ø for a reducer, so the schedule can go straight to a purchase order. Valves and meters live in the Pipe Accessories category and work the same way.

Duct area schedule for sheet metal: steps 8 and 9

Step 8. In the HVAC file, schedule the Ducts category with four fields: System Type, Size, Length and Area. Set Sorting/Grouping as in step 4.

Step 9. On the Formatting tab, set Calculate totals for both Length and Area. For Area, choose Square meters in Field Format, 2 decimal places, unit symbol .

The Area field and the duct area schedule Photo: (1

This duct area schedule gives the sheet metal per system straight away: 374.13 m² of supply air, 171.46 m² of return air, 93.39 m² of exhaust. It covers straight ducts only; duct fittings sit in the Duct Fittings category and need their own schedule.

Pipe insulation schedule: add the insulation first: steps 10 and 11

Step 10. Select one pipe, right-click and choose Select All Instances › Visible in View to catch every pipe of that type in the view. The Modify | Pipes tab has a Pipe Insulation panel with Add, Edit and Remove Insulation. Click Add Insulation, pick an Insulation Type, type a Thickness and click OK.

Step 11. Schedule the Pipe Insulations category with System Type, Pipe Size, Insulation Thickness, Length and Area; group by System Type as in step 4 and switch units as in step 6.

Adding insulation and the insulation schedule Photo: (1

The Area column of a pipe insulation schedule is the outer surface of the insulation, the figure you order jacketing by. Ductwork has two separate categories: Duct Insulations for external wrap and Duct Linings for internal lining.

One schedule for several categories: steps 12 and 13

Step 12. Create a schedule with <Multi-Category> at the top of the Category list and take three fields: Category, Family and Type and Count. Sort by Category with a footer, then by Family and Type, and clear Itemize every instance.

A multi-category schedule Photo: (1

One schedule can replace a stack of separate ones when you need a summary: 3,055 pipe segments split into cast iron, copper and uPVC; 2,655 fittings; 126 valves and meters; 366 insulation segments; 35 pieces of equipment, of which 31 are water heaters.

Step 13. Export the schedule to Excel for pricing. The export path and formatting tips are in schedules in Revit; Material Takeoff is the tool when quantities have to be split by material layer.

From CAD to Revit: drop the length lisp

MEP estimators working in CAD add up polyline lengths per layer with a lisp routine and paste the result into a spreadsheet. That method fails in three places: duplicate lines are counted twice, risers never appear on a plan, and every design change means measuring again.

A Revit schedule reads the three-dimensional objects themselves, so risers, sloped runs and fittings are all counted. What is left for the estimator is checking the model, choosing the right fields and reading the total rows. The spreadsheet still has its place, at the end, for unit prices.

When the numbers look wrong

SymptomCauseFix
The schedule lists every segment, thousands of rowsItemize every instance is still tickedClear it on the Sorting/Grouping tab
Total rows show a count but no lengthLength has no Calculate totalsOn Formatting, select the field and switch to Calculate totals
Lengths still read in feet and inchesThe schedule follows the project unitsIn Field Format, clear Use project settings and choose Meters
Sizes look larger than realityThe Overall Size field is in useUse the Size field
A whole system is missingThose pipes are in no system, so System Type is emptyCheck with the System Browser and assign the system
Insulation comes out as zeroNo insulation has been added to the pipesSelect the pipes and use Add Insulation

Three things people say. First, "Revit gives you the waste factor too": it does not; a schedule gives geometry, and the waste factor belongs in the spreadsheet. Second, "you have to export IFC to take off quantities": schedules live inside Revit and update with the model. Third, "one schedule is enough": pipes, fittings and insulation are three different categories, so you need at least three schedules, or one multi-category schedule.

Get the first six steps right and the pipe schedule is done; the rest of a Revit MEP quantity takeoff repeats the same moves on other categories. To split quantities by floor or zone, add the Level or Reference Level field and sort by it.

Frequently asked questions

Why is the total pipe length larger than expected?

The schedule counts risers and runs inside shafts, the parts a plan never shows. Compare with the 3D view before deciding the number is wrong.

How do I take off quantities floor by floor?

Add the Level or Reference Level field, sort by it, and keep the other steps unchanged.

Do duct fittings give a sheet metal area?

The Ducts schedule covers straight ducts only. Fittings are in the Duct Fittings category and need a separate schedule.

Does the schedule update when the model changes?

Yes. A schedule is a view of the model, so adding or deleting pipe changes the numbers immediately.

About the author

GV. Trần Ngọc Việt — Head of BIM Management at Thai Binh Investment Joint Stock Company; 17 years in MEP, BIM and project management; leads the BIM Manager course at the Institute of Information Technology in Civil Engineering