043 Place Family Types

Chris McKeown / July 1, 2025

Time Saving

~5 min read1,087 words
0 views

Overview

Place Family Types iterates through a set of families and places one instance of every type in the current view, arranged in a bounding-box grid. Families are laid out as rows; within each row, types are spaced horizontally by their bounding box width plus one unit. This is useful for quickly generating a visual type catalogue from the project or from a folder of family files — without having to load and place each type individually.

043 Place Family Types — main dialog

Table of Contents


Key Features

  • Current file or working directory — source families from the active Revit project or from a folder of .rfa files
  • Sub-directory inclusion — when using a working directory, optionally recurse into sub-folders
  • Automatic grid layout — families are placed in rows; types within each family are spaced by bounding box width
  • Bounding box spacing — horizontal spacing is bounding box width + 1 unit; vertical spacing is the maximum bounding box height in the row + 1 unit
  • Scope control — when sourcing from the current file, filter to Current View, Current Selection, or Entire Project
  • Result count — reports how many instances were placed

Requirements

  • A work-plane-based view must be active (e.g., floor plan, elevation, or drafting view)
  • The active view must allow placement of generic model or work-plane-based family instances
  • When using a working directory, the path must be a valid accessible directory
  • A valid Kiwi Codes Bonus Tools licence must be active

Note: Wall-hosted, floor-hosted, ceiling-hosted, and other host-based families cannot be placed by this tool. Those families will be skipped.


Running the Tool

Launch

Find Place Family Types on the Bonus Tools Ribbon or use 115 Search Tools.

043 Place Family Types — main dialog


Step 1 — Choose source

Select the source of the families to place:

OptionBehaviour
Current fileSources families from FamilyInstance elements in the Revit project
Working directoryLoads .rfa files from a specified folder on disk

Step 2a — Current file selection set

If Current file is selected, choose the scope:

OptionFamilies included
Current ViewFamilies present in the active view
Current SelectionFamilies from currently selected elements
Entire ProjectAll families loaded in the project

Step 2b — Working directory settings

If Working directory is selected:

  1. Optionally tick Include sub-directories to recurse into sub-folders
  2. Click the browse button to select the folder containing the .rfa files

043 Place Family Types — Browse For Folder dialog


Step 3 — Run

Click OK. The tool:

  1. Collects all families from the selected source
  2. For each family, iterates through all its types
  3. Places one instance of each type into the active view
  4. Moves each placed instance into position in the grid layout

A confirmation reports:

X instances placed.

The results log lists each attempted placement — green lines are successes, red lines are elements that could not be placed (wall-hosted, ceiling-hosted, etc.):

043 Place Family Types — results log

After running, the placed instances appear in the active view in a bounding-box grid:

043 Place Family Types — placed types in Revit view


Tips and Best Practices

  • Open a dedicated drafting or floor plan view before running. Placing hundreds of instances in a production view will clutter it. Use a dedicated "Family Catalogue" view.
  • Use Entire Project scope for a complete catalogue. If you want every loaded family and type, select Entire Project; if you only want what's visible, use Current View.
  • Working directory is useful for library documentation. Point it at an office family library folder to generate a visual catalogue of all available families and types.
  • Hosted families will be skipped. Wall-hosted doors, windows, and ceiling-based fixtures cannot be placed on a work plane. Run on non-hosted families only, or filter your selection before running.
  • The grid expands right and downward. Placement begins at the origin. If the view crop is small, zoom to fit after running to see all placed instances.
  • Undo is available. Each family is placed in its own transaction. Multiple Ctrl+Z presses may be needed to undo a full run.

Common Use Cases

Generating a visual family type catalogue — Open a new drafting view, run Place Family Types with Entire Project scope to produce a visual grid of every loaded family and all its types for reference documentation or client presentation.

Reviewing a new family library folder — Point the working directory at a folder of newly created .rfa files to verify all types load and place correctly before distributing the library.

Creating type sheets — After placing all types, annotate them with tags and use the layout as the basis for a family type sheet included in the project documentation set.

Spot-checking family geometry — Select specific families in the current view and run Place Family Types on Current Selection to quickly review all types side by side without opening each family separately.


Troubleshooting

"Please select at least only family." The selection or project contains no FamilyInstance elements matching the chosen scope. Change the Selection Set scope, or ensure the active view contains family instances.

"Please select a valid Working Directory." The path entered in the Working Directory field does not exist or is not accessible. Click the browse button and select a valid folder.

Some families not placed Hosted families (wall-hosted, floor-hosted, etc.) cannot be placed on a work plane and are silently skipped. The result count reflects only successfully placed instances.

Instances placed at wrong position or overlapping This can happen if the view's work plane is not set to Level, or if the bounding box of some family types is very large. Set the active work plane to a level before running, and verify the family geometry is reasonable in size.

Working directory runs but nothing placed The .rfa files in the folder may not be work-plane-based families, they may fail to load, or the active view may not support their placement category. Check the Revit output panel for load errors.