Cost take-off in Revit using Dynamo


Very new to Dynamo so this may be very simple but any help appreciated. I am struggling to use Dynamo to calculate, and export to Excel, basic cost analysis on walls, windows, doors etc.

Within Revit I am able to get the cost analysis into a schedule - I would just like to be able to do the same calculation using dynamo.

Any help (with screenshots) would be really appreciated!

Thanks in advance,

You would need to extract all walls (or other things) in your Revit Environment, then extract the correct parameter which contains the cost. Then you would have a list with costs for each element which you extracted. This you can write away to Excel.

Let me set something up for you :slight_smile:

Write To Excel.dyn (25.8 KB)

Hi Daan,

Thanks so much! I will test this later!

Do you know if this would export to excel just the Area value though? Or would it be able to use the Area value and the Cost parameter (which is a Type parameter, not an instance parameter) - is there a way of using dynamo to calculate the math formula to work out the actualy cost /sqm of that wall. Within revit the calc is ( Area * Cost / 1 ).

Just dont know how to make dynamo do that maths, and then export the info.

Thanks again, I really appreciate your help!

This graph would only show the area’s of each wall because i have only asked for each area.
(Because the example house does not have costs.)

And for the calculation how much each sqm cost is, is also quite simple to do.
First you would have a list with all the area’s, which we already have in this example.
Secondly, you would need to extract the costs of each element. Then you have 2 lists, both in the same order.

Then you can use the math nodes in Dynamo * and / to create a simple calculation for each wall.
Now you have a row with Area, Cost and Sqm cost.
Put these three into a excel file and that’s it :slight_smile:

I have some time now, let me build something for you

By the way, do you maybe have a small model with some walls in it where the Cost parameter is filled in because i do not have anything on hand at the moment :slight_smile:

I will do, in a couple of hours if that’s okay with you. I really am grateful for your support.

The default architectural house example in revit has all the walls in. If you added just a random cost figure in the type properties it might be enough to test in the meantime?

Thanks again, it’s very kind of you!


Yes that was exactly what i was working out for you:

Write To Excel.dyn (64.4 KB)

Hi Daan,

Thanks so much for your advice so far. My issue remains with my Cost parameter being fed in. I think its because the first part of the script relies upon ‘Category’ parameters, but Cost is a ‘Type’ parameter. I am struggling to get the corresponding cost for different wall types to feed in along with the wall type, and then perform the maths formula.

I see. Type parameters are locked in per wall type in this example. Because of this reason, we can extract each wall type from each element in our list. Like this:

Now we have the type for each wall, these can be the same for multiple walls. Now from these types, we can use again the “Element.Parameters” node to now get all parameters from this list which now represent all wall type parameters:

Now we use these parameters the same exact way as we use the other parameters for the area.

Hope this works for you, and if you need help with anything else let me know :slight_smile:

Write To Excel 10-01-2020.dyn (68.8 KB)

And by the way, the category nodes are just a way to get easily all the walls in a project. The parameters are from each wall.