AUTODESK REVIT • FAMILIES AND PARAMETERS

Type vs. Instance Parameters — Edit type vs instance parameters and understand impact

Master how changing a single parameter can reshape one element or transform every instance of its kind.

Historical Context & Motivation

Before parametric modeling existed, architects and designers who wanted to change a door's width on a construction drawing had to erase every occurrence of that door and redraw it—a laborious, error-prone process that could consume hours of production time. The concept of parametric families arose from the desire to embed intelligence into building components so that a single edit could propagate logically throughout an entire project. Understanding this lineage clarifies why Autodesk Revit distinguishes between type parameters and instance parameters—two mechanisms that control the scope of change within a Building Information Model.

1963
Ivan Sutherland's Sketchpad
Sutherland's MIT thesis demonstrates constraint-based graphical editing, the intellectual ancestor of parametric design. Objects defined by geometric constraints could be modified by adjusting a single variable.
1982
AutoCAD 1.0 Launches
Autodesk releases AutoCAD, bringing computer-aided drafting to personal computers. However, elements remain purely geometric—lines and arcs with no embedded intelligence or relational parameters.
1997
Parametric Technology in AEC
Charles River Software (later Revit Technology Corporation) begins developing a parametric building modeler, inspired by Pro/ENGINEER's parametric approach to mechanical parts, aiming to bring the same logic to architecture.
2000
Revit 1.0 Released
Revit introduces parametric families with distinct type and instance parameters, enabling designers to manage both global product definitions and per-placement variations within a single model.
2002–Present
Autodesk Acquisition & BIM Adoption
Autodesk acquires Revit and integrates it into its AEC portfolio. The type-vs-instance paradigm becomes an industry standard as BIM adoption accelerates globally, fundamentally changing how design firms organize building data.

The central question that parametric families answer is deceptively simple: When I change a property of a building element, should that change affect every element of the same kind, or only the specific element I selected? Revit's answer—splitting parameters into types and instances—provides the granular control that makes BIM powerful for design iteration, documentation, and fabrication alike.

Core Principles & Definitions

In Revit's data architecture, every element placed in a project is an instance of a family type. A family type is a template that defines shared characteristics—dimensions, materials, and behavioral rules—while each instance is a concrete placement in the model with its own location, orientation, and instance-specific data. Parameters are the named variables that store this information, and their classification as type or instance determines the scope of any edit you make.

1

Family

The broadest category—a Revit family is a class of building elements (e.g., "Single-Flush Door"). It contains the geometric logic, parametric rules, and visual representations shared by all members.
2

Type

A specific variant within a family defined by its type parameter values (e.g., a 900 mm × 2100 mm single-flush door). Changing a type parameter updates every instance of that type throughout the project simultaneously.
3

Instance

A single placed occurrence of a type in the model. Instance parameters—such as the sill height of a window or the offset from a level—apply to that particular placement only, leaving all sibling instances untouched.
4

Type Parameter

A variable attached to the type definition. Editing it in the Type Properties dialog propagates the change to every instance sharing that type. Examples include nominal width, material, and manufacturer.
5

Instance Parameter

A variable attached to an individual placement. Editing it in the Properties palette affects only the selected element. Examples include offset from level, orientation (mirrored), and comments.
KEY TAKEAWAY
Think of a type parameter as the recipe in a cookbook and an instance parameter as the personal seasoning you add when you actually cook the dish. If you revise the recipe (type), every cook who follows it produces the updated version. But if you add a pinch more salt to your bowl (instance), only your portion changes. In Revit, this distinction lets you control whether a change is project-wide or element-specific.

Visual Explanation — Type vs. Instance Hierarchy

The diagram illustrates the three-tier hierarchy of Family → Type → Instance. Editing a type parameter (pink box, left) propagates the change to every instance of that type, while editing an instance parameter (green box, right) modifies only the selected element. Dashed lines connect each type to its individual instances, showing how a single type definition spawns multiple placements.

