AUTODESK REVIT • FAMILIES AND PARAMETERS

Placing & Swapping Families — Load families and place instances; swap types

Master the workflow of loading Revit families into projects and swapping types to iterate designs efficiently.

Historical Context & Motivation

Before parametric Building Information Modeling (BIM) tools arrived, architects and designers relied on drafted symbols—blocks in AutoCAD or hand-drawn legends—to represent real-world building components such as doors, windows, and furniture. Every unique object required its own drawing, and substituting one fixture for another meant erasing geometry and redrawing from scratch, a labor-intensive process that scaled poorly as projects grew in complexity. The concept of a reusable, data-rich family emerged from the recognition that most building elements share structural logic—a door is always a door, even when its width, material, or panel style varies—and that encoding that logic once should let designers produce infinite variations without redundant work.

Autodesk's development of Revit in the late 1990s crystallized this idea into a family-based parametric system in which every element placed in a model is an instance of a family type, governed by parameters that control its geometry, materiality, and metadata. This paradigm shift paralleled broader trends in object-oriented design thinking across software engineering and product design, where encapsulation and reusability became cardinal principles. For Visual Arts students accustomed to thinking about iterative form-making—swapping palettes, adjusting proportions, or testing alternative compositions—the family system offers an analogous digital toolkit: load once, place many, swap freely.

1982
AutoCAD Blocks Emerge
Autodesk releases AutoCAD with the block concept—reusable 2-D symbol groups that can be inserted multiple times. Blocks save drafting time but carry no parametric intelligence or 3-D awareness.
1997
Parametric Modeling Takes Root
Charles River Software (later Revit Technology Corporation) begins developing what would become Revit, envisioning an architecture tool built entirely around parametric, data-rich families rather than static geometry.
2002
Autodesk Acquires Revit
Autodesk acquires Revit and begins integrating its family system into mainstream architectural practice. The .rfa file format becomes the standard container for loadable families.
2010–2015
Cloud Family Libraries & Content Ecosystem
Manufacturers begin publishing BIM-ready families online. Platforms like BIMobject and Autodesk Seek let designers load families directly, dramatically expanding the variety of types available for placement and swapping.
2020s
Generative Design & Family Automation
Dynamo scripts and generative design workflows automate family placement and type swapping at scale, enabling parametric exploration of thousands of design options from a single family definition.

The central question this lesson addresses is deceptively practical: how do you bring external family files into a Revit project, place instances in your model, and then swap those instances to different types when your design direction shifts? Answering that question well means understanding the hierarchical relationship between families, types, and instances—a relationship that underpins nearly every operation you will perform in Revit.

Core Principles & Definitions

Every element you see in a Revit model—from structural columns to custom art installations—belongs to a family. A family is essentially a template that defines an element's geometry, behavior, and available parameters. Within each family live one or more types (sometimes called family types), which are specific size-and-property presets—think of them as stylistic variations on a theme. When you place an element in a view, you create an instance, a concrete occurrence of that type at a particular location, elevation, and host. This three-tier hierarchy—family → type → instance—governs how data flows through a Revit project and determines what you can change globally versus locally.

1

Family (.rfa)

A reusable definition stored as a .rfa file. It contains the parametric geometry, reference planes, connectors, and parameter definitions. Families are categorized as system (built into Revit, e.g., walls), loadable (externally authored, e.g., furniture), or in-place (project-specific one-offs).
2

Type

A named preset within a family that locks specific parameter values—dimensions, materials, visibility settings. For example, a 'Single-Flush' door family might contain types '0864 × 2134 mm' and '0762 × 2032 mm.' Changing a type parameter updates every instance of that type in the project.
3

Instance

A placed occurrence of a type in the model. Each instance has its own location, orientation, and instance-level parameters (such as a door's flip state or a column's offset). Instance changes affect only that single element—other instances of the same type remain unaltered.
4

Loading a Family

The act of importing a .rfa file into a project so its types become available for placement. Loading copies the family definition into the project file; subsequent edits to the external .rfa do not automatically propagate unless you reload.
5

Swapping Types

Selecting one or more placed instances and reassigning them to a different type—either within the same family or from a different loaded family of the same Revit category. This is the primary mechanism for rapid design iteration without deleting and re-placing elements.
KEY TAKEAWAY
Think of a Revit family like a master mold in ceramics: the mold defines the overall form (family), each glaze variation is a type, and every pot you actually pull from the mold and set on a shelf is an instance. Loading a family is like bringing a new mold into your studio; swapping types is like deciding to apply a different glaze to an existing pot without re-throwing it on the wheel.

Visual Explanation — The Family Hierarchy

