← Back to blog
RevitAutoCADCivil 3DBill of materialsRevit pluginsBIM automation

Bill of materials from Revit, AutoCAD and Civil 3D: how to get it out of the model and how to automate it for purchasing

How to get a bill of materials from Revit, AutoCAD and Civil 3D, why it rarely works as is for purchasing, and how to automate it in your format.

Zeist··9 min read
Share on LinkedInBill of materials from Revit, AutoCAD and Civil 3D: how to get it out of the model and how to automate it for purchasing

Revit · AutoCAD · Civil 3D · Materials

Can you pull the bill of materials from the model automatically? Yes. And in the format your purchasing team uses.

What each program offers for counting and measuring, why that list rarely works as is for buying, and how to automate the rest. At the end, how we do it at Zeist.

The list that always gets built by hand

Before every order, someone opens the model, counts, measures, copies to Excel, groups, adds waste and moves it into the purchasing format. When the design changes, it starts over, and nobody is quite sure what changed since the last order.

Revit, AutoCAD and Civil 3D already know how to count and measure. What's missing is turning that into the list your company actually uses. This guide shows what each program offers and how to automate the rest.

From the model to the order

Models

Revit, AutoCAD, Civil 3D

Quantities

Count, measure, group

Your format

Codes, units, waste

Order

What changed since the last list

An automated bill of materials, in 7 steps

How it differs from a takeoff, what Revit, AutoCAD and Civil 3D offer, what no list does on its own, how to automate it and how we do it at Zeist.

  1. 01Basics

    BOM or takeoff

    Buying isn't the same as estimating

  2. 02Revit

    In Revit

    Schedules and material takeoffs

  3. 03AutoCAD

    In AutoCAD

    Data extraction and COUNT

  4. 04Civil 3D

    In Civil 3D

    Pipes, structures and pay items

  5. 05Limits

    What's missing

    Several sources, codes, waste and changes

  6. 06Automation

    Dynamo or a plugin

    Two ways to automate it

  7. 07Zeist

    How we do it

    A plugin with your purchasing format

Both come from the same model, but they answer different questions:

Bill of materialsQuantity takeoff
What it's forBuying or fabricatingEstimating and paying for work
How it's groupedBy material, size and supplier codeBy estimate line item
UnitsPurchase units: sticks, sheets, bags, eachItem units: LF, SF, CY, lb
WasteAddedUsually not

That's why a quantity takeoff rarely works as a shopping list, or the other way around. We cover the takeoff in automated quantity takeoff.

Both are on the View tab, Create panel:

  • Schedule/Quantities. Lists the elements of a category with the fields you pick: type, size, length, count. Clear the option to itemize every instance and it groups identical elements and counts them.
  • Material Takeoff. Adds up the area and volume of each material in the layers: wall concrete, floor finishes, insulation.

Schedules support calculated values: a formula can add waste or turn feet into sticks. You have to set that up in every schedule and every project.

To get it into Excel, File › Export › Reports › Schedule writes a delimited text file that Excel opens. It doesn't produce a formatted Excel workbook: Dynamo or a plugin does that. We cover it in exporting Revit schedules to Excel.

The limit: each schedule looks at one model. If architecture, structure and MEP are separate models, that's three lists someone combines by hand.

In AutoCAD, the list comes from blocks: their names and attributes.

Data extraction (DATAEXTRACTION). A wizard that reads one or more drawings, picks the blocks and their properties or attributes, and puts the result in a table in the drawing or in an external file, such as Excel or CSV. The extraction is saved as a template you can rerun, and the table flags when the data has changed.

COUNT, since AutoCAD 2022. It counts the blocks in the drawing, flags duplicated or exploded ones and inserts a table with the counts. Since AutoCAD 2023 it can also count within an area. The table doesn't update on its own: you save or regenerate.

The list is only as good as the blocks. If a valve block has no code, diameter and pressure attributes, there's nothing to pull. And if someone exploded a block, it drops out of the count.

In water, sewer and storm networks, the parts are already objects with sizes:

  • Pipe and structure tables. They list each pipe with diameter, material and length, and each manhole or inlet with its data.
  • Pay items (QTO). On the Analyze tab, QTO Manager assigns codes to pipes and structures. Assign them in the parts list and every new part is tagged automatically. Then you generate a quantity report by pay item.

Set how length is measured, for example in 3D and between the inside faces of structures, and check the report against the objects: it doesn't always come out as expected.

What's missing: fittings such as bends, tees and reducers aren't always modeled, and the list doesn't know the stock length each pipe is bought in. We cover it in Civil 3D pipe networks and fittings.

All of the above counts and measures. A real order needs more:

  • Several sources. Revit models by discipline, AutoCAD drawings and Civil 3D networks in one list.
  • Your codes. Inventory or supplier codes aren't in the model, and every company uses its own.
  • Stock lengths. Rebar, pipe sold by the stick, full sheets: purchases round up to what the supplier sells.
  • Waste by material. It isn't the same for rebar, tile or cable.
  • Purchase units. Feet to sticks, cubic yards to bags, pounds to bars.
  • What changed. Compare against the last list and order only the difference.

With Dynamo, in Revit and Civil 3D. A script reads the elements and their parameters, groups them, applies formulas and writes an Excel file. It's quick to build and good for testing the rules. Plain AutoCAD, without Civil 3D, doesn't include Dynamo.

With a plugin. A button on the top toolbar that reads every model, assigns each element its code, applies the rules for stock lengths, waste and units, writes the list in your format and compares it with the previous one. It works in Revit, AutoCAD and Civil 3D, because all three have an API.

CriterionPluginDynamo script
Time to a working toolWeeksDays
Revit, AutoCAD and Civil 3DAll threeRevit and Civil 3D
Several models in one passYesPossible, harder to maintain
Comparison with the last orderYesNeeds extra logic
Best forEvery orderTesting the rules

The full comparison is in Dynamo or C# for Civil 3D and Revit.

We build custom plugins for Revit, AutoCAD and Civil 3D. For the bill of materials, a typical plugin:

  • Reads every source in the project: Revit models, AutoCAD drawings and Civil 3D networks.
  • Assigns your code to each element through a lookup table your team maintains.
  • Applies your rules: stock lengths, waste by material and purchase units.
  • Writes the list in your Excel format, by discipline, work area or order.
  • Compares it with the last list and flags what was added, removed or changed.
  • Reports what it couldn't classify, such as an element without a code or an exploded block.

How we work:

  1. Diagnosis (1 week, free): we look at how you build the list today and write down the rules.
  2. Prototype (1 to 2 weeks): we validate the logic on one of your projects.
  3. Development (2 to 4 weeks): the plugin, tested on your own models.
  4. Installation: an installer for the whole firm, a button on the top toolbar, a manual and documentation.
  5. Support: updates with every new release of Revit, AutoCAD or Civil 3D.

The source code belongs to your company: the plugin is yours.

Frequently asked questions about bills of materials in Revit, AutoCAD and Civil 3D

Use a schedule, from the View tab's Create panel, that lists the category with its types and sizes without itemizing every instance, so identical elements are grouped and counted, or a material takeoff to add up areas and volumes by material. File › Export › Reports › Schedule writes delimited text that Excel opens.


Technical note: the options apply to Revit 2024, AutoCAD 2024 and Civil 3D 2024 and later; COUNT has existed since AutoCAD 2022.

Talk to an engineerReply today · No commitment