I’ve spent years creating and maintaining Revit families. Getting a family to work properly is one part of the job. Keeping the information inside it useful over time is another, and that work is easy to underestimate.
A family might be finished today. Then the product information changes, a new parameter is required, or someone needs the same update applied across the library.
None of that sounds particularly difficult. Often it isn’t, when you’re dealing with one file. But a folder full of families is a different matter.
“We just need to update one parameter”
Take a text parameter that needs to be populated across a library.
Some families already have the correct value. Others have the parameter, but it’s empty. A few don’t have it at all. There may also be several types in a family, each with information that needs to stay different.
So what exactly should the update do?
Replacing every value could overwrite useful information. Filling only the empty values won’t help the families where the parameter is missing. Adding the parameter everywhere doesn’t solve the question of what should go into it.
Before making the change, somebody has to look at what is actually there. That is a substantial part of library maintenance, even though it is not usually the part we think of as difficult.
Parameter removal needs particular care. Something that looks unnecessary in a parameter list may still affect how the family behaves. I wouldn’t want a batch tool making that decision just because it found a matching name.
What I want to know before pressing Apply
For me, the first useful result from a batch tool is a clear picture of the files I’m about to work on.
I want to see which families contain the parameter, what values are already populated and where the exceptions are. Then I can decide whether the task is to fill gaps, replace values or leave certain files alone.
A preview is useful when it helps me make that decision. Which files will change? Which will be skipped? Is there anything that needs a closer look?
Those details matter more to me than a message saying that a batch has completed successfully.
I also prefer to keep the changed files separate from the originals. It makes comparison easier and leaves a way back if something isn’t right. That doesn’t make the output automatically correct, of course. It still needs checking.
The final step is back in Revit: open the output, look at the relevant types and values, and check the family’s behaviour where the changes could affect it. Saving a file successfully and producing a family that is ready to use are not quite the same thing.
Excel can make some of this work easier to review, particularly when comparing values across families and types. But exporting a spreadsheet is only part of the workflow. We still need to understand what will happen when those edits are brought back into the files.
That’s why I’m cautious about judging automation only by how fast it runs. If I have to spend the afternoon figuring out what it changed, I haven’t necessarily saved much time.
Why I started building AltioraBIM
These are some of the reasons I started developing AltioraBIM, my Revit family automation and batch management tool.
I wanted a workflow where I could review the content, see the proposed changes and write the results to separate copies. The aim is to take some of the repetitive work out of maintaining a library without making the process harder to follow.
There will always be decisions that need somebody who understands the content. I’m not trying to remove that judgement. I’d rather make it easier to see where it is needed.
More about the project: https://altiorabim.com/
I’d be interested to hear how other people handle this side of the work. What takes more effort in your library: creating new families, or keeping the existing ones up to date?