Creating Families in Revit



  1. Learn how to create a family using Revit software
  2. Learn how to create and associate parameters to the family
  3. Learn how to change the visibility of the elements and views of a family


  1. User will be using revit 2015
  2. User has correctly installed Revit´s Family Templates.
  3. User has basic modelling skills.


  1. Install Revit by default.
  2. Check if the following folders are correctly installed:

Libraries (RFA): It is a repository of families classified by category.

Family Templates (RFT): It is a repository of templates that are very useful when creating new families.

Get in Touch!

Can we help you with any project?

Contact us


1 Choose best family template

Before starting to do the family, we have to take care choosing the best template depending on the category that we need because the initial parameters of each family template are different.

So, the first thing we have to think about before creating the family is which kind of family are we creating.

  • Annotation family
  • Conceptual Mass
  • Title Blocks
  • Detail item family
  • Technical equipments
  • Furniture
  • Generic Model

2 General configuration of the family

Families have a number of different parameters depending on the category to which they belong. That depends on the selected template.

We can go to Create Tab > Family Category and Parameters

There we could change the category of the family as needed, and change some of the general settings of the family. For example, we can modify “Cut with voids when loaded” or “Shared”.


3 Reference planes

First of all, we have to be careful to be working in the right view, floor, section or elevation …

Remember that a Reference Plane is a plane, and that means that if we model it in a plan view, we will see it in the correspondent elevation view.

Secondly, we should decide which is the origin of the family because this will be the point of location when we load a family in a project. The origin is always the intersection between the predefined reference planes.

Additionally to these two reference planes that define the origin of the family, we will create other reference planes to define the control structure of the family, to which the final main geometry elements will be attached. They should enough to define the main form of the family, but not so much that it becomes unintelligible.

If the family has to be centered respect to the origin defining reference planes, the additional reference planes should be restricted to be equidistants (EQ) to the origin planes.

We can add other constraints between reference planes using dimensions with fixed values or the Align tool.

4 Create and associate parameters

4.1 Create parameters

To create parameters we would go to Create Tab > Properties Panel > Family types menu.

There is where we can create all the parameters needed for the family.

It is a good practice to think in advance how our family will look, and which parameters do we need to create, to make the family parametric for those properties that should be variable.

Families with many parameters are very complex and overload the file size. Use complex families with control.

Define the parameters correctly and adapted to the property of the family that we can make variable(See Parameters Guideline):

When we select “add a parameter”, it will pop up the Parameter Properties window. In this case we could create a shared parameter or a family one and afterwards choose if it is a type or an instance. Whether we choose any of the options, we should never forget to pick out a type of parameter, not leaving the default type. When the parameter is created you will not be able to change the type of parameter later on. However, the rest of parameter settings are modifiable anytime (name of parameters).

4.2 Associate parameters

For different type of parameters there is different ways of linking them to the actual elements of the family.

  • First of all, to associate dimensional parameters we need to have annotations in form of dimensions placed in the family. To this dimensions we will be assigning a label, that is associating a parameter:

  • For other type of parameters (material, visibility, family type…) we should use the Associate Parameter Button that we will find in the Properties Palette when selecting one geometry element

When we use any of this ways of associating parameters we will find also the option to directly add (create) a new parameter to the family. By using this method we can be sure that the created parameter will always match the parameter type that is needed.

4.3 Fix dimensions

Should we need a fixed dimension, we would annotate the reference planes and close the lock that appear next to the annotation. In this case, that measurement in the family will alway be 50mm.

5 Create and pin geometry

The tools that Revit offers to generate geometry are: Extrusion, Blend, Revolve, Sweep. Swept Blend and equivalent Void forms.

When working in an elevation view or a section and starting to draw a geometry, Revit will ask which is the reference plane that we want to use.  We can choose whether it is a level, a reference plane or a grid, or even we can select directly an element of the canvas.

Once decided how are we going to draw the geometry and selected the reference plane, we can start to use Revit tools for creating geometry. We have to be very careful and always draw a closed curve (sketch), without duplicate lines. If not, we will never be able to finish that form.

At the same time, we would suggest to lock the sketch to the reference planes while we are drawing them. We may have problems if we forget to lock any of the curves to the reference planes.

Just if needed, we should lock the created geometry to the other views.

To constrain elements use:

  • Align tool
  • Locked dimensions
  • Parameters

We can also add dimensional parameters inside sketches by placing dimensions and associating them with the correspondent parameter, as explained before.

6 Check if parameters are working right. Flex the family

