Understanding Revit Parameters
How Revit parameters work, the differences between parameter types, and how to manage them effectively with Pyvoid.
Related tools
Understanding Revit Parameters
Parameters are the data backbone of a Revit model. Every wall height, door width, room name, and sheet number is stored as a parameter value. Understanding how parameters work - and how they break - is foundational knowledge for anyone managing BIM data.
Parameter Types
Revit has four distinct parameter systems. They look similar in the Properties panel but behave differently under the hood.
Built-in Parameters
Every Revit element has built-in parameters defined by Autodesk. These include Comments, Mark, Phase Created, Level, and hundreds of others. You cannot create, rename, or delete built-in parameters. You can only read and (in most cases) write their values.
Key behavior: Built-in parameters are always present on every element of a given category. A wall always has a Base Constraint parameter, whether you use it or not.
Project Parameters
Parameters you add through Manage > Project Parameters. These exist only in the current project file.
Key behavior:
- Bound to specific categories (e.g., "only Walls and Floors")
- Can be Instance or Type parameters
- Do not appear in schedules unless you explicitly add them
- Do not transfer between projects automatically
- Have no GUID - they are identified by name within the project
Common problem: Two projects with a parameter named "Department" may have different data types, different category bindings, or different instance/type settings. This causes headaches when transferring data or merging models.
Shared Parameters
Parameters defined in an external .txt file and referenced by GUID. Shared parameters solve the "same name, different definition" problem because the GUID provides a stable identity across projects.
Key behavior:
- Defined in a shared parameter file (
.txt) - Identified by GUID, not name
- Can appear in schedules and tags
- Transfer between projects with their GUID intact
- Multiple projects can reference the same definition
- Renaming the parameter in the shared file does not rename it in projects that already use it
Common problem: Organizations accumulate multiple shared parameter files over time. Parameters with the same name but different GUIDs appear in different projects, making data exchange unreliable.
Global Parameters
Project-level parameters that are not bound to elements but can drive dimensions and constraints. Introduced in Revit 2017.
Key behavior:
- Not bound to any category
- Can be referenced by dimensions as label parameters
- Useful for controlling multiple dimensions from a single value
- Cannot appear in schedules or tags
Instance vs. Type Parameters
Every parameter is either Instance or Type:
| Instance Parameter | Type Parameter | |
|---|---|---|
| Scope | Each element has its own value | All elements of the same type share one value |
| Example | Room Name (each room has a different name) | Wall Width (all "Generic - 8" walls are 8" wide) |
| Editing | Change one element without affecting others | Change one element and all elements of that type change |
| Schedules | Shows one row per element | Shows one row per element but the value repeats |
| When to use | Data that varies between elements | Data that defines the type |
Common mistake: Making a parameter that should be Instance into a Type parameter (or vice versa). Changing this after data has been entered requires migrating values - Parameter Jammer can automate this migration.
How Parameters Break
Duplicate Parameters
The most common parameter problem. It happens when:
- Two people add a project parameter with the same name independently
- A shared parameter is added twice from different shared parameter files
- A family is loaded that defines a parameter already present in the project
Symptoms: Schedules show blank values for some elements even though the Properties panel shows data. This happens because the schedule is reading Parameter A while the Properties panel shows Parameter B - both named "Department" but with different internal identities.
Fix: Parameter Jammer's audit detects duplicates and can merge them, remapping values to a single surviving definition.
Orphaned Parameters
Parameters bound to categories with no instances, or parameters that were once used by a family that has since been deleted from the project.
Symptoms: The parameter list in Manage > Project Parameters grows over time but nobody knows which parameters are still in use.
Fix: Parameter Jammer's audit identifies orphaned parameters and can delete them safely after confirming zero usage.
GUID Conflicts
Two shared parameters with the same GUID but different names or data types. This can happen when shared parameter files are edited manually or when two independent files coincidentally generate the same GUID (rare but possible).
Symptoms: Unexpected parameter behavior when loading families or transferring standards between projects.
Fix: Parameter Jammer's GUID resolver detects conflicts and can reassign GUIDs to resolve ambiguity.
Managing Parameters at Scale
For projects with hundreds of parameters, manual management through Revit's dialogs is impractical. The Manage > Project Parameters dialog shows parameters one at a time with no filtering, no bulk operations, and no audit capability.
Using Parameter Jammer
Parameter Jammer provides a unified interface for the full parameter lifecycle:
- Browse all parameters in a sortable, filterable grid
- Audit for duplicates, orphans, naming violations, and GUID conflicts
- Create parameters with automatic shared parameter file management
- Edit values in bulk across hundreds of elements
- Map parameter values between different parameters or types
- Migrate parameters between instance and type, or between categories
- Delete with dependency checking to prevent accidental data loss
Using DataLink for Value Editing
For teams more comfortable editing data in Excel, DataLink provides a roundtrip workflow:
- Select elements and export their parameter values to Excel
- Edit values in the spreadsheet (formulas, find/replace, VLOOKUP from standards)
- Import the edited spreadsheet back into Revit with change preview
- Review and confirm the proposed changes
This is particularly useful for populating hundreds of Room parameters from a space program spreadsheet, or for correcting equipment tag numbers from a coordination document.
Quick Reference
| Question | Answer |
|---|---|
| Where are project parameters stored? | In the project file (.rvt) |
| Where are shared parameters defined? | In a shared parameter file (.txt) |
| Can I rename a shared parameter? | In the file, yes. In the project, use Parameter Jammer. |
| How do I find duplicate parameters? | Parameter Jammer > Audit |
| How do I bulk-edit parameter values? | Bulk Editor or DataLink |
| How do I transfer parameters between projects? | Transfer Standards or shared parameter file |
| Instance or Type? | If the value varies per element, Instance. If it defines the type, Type. |
See Also
- Parameter Lifecycle Management - step-by-step workflow for auditing and editing parameters
- Model Setup Checklist - parameter setup as part of new project configuration
- Data Panel - full reference for data management tools
Last updated: 2026-04-16