Autodesk & Fusion Guides

Revit Family Creation Automation: How It Works

Manufacturers and BIM teams often need hundreds of Revit families and thousands of types. Building them by hand is slow and inconsistent. Automation creates families from templates and product data, with the same standards every time.

Why automate families

  • Product ranges with many sizes and variants
  • Consistent parameters, naming, subcategories and materials
  • Fast updates when product data changes
  • Families in several Revit versions for different customers
  • Reliable data for schedules, specifications and COBie

Approaches

ApproachBest for
Master family + generated typesProducts that share one geometry with different dimensions
Type cataloguesVery large type counts loaded on demand
Families built from templatesMany distinct products with rule-based geometry
Parameter and standards updatesFixing or upgrading existing family libraries
Dynamo scriptsSmaller jobs run by BIM staff

The Family API

The Revit API can create a new family document from a template (.rft), add reference planes, dimensions and geometry, add family parameters, create types and set their values, then save the family or load it into a project. The FamilyManager class handles parameters and types.

Document famDoc = app.NewFamilyDocument(templatePath);
using (Transaction t = new Transaction(famDoc, "Create family"))
{
    t.Start();
    FamilyManager fm = famDoc.FamilyManager;
    FamilyParameter width = fm.AddParameter(
        "Width", GroupTypeId.Geometry, SpecTypeId.Length, false);

    FamilyType type = fm.NewType("600 x 400");
    fm.Set(width, 600 / 304.8);   // Revit stores lengths in feet
    t.Commit();
}
famDoc.SaveAs(outputPath);

Driving families from product data

The source of truth is usually a spreadsheet, product database or ERP. The automation reads each product, chooses the right template or master family, creates types, fills identity data such as manufacturer, model and URL, assigns materials, and names files to your standard. Re-running it after a data change updates the whole library.

Quality checks

Automation should also check its output: parameter names and groups, units, subcategories, level of detail, file size, flexing across all types, and whether families load cleanly into a test project. Catching errors here saves BIM coordinators time later.

Good family automation builds the family and proves it flexes, every time.

Revit versions

Families saved in a newer Revit version cannot be opened in older versions. Automation can build from the oldest supported version and upgrade as needed, or produce separate libraries per version.

Revit family services

See Revit family creation automation and Revit API and add-in development, and read Revit API development for BIM automation.

EM
ENGIMANDI Autodesk Team

We build add-ins, integrations and automation for AutoCAD, Inventor, Revit, Civil 3D, Vault, Fusion and Autodesk Platform Services.