The diagram shows a single family (purple outline) branching into three types (cyan, pink, amber), each spawning instances (filled boxes). The bottom panel illustrates a swap: Instance 4 changes from Type B to Type C while its position in the model remains fixed.

The diagram above visualizes the core data model you interact with every time you use Revit. Notice that the family occupies the top tier, acting as the structural container for all geometric and parametric logic. The types beneath it are essentially named configurations—each one locks a particular set of type parameters (dimensions, material assignments, visual overrides) while inheriting the shared logic of the parent family. At the lowest tier, instances are the tangible objects placed in your model views. They carry instance parameters—values unique to that specific placement, like orientation and elevation offset. The swap panel at the bottom demonstrates the key insight: reassigning an instance's type changes its inherited properties without disrupting its spatial position or host relationship, which makes type swapping an extraordinarily efficient design iteration tool.

How It Works — The Load, Place, and Swap Workflow

Step 1: Loading a Family into the Project

Loading a family begins with navigating to Insert → Load Family on the Ribbon, or by using the keyboard shortcut. A file browser opens, pointing by default to the Revit content library installed with your software. You can also browse to manufacturer libraries downloaded from sites like BIMobject, NBS Source, or Autodesk's own content delivery network. When you select a .rfa file and click Open, Revit reads the family definition—its parametric skeleton, embedded types, and metadata—and copies it into the current project's internal database. From this point forward, the loaded family and its types appear in the Project Browser under the corresponding category node (e.g., Doors, Furniture, Generic Models). Importantly, loading does not automatically place any instances; it simply makes the family available for future placement.

⚠️ Overwrite vs. Preserve
If you load a family that shares the same name as one already in the project, Revit presents a dialog asking whether to overwrite the existing version (and all its types) or to cancel. Overwriting updates every placed instance of that family's types to reflect the new definition—powerful but irreversible without Undo. Pay close attention to this dialog in collaborative projects.

Step 2: Placing Instances

Once a family is loaded, you place instances through the Architecture (or Structure / Systems) tab, or more commonly by selecting Component → Place a Component for generic model families. The Type Selector dropdown in the Properties palette lets you choose which type within the loaded family you want to place. As you move your cursor into a plan, section, or 3-D view, Revit shows a preview of the element snapping to relevant hosts—walls for doors and windows, floors or ceilings for face-based families, and open space for freestanding components. A single click (or click-and-drag for hosted elements) creates the instance. Repeated clicks create additional instances, each independent in position but sharing the same type definition.

Step 3: Swapping Types

Swapping types is the operation that makes family-based modeling genuinely iterative. Select one or more instances in any view (use Ctrl+click for multi-selection, or filter selections by category). With the selection active, open the Type Selector dropdown in the Properties palette. It will display every type belonging to the same Revit category that is currently loaded in the project. Choose a different type, and Revit instantly reassigns the selected instances. Their positions, host associations, and instance-parameter values remain intact; only the type-level parameters—dimensions, materials, subcategory visibility—update to match the new type. This workflow is non-destructive and fully undoable, making it ideal for exploring design alternatives quickly during schematic and design development phases.

Top row: the three-stage workflow from loading to placing to swapping. Bottom panel: a simulated Properties palette showing the Type Selector dropdown with four available types. The pink-highlighted row is the currently assigned type; selecting a different row executes the swap.

Detailed Breakdown — Family Categories & Swap Compatibility

Not all families can be swapped with one another freely. Revit enforces swap compatibility through its category system. Every family belongs to exactly one category—Doors, Windows, Furniture, Generic Models, Lighting Fixtures, and so on—and the Type Selector only presents types from families within the same category. A door instance can be swapped to any loaded door type (even from a completely different door family), but it cannot be swapped to a window type because Windows is a separate category. Understanding categories is therefore essential when you plan which families to load: if you want maximum swappability, ensure all related design options are authored under the same Revit category.

Common family categories and their swap compatibility boundaries
Family CategoryTypical ContentHost RequirementSwap Scope
DoorsSingle-flush, double, sliding, pocket, bi-foldWall-hostedAny loaded Door type
WindowsCasement, fixed, double-hung, curtain wall panelsWall-hostedAny loaded Window type
FurnitureTables, chairs, desks, shelvingFreestanding or face-basedAny loaded Furniture type
Generic ModelsCustom sculptures, installations, site elementsVaries by templateAny loaded Generic Model type
Lighting FixturesPendant, recessed, sconce, track lightCeiling-hosted or freestandingAny loaded Lighting Fixture type
ℹ️ System Families vs. Loadable Families
System families (walls, floors, roofs, ceilings, stairs) are built into every Revit project and cannot be loaded from external .rfa files. You create new system-family types by duplicating and editing existing ones within the project. However, you can still swap an instance of a wall from one wall type to another using the Type Selector, following the same selection → swap workflow described for loadable families.