Notice how the hierarchy fans outward from abstraction to specificity. The family sits at the top as the broadest container—it holds the geometric engine, the constraints, and the parametric rules that define how the element behaves. Beneath it, each type freezes certain values (width, height, material) into a named configuration that serves as a reusable template. Finally, each instance is a concrete occurrence in the model—tied to a specific host wall, assigned to a specific level, and carrying its own per-placement data like offset or orientation. This layered architecture is what allows Revit to manage thousands of elements efficiently while still giving designers element-by-element control when they need it.

How It Works — Editing Type vs. Instance Parameters

When you select an element in Revit and open the Properties palette (the panel typically docked on the left side of the interface), you see that element's instance parameters—values unique to that particular placement. To access the type parameters, you click the Edit Type button at the top of that palette, which opens the Type Properties dialog. This two-panel interface is the fundamental mechanism through which Revit separates local edits from global ones, and understanding when to use each panel is essential to effective parametric modeling.

Editing Type Parameters

The Type Properties dialog displays every parameter classified as a type parameter for the selected family type. When you modify a value here—say, changing the Width of a door from 900 mm to 1000 mm—Revit applies that change to every single instance of that type across the entire project. If your model contains forty doors of that type, all forty update simultaneously. This is powerful for maintaining design consistency, but it demands caution: an unintended type edit can ripple through hundreds of elements before you realize what happened. Revit does warn you with a count of affected instances when applicable, but cultivating awareness of this propagation behavior is a core professional skill.

Editing Instance Parameters

Instance parameters appear directly in the Properties palette when an element is selected. Changes here affect only the selected element (or the set of selected elements, if you have multiple items highlighted). Typical instance parameters include Level, Offset from Level, Mirrored, and Comments. These values inherently depend on the element's unique position in the model—no two doors necessarily share the same sill height or the same wall host, so it makes logical sense for these to vary per instance.

Duplicate Type Workflow

A critical workflow arises when you need a variation that differs from an existing type in one or more type parameters but want to preserve the original. Rather than editing the existing type (which would change every instance), you duplicate the type first. In the Type Properties dialog, clicking Duplicate creates a new type that inherits all current values. You then rename it, adjust the differing parameters, and assign the new type to the relevant instances. This preserves design intent for the original type while accommodating the variation.

Common Pitfall
If you forget to duplicate a type before editing its parameters, every instance of that type in the project will change. Use Ctrl + Z (Undo) immediately if you notice an unintended global change. Developing the habit of always asking yourself "Do I want this change to affect all elements of this type?" before clicking OK will save you significant rework.

Detailed Breakdown — Common Parameters by Category

Different Revit family categories assign parameters to the type or instance bucket based on the logic of how that property naturally behaves in a real building. A door's nominal width is a product specification—it belongs to the type. A door's position in a wall depends on the specific wall it is hosted in—it belongs to the instance. The following table maps commonly encountered parameters across several family categories, showing where each parameter lives and why that classification makes sense.

Common type and instance parameter assignments across five family categories
Family CategoryTypical Type ParametersTypical Instance Parameters
DoorsWidth, Height, Material, Fire Rating, Frame Type, ManufacturerLevel, Sill Height, Head Height, Mirrored, Comments, Mark
WindowsWidth, Height, Glazing Type, Frame Material, U-Value, SHGCLevel, Sill Height, Head Height, Offset from Host, Comments
WallsStructure (layers and thicknesses), Function, WrappingBase Constraint, Top Constraint, Base Offset, Unconnected Height, Location Line
FurnitureWidth, Depth, Height, Material/Finish, Model, CostLevel, Offset from Level, Rotation, Comments
ColumnsCross-section dimensions, Material, Structural usageBase Level, Top Level, Base Offset, Top Offset, Rotation
This decision flowchart guides you through the thought process of choosing between an instance edit and a type edit. The diamond at the center asks the key question: should this change apply to all instances of this type? The right branch includes the critical sub-decision of whether to duplicate the type first to preserve the original configuration.