In order to test whether the family is working properly, we should modify the value of parameters each step forward and check then that geometry is adapts accordingly.

Frequently, we will find restriction problems or not rightly locked geometries. If we just check the family at the end of the process and we hit a problem, it will be really difficult to identify what is the cause. Therefore, it will be really difficult to find the solution. However, checking the families at every step is a better way to solve problems that may occur during the process of creating a family.

Another key aspect that we should test in the family is about units. As families are usually created in millimeters but the architectural projects are usually in meters. This can stay so, but we have to be aware of that when entering values of the parameters.

7 Formulas and arrays


When creating new parameters we find a section for formulas. Parameters can be related to annotations (as we saw in the previous step) but also can be related to other parameters. Revit supports lots of methods such as round numbers, conditionals, etc. with similar syntax to Excel formulas.

Round Function In Formulas 

Values in formulas can be now rounded up or down. For example, when riser height is calculated, one needs the function “round” to find the appropriate value.


The round function returns a number rounded nearest to a whole number. It doesn’t take into consideration rounding direction (round up or down). If the number is (for example) from 24.5 to 24.9, the function rounds it to 25. If it is from 23.1 to 23.4, the function rounds it to 23.


Round ( 23.5) = 24


“x” is a unitless value that should return the smallest integral value less than or equal to x.

For example:

rounddown ( 23.5) = 23


“x” is a unitless value that should return the largest integral value greater than or equal to x.

For example:

roundup ( 23.5) = 24

Conditional statement uses this structure:

IF (<condition>, <result-if-true>, <result-if-false>)

IF (Length < 900, <true>, <false>)

Supported Conditional Operators:

< (Less than)

> (Greater than)

= (Equal)

/  (Divide)

AND (Both statements are true)

OR   (One of the statements is true)

NOT (Statement is false)

Conditional statements can contain numeric values, numeric parameter names, and Yes/No parameters.


Arrays are really useful when creating repetitive elements that often vary in the number of elements or the distance between them.

Revit  array tool allow us to do linear or circular arrays, dividing elements according to the distance to the next element or the amount of elements that should be in a fixed distance.

To assign a parameter of number of elements in an array, we have to select any of the elements and it will appear the number to change it.

To make arrays fully parametric we should associate the number and the distance parameters through a formula.

8 Visibility

As we saw briefly before, we could add visibility parameters (yes/no type) to elements, to later in the project fully control the visibility of some elements or parts of the family.

But we can play also with visibility settings and sub-categories. All three options combined can result in very complex detailed families that are useful for different detailing phases of the project.

8.1 General visibility settings of elements

Each element of a family can be visualized in differents ways depending on the level of detail and the view. An element can appear in a floor plan but not in an elevation, for instance.

Changing the Visibility-Settings we can choose the type of view in which we want to visualize each element and play with the level of detail for different configurations.

This applies also to detail elements that can be added to families. This  additional information in form of 2D objects will be visible only in project views that are parallel to the view in which the element was created.

8.2 Sub-categories

A third option is to use sub-categories.

In families sub-categories are additional Object Styles, and we can assign different geometry elements to different sub-categories.

Go to Manage Tab > Object Styles > New

The subcategory will be then added to the family and we will be able to assign and object to it. If we do not specify to which subcategory an element belongs, the object will remain in the main category by default.

Once the subcategory is created inside the family it will be added to the category section in the model at the same time that the family is loaded into it.

Then we can change visibility settings in views for subcategories independently from the main category.

Subcategories should be created, if needed, in every family that we load into the project.

For similar purposes we should try to be consistent and give subcategories exactly the same name across families.


  • The origin is always the intersection between the predefined reference planes.
  • Each element of a family can be visualized in differents ways depending on the level of detail and the view.
  • Pin the sketches to the reference planes while drawing them.
  • In order to test whether the family is working accurately, we should check parameters modifying them each step forward.
  • Arrays are really useful when creating repetitive elements that often vary in the number of elements or the distance between them.


Families are a key aspect in Revit because they allow us to modify geometry very efficiently.

Families are components we use to build our model, such as walls, windows, stairs, doors, etc.  Each family can have multiple types, such as different size, materials, parameter variables, etc.  Any change to a type is updated in every instance throughout the project. In Revit we have model families but we can also create customizable families which is really powerful.

Associated Files

  • 30035_OPE_Families_Beam.rvt
  • 30035_OPE_Families_Beam.rfa
  • Parameters Guideline



Leave a Reply

Your email address will not be published. Required fields are marked *