For Visual Arts students, the Generic Models category is particularly valuable. If you are modeling custom installation pieces, sculptural elements, or exhibition display systems, authoring all related components under Generic Models ensures you can swap freely between them. This is analogous to working within a single material family in sculpture: bronze castings can be swapped with other bronze castings of different form, but you cannot swap a bronze piece into a ceramic slot without fundamental process changes. In Revit, the category acts as that material-class constraint.

Worked Example — Gallery Lighting Redesign

Imagine you are designing a university gallery space and have initially placed pendant light fixtures throughout. The curator requests you explore track lighting as an alternative to better illuminate moveable exhibition walls. This worked example walks through the complete load → place → swap cycle.

Swapping Gallery Pendant Lights to Track Lighting
1
Step 1 — Load the Track Light FamilyNavigate to Insert → Load Family on the Ribbon. Browse to the manufacturer's Track-Light-Adjustable.rfa file (downloaded from BIMobject). Click Open. Revit imports the family and its three types: Single-Head, Double-Head, and Triple-Head. Confirm the family appears under Families → Lighting Fixtures in the Project Browser.
Track-Light-Adjustable family now loaded with three types.
2
Step 2 — Select the Existing Pendant InstancesOpen the reflected ceiling plan for the gallery level. To select all pendant fixtures at once, right-click one pendant instance and choose Select All Instances → In Entire Project. Revit highlights every instance of that pendant type across all views. The status bar confirms the count—twelve instances selected in this scenario.
12 pendant light instances selected across the project.
3
Step 3 — Swap to the Track Light TypeWith the selection active, locate the Type Selector dropdown at the top of the Properties palette. It currently reads the pendant family name and type. Click the dropdown to expand it. Because the track light family is also categorized as a Lighting Fixture, its three types appear in the list alongside the existing pendant types. Select Track-Light-Adjustable : Double-Head. All twelve instances update simultaneously.
All 12 instances swapped to Track-Light-Adjustable : Double-Head. Positions and ceiling hosts preserved.
4
Step 4 — Verify and Adjust Instance ParametersOpen a 3-D view and inspect the swapped fixtures. Because the track light family has a different geometry profile, some fixtures may need their rotation angle (an instance parameter) adjusted to point toward the exhibition walls. Select individual instances, modify the rotation in the Properties palette or by dragging the rotate grip in plan view. Confirm that the Offset from Host value (instance parameter) transferred correctly—if the pendant had a 300 mm drop and the track light expects a 0 mm offset, you may need to reset this value.
Instance parameters verified and adjusted. Gallery ceiling plan now shows track lighting layout.
5
Step 5 — Schedule and DocumentOpen or create a Lighting Fixture schedule (View → Schedules → Schedule/Quantities). The schedule automatically reflects the swapped types, listing all twelve instances as Track-Light-Adjustable : Double-Head with updated wattage, lumen output, and cost data drawn from the new family's type parameters. No manual schedule editing is required—the BIM database propagated the changes throughout the project.
Lighting schedule updated automatically. Project documentation reflects the new design intent.

Strengths, Limitations, and Common Pitfalls

Key strengths and common pitfalls when loading, placing, and swapping families
StrengthsLimitations / Pitfalls
Non-destructive iteration: swap types without deleting and re-placing elements, preserving spatial relationships and host connections.Category lock-in: you can only swap within the same Revit category. Changing categories requires deleting the old instance and placing a new one.
Batch operations: 'Select All Instances' lets you swap hundreds of elements simultaneously across an entire project.Geometry mismatch: swapping to a larger type may cause clashes with adjacent elements (e.g., a wider door cutting into a narrow wall segment).
Schedule fidelity: swapped instances immediately update in all schedules, tags, and keynotes—no manual corrections needed.Instance parameter reset: some instance parameters may not map cleanly between different families, requiring manual adjustment after the swap.
Design option exploration: load multiple families of the same category and swap to compare material palettes, form factors, or manufacturer products.File bloat: every loaded family increases project file size, even if no instances of that family are placed. Purge unused families periodically.
Reload updates: reloading an updated .rfa automatically refreshes all instances—ideal for family authors iterating on custom content.Overwrite risk: reloading can overwrite types accidentally, especially in workshared environments. Coordinate with your team.
KEY TAKEAWAY
Think of type swapping as a non-destructive filter in Photoshop: the underlying layer (your spatial layout and host relationships) stays intact while you change the appearance and data of the element above it. Just as you would not flatten a Photoshop file before trying different color grading options, you should avoid deleting and re-placing Revit instances when a simple type swap achieves the same result with zero positional risk. The discipline of keeping your project 'editable'—loaded with multiple type options, ready to swap—mirrors the non-destructive workflow that professional designers cultivate across all digital media.