The decision diagram above encapsulates the mental model you should internalize every time you modify a parameter in Revit. Beginning designers often skip the "Does this change apply to all?" question and inadvertently alter a type parameter when they meant to adjust only a single element. Conversely, experienced practitioners leverage type edits strategically—for example, updating a window family's glazing performance data across an entire project in seconds rather than selecting each window individually.

Worked Example — Editing Door Parameters in a Gallery Project

Imagine you are designing a small art gallery in Revit. The gallery has twelve interior doors, all currently using the type "Single-Flush: 900 × 2100 mm" with an Oak material finish. The client requests two changes: (1) all interior doors should be widened to 1000 mm to improve accessibility, and (2) one specific door leading to a service corridor should have its sill height raised by 50 mm to clear a floor transition. Let's walk through both edits step by step.

Editing a Type Parameter — Widening All Doors
1
Step 1 — Select Any Instance of the TypeClick on any one of the twelve "Single-Flush: 900 × 2100 mm" doors in your floor plan view. The Properties palette on the left will display that door's instance parameters—Level, Sill Height, Comments, and so on. At the top of the palette, you'll see the type name in a dropdown selector.
2
Step 2 — Open the Type Properties DialogClick the Edit Type button. The Type Properties dialog opens, showing parameters such as Width, Height, Frame Type, and Material. Notice that Width is currently set to 900 mm.
3
Step 3 — Decide Whether to DuplicateSince the client wants all interior doors widened, you do not need to duplicate the type—you want every instance to update. If only some doors needed the wider dimension, you would duplicate first.
4
Step 4 — Change the Width ParameterIn the Type Properties dialog, change the Width value from 900 mm to 1000 mm and click OK.
All twelve doors update to 1000 mm wide. The type name may need to be manually renamed to reflect the new dimension—Revit does not automatically rename types.
5
Step 5 — Verify in ScheduleOpen a Door Schedule to confirm that all twelve doors now report a width of 1000 mm. This verification step is essential to ensure no doors were accidentally assigned to a different type.
Editing an Instance Parameter — Adjusting One Door's Sill Height
1
Step 1 — Select the Specific DoorClick on the single door leading to the service corridor. The Properties palette displays this door's instance parameters.
2
Step 2 — Locate the Sill Height ParameterIn the Properties palette, scroll to the Sill Height field under the Constraints group. It currently reads 0 mm (flush with the level).
3
Step 3 — Change the ValueChange the Sill Height from 0 mm to 50 mm and press Enter or click Apply.
Only the selected door shifts upward by 50 mm. The remaining eleven doors retain a sill height of 0 mm because Sill Height is an instance parameter.

Strengths & Limitations — Type vs. Instance Parameters

Side-by-side comparison of type and instance parameter behaviors
CriterionType ParametersInstance Parameters
Scope of changeGlobal—affects every instance of that type in the projectLocal—affects only the selected element(s)
Efficiency for bulk editsVery high—one edit, hundreds of updatesLow—must select and edit each element individually or use Select All Instances
Risk of unintended changesHigh—accidental type edits cascade project-wideLow—changes are contained to the selection
Scheduling / taggingReported identically for all instances of a type in schedulesCan vary per row in a schedule, enabling element-specific annotations
Typical use casesProduct dimensions, materials, manufacturer data, structural propertiesPlacement location, offset, orientation, unique identifiers (Mark), comments
Where to editType Properties dialog (Edit Type button)Properties palette (direct selection)
KEY TAKEAWAY
In professional practice, type parameters function like the master print settings in a lithography studio—once you adjust the plate, every print that comes off the press reflects the change. Instance parameters are like hand-coloring individual prints after they leave the press—each print can receive unique treatment without altering the plate itself. Knowing which lever to pull, and when, is the difference between efficient BIM management and chaotic rework.

Connection to Advanced Topics — Shared, Project, and Global Parameters

