Revit Family Parameter Generator
Plan a family’s parameters in one table: name, type, group, type or instance, shared, formula and values for each family type. Download a shared parameter file with GUIDs, a type catalog to load only the sizes you need, and a Python script that adds everything to the open family in Revit 2022 or later. Check an existing family’s parameters first with the RFA family viewer.
Shared parameter file with GUIDsType catalog .txtPython script for pyRevit and DynamoDoor, window, MEP and asset presetsExcel and CSV
The type catalog is named after it.
Names Revit already has in the family, such as Width and Height in a door template, are kept and only get values. A parameter with a formula takes no values.
One row per family type. A blank cell uses the parameter's default value.
Ready to export
Tab-separated .txt with a GUID for each shared parameter. In Revit: Manage, Shared Parameters, Browse.
Save it next to the .rfa with the same name. Revit then lets you pick types when you load the family.
Adds the parameters, formulas and types to the open family. Run it in pyRevit, RevitPythonShell or a Dynamo Python node, Revit 2022 or later.
Files follow Autodesk's shared parameter and type catalog formats. The shared parameter file is saved as UTF-16 like Revit writes it. Test a new family in a copy of your project before you roll it out. Everything runs in your browser, and your table is kept in this browser only.
Make family parameters in three steps
List the parameters
Start from a preset or an empty table. Give each parameter a name, a type such as Length, Yes/No or Air Flow, the group it shows under, and whether it is a type or instance parameter and shared.
Add the types
On Types and values, add one row per family type and fill in the sizes and data. Blank cells take the parameter’s default value.
Download and load
Use the shared parameter file in Manage โบ Shared Parameters, save the type catalog next to the .rfa, or run the Python script in the Family Editor to create the parameters, formulas and types for you.
What each download is for
| File | Use it to |
|---|---|
| Shared parameter file (.txt) | Add the same parameters to families and projects so they can be scheduled and tagged. Keep one file per office and never change a GUID once it is in use. |
| Type catalog (.txt) | Pick only the types you need when you load a family with many sizes. It must have the same name as the .rfa and sit in the same folder. |
| Python script (.py) | Create the parameters, formulas and types in the open family. Run it with pyRevit or RevitPythonShell, or paste it into a Dynamo Python node. |
| Excel or CSV | Review the parameter list with the team or keep it as the family standard. |
How a type catalog is written
The first line lists the parameters as Name##TYPE##UNITS, after a leading comma. Each line after it is a type name followed by its values in the same order:
,Width##LENGTH##MILLIMETERS,Height##LENGTH##MILLIMETERS,Has Vision Panel##OTHER## 900 x 2100,900,2100,0 1200 x 2400,1200,2400,1
| Parameter type | Declared as |
|---|---|
| Length | LENGTH##MILLIMETERS (or CENTIMETERS, METERS, FEET, INCHES) |
| Area, Volume | AREA##SQUARE_METERS, VOLUME##CUBIC_METERS |
| Angle | ANGLE##DEGREES |
| Text, Integer, Number, Material, URL, Yes/No | OTHER## (Yes/No as 1 or 0) |
| Currency | CURRENCY## |
Instance parameters and parameters driven by a formula are left out of the catalog.
Revit family parameter questions
Make it shared when you need to schedule it or show it in a tag, or when the same data must line up across families and projects, such as a fire rating or an asset code. A family parameter is enough for dimensions and switches that only drive the geometry. Shared parameters are matched by GUID, so keep the downloaded file and reuse it instead of making the parameter again.
Go to Manage โบ Shared Parameters, click Browse and open the downloaded .txt file. The parameters appear under the group name you set. In the Family Editor, open Family Types, click New Parameter, choose Shared parameter and Select. The file is saved as UTF-16, the same encoding Revit writes.
A type catalog only holds type parameters with values. Instance parameters and formula-driven parameters are left out, as are MEP and structural types such as air flow or electrical power, because Autodesk does not document their catalog keywords. The Python script still sets their values in the family.
Revit 2022 and later. It uses FamilyManager.AddParameter with ForgeTypeId groups and specs, which replaced the older BuiltInParameterGroup and ParameterType methods that Revit 2025 removed. Open the family in the Family Editor, then run the script; one Ctrl+Z undoes it. Parameters the family already has, such as Width in a door template, are kept and only get their values.
Yes. The shared parameter file and the script handle any language. The type catalog is saved as plain ASCII when it has only English text, and as UTF-16 otherwise. Test a family with non-English type names in your Revit version before you share it widely.
No. The files are made in your browser and the table is kept in this browser only. Download the Excel file to keep it or share it with your team.
Keep working with Mahelak tools
Need a custom tool, Dynamo script or Revit family?
Tell us about your project and we will send you a quote before any work starts.