Connection to Advanced Family Authoring & Dynamo Automation

The load-place-swap workflow you have learned represents the foundational interaction with Revit families, but advanced practice extends each stage significantly. Family authoring—the process of creating or modifying .rfa files in the Family Editor—lets you define entirely new parametric geometry, set up custom type catalogs with dozens of presets, and embed formulas that constrain proportions mathematically. This is where Visual Arts students with an interest in computational or parametric design will find the deepest creative leverage: rather than relying on manufacturer-provided families, you author bespoke components whose parameters map to your specific aesthetic and conceptual vocabulary.

From foundational workflow to advanced practice
Concept in This LessonAdvanced Extension
Loading a family from a file browserType Catalogs (.txt lookup tables) that let users select which types to load, keeping projects lean
Placing instances one at a timeDynamo visual scripting to place hundreds of instances along curves, grids, or adaptive surfaces
Swapping types via the Type SelectorDynamo or Revit API scripts that automate conditional swapping (e.g., swap all doors wider than 900 mm to fire-rated types)
Working within one Revit categoryShared parameters and keynote systems that enable cross-category data queries and export
Manual selection for batch swapFilters, schedules, and selection sets to target instances by parameter value before swapping

As you move into advanced coursework or professional practice, the principle remains the same: the family system is designed so that intelligence lives in the definition, not in the instance. Every enhancement—whether it is a Dynamo-driven mass placement routine or a formula-driven type catalog with fifty glazing variations—simply extends the depth of that definition. The swap operation, in turn, becomes exponentially more powerful as the range of available types grows, enabling design exploration at a scale impossible with manual modeling.

Practice Problems

PROBLEM 1CONCEPTUAL
Explain the difference between a Revit family, a type, and an instance. Why does Revit maintain this three-tier hierarchy rather than treating every placed element as a unique object?
PROBLEM 2BASIC
You have downloaded a custom furniture family called Lounge-Chair-Curved.rfa from a manufacturer's website. Describe the exact sequence of Revit commands to load this family and place two instances of its 'Walnut-Frame' type in a floor plan view.
PROBLEM 3INTERMEDIATE
A project contains 40 instances of a pendant light type from Family A (Lighting Fixtures category) and you need to swap 25 of them—specifically those on Level 2—to a new track light type from Family B (also Lighting Fixtures). Describe a strategy for selecting only the Level 2 instances and performing the swap efficiently. What should you verify after the swap?
PROBLEM 4APPLIED
You are designing an exhibition space with modular display walls. You have authored a Generic Models family called 'Display-Panel' with three types: 'Standard' (1200 × 2400 mm), 'Narrow' (600 × 2400 mm), and 'Wide' (1800 × 2400 mm). The curator now requests a fourth type, 'Extra-Tall' (1200 × 3000 mm), and wants six of the existing 'Standard' instances in the main gallery to become 'Extra-Tall.' Outline the full workflow, from creating the new type to completing the swap.
PROBLEM 5CRITICAL THINKING
A colleague argues that rather than learning the family system, it is faster to model every unique element as an in-place family directly within the project because it avoids the overhead of external .rfa files and type management. Construct a reasoned counter-argument addressing scalability, swap capability, collaboration, and file performance. Under what narrow circumstances might in-place families be justifiable?

Lesson Summary

Every element in a Revit model exists within a three-tier hierarchy: the family defines parametric geometry and parameter structure; the type locks specific dimensional and material presets within that family; and the instance is a placed occurrence at a specific location and host. Loading a family (Insert → Load Family) imports a .rfa file into the project, making its types available in the Project Browser and Type Selector. Placing instances creates concrete elements in model views, and swapping types via the Type Selector reassigns selected instances to a different type within the same Revit category, preserving position and host relationships while updating all type-level parameters.

This workflow is the backbone of non-destructive design iteration in BIM: rather than deleting and re-placing elements, you load alternative families, select existing instances (individually or via Select All Instances), and swap in a single operation. Schedules, tags, and documentation update automatically. Key pitfalls include category incompatibility (you cannot swap across categories), geometry clashes after swapping to larger types, and file bloat from accumulating unused families. Mastering this cycle—load, place, swap—prepares you for advanced family authoring, Dynamo-driven automation, and collaborative BIM practice.

Varsity Tutors • Autodesk Revit • Placing & Swapping Families — Load families and place instances; swap types