The type-vs-instance distinction is the foundation of Revit's parameter system, but the platform offers additional layers of complexity that build on this foundation. As you advance in BIM authorship, you will encounter shared parameters, project parameters, and global parameters—each of which can be assigned as either type or instance. Understanding the base-level distinction makes these advanced tools immediately more approachable.

How type-vs-instance extends to Revit's broader parameter ecosystem
Parameter CategoryScopeType or Instance?Key Characteristic
Family Parameters (built-in)Within one familyEither—defined in Family EditorEmbedded in the .rfa file; cannot be scheduled across families without being shared
Shared ParametersAcross families and projectsEither—specified when addedStored in external .txt file; can appear in schedules and tags across multiple families
Project ParametersOne project onlyEither—specified when createdAdded to categories within the project; schedulable but not taggable unless shared
Global ParametersOne project, no categoryNeither—project-level constantsNamed values (like a corridor width standard) that can drive other family parameters through formulas

When creating custom families in the Family Editor—a skill you will develop as you progress in architectural visualization and design technology courses—you will make deliberate decisions about whether each parameter should be type or instance. For example, if you are authoring a custom gallery display case family, the overall cabinet dimensions (width, depth, height) might be type parameters so that all cases on one floor share a uniform appearance, while an internal shelf count could be an instance parameter if different cases need to accommodate artworks of varying sizes. This forward-looking perspective—designing the parameter structure before modeling the geometry—is a hallmark of mature BIM practice.

Practice Problems

PROBLEM 1CONCEPTUAL
A Revit project contains 30 windows of type "Casement: 600 × 1200 mm." You select one window and change its "Sill Height" from 900 mm to 1050 mm. How many windows in the project are affected, and why?
PROBLEM 2BASIC CALCULATION
You have a project with three door types: Type A (25 instances), Type B (40 instances), and Type C (15 instances). You open Type B's Type Properties and change the Material parameter from "Pine" to "Walnut." How many doors display the Walnut material after this edit? What is the total number of doors still showing Pine?
PROBLEM 3INTERMEDIATE
A design team discovers that six out of twenty "Fixed: 1500 × 1800 mm" windows in a gallery need a tinted glass finish, while the remaining fourteen must keep clear glass. Outline the correct sequence of steps to accomplish this without losing the clear-glass configuration for the fourteen unchanged windows.
PROBLEM 4APPLIED
You are preparing a door schedule for a building permit submission. The schedule must show each door's type-defined width and height, its instance-specific level, and a unique "Mark" identifier for each door. A colleague asks: "Can I just put the Mark in the type properties so it fills in automatically?" Explain why this would be problematic and what parameter classification the Mark should have.
PROBLEM 5CRITICAL THINKING
You are authoring a custom Revit family for a modular exhibition wall panel used in gallery installations. The panel has the following properties: overall width, overall height, surface material, number of integrated lighting slots, and a comments field for the curator's notes. For each property, argue whether it should be a type parameter or an instance parameter, and justify your reasoning based on how the panel would be used across a real gallery project with multiple rooms.

Summary — Type vs. Instance Parameters

Revit's parameter system is organized around a three-tier hierarchy: Family (the broadest class of element), Type (a named variant defined by its type parameters such as dimensions, materials, and performance data), and Instance (a single placement carrying instance parameters like level, offset, orientation, and unique identifiers). Editing a type parameter in the Type Properties dialog propagates the change to every instance of that type across the entire project, making it powerful for bulk updates but risky if performed unintentionally. Editing an instance parameter in the Properties palette affects only the selected element, providing precise per-element control.

The key professional habit to develop is pausing before every edit to ask: "Should this change affect all instances of this type, or just this one?" When you need a variation that differs from an existing type but want to preserve the original, the correct workflow is to duplicate the type before modifying its parameters. This foundational understanding extends naturally into advanced topics such as shared parameters, project parameters, and global parameters—all of which inherit the type-vs-instance classification and amplify its power across families and projects.

Varsity Tutors • Autodesk Revit • Type vs. Instance Parameters — Edit type vs instance parameters and understand impact