How to Clean Up Duplicate Revit Families and Types
Rename Pro Team
Author, Rename Pro
Duplicates accumulate from copy/paste, imported manufacturer content, and two people building the "same" thing—Door-Single-Flush, Door-Single-Flush-1, Door-Single-Flush-Copy(1). They bloat schedules, slow the model, and hide which type is approved. Here's a safe, repeatable cleanup.
Two Kinds, One Rule
- Duplicate families — separate
.rfadefinitions of the same component (heaviest; each carries geometry). - Duplicate types — identical types inside one family (lighter, but they still fragment schedules).
The non-negotiable rule for both: never delete until every placed instance is reassigned to the survivor.
Step 1 — Find Them (the hard way)
- Project Browser → expand
Families; scan for-1,_1,Copysuffixes. - Cross-check schedules for rows that should be one line but appear twice.
- Confirm candidates truly share properties before merging.
The catch: two types can be functionally identical with completely different names, so an eyeball scan misses them.
Step 2 — Find Them (the reliable way)
Rename Pro's duplicate detection doesn't compare names—it applies your naming rules to every type and compares the generated result. Types that resolve to the same name are flagged, exposing duplicates regardless of current naming.
Example: Door-Single-Flush, Door-Single-Flush-1, and Door-Single-Flush-Copy(1) all resolve to SGL_Flush_915x2134. In the Name Previews panel this surfaces as "New name will be the same as some other New Family Type name!" with the colliding rows highlighted.
- Set naming rules for the category in the Name Rules panel.
- Run the preview.
- The flagged collisions are your true duplicates.
When NOT to Merge
Same generated name doesn't always mean safe to merge. Before you consolidate, sanity-check that the candidates are genuinely interchangeable. Keep them separate when:
- They have different nested or shared sub-components that schedule or tag separately.
- They behave differently as hosts (one hosts elements you'd orphan by swapping).
- One is driven by a type catalog or carries identity data (manufacturer, cost, classification) the other lacks.
- They differ in a parameter your naming rule simply doesn't include—tighten the rule to expose the real difference rather than merging away a meaningful distinction.
If two types collide but should stay distinct, that's a signal to add the distinguishing parameter to your name, not to delete one.
Step 3 — Swap Instances to the Survivor
- Right-click the duplicate type →
Select All Instances > In Entire Project. - In the Properties palette Type Selector, swap them to the master type.
- Repeat until the duplicate has zero instances.
Step 4 — Delete and Purge
- Right-click the unused duplicate →
Delete. Manage > Purge Unused, run it 2–3 times—purging a parent releases nested children for the next pass.
Step 5 — Rename Only After Consolidating
Consolidate before renaming. Rename first and you get multiple types sharing one name—ambiguity in schedules and coordination. Merge, then rename, so each name maps to exactly one type.
Stop Them Coming Back
- Keep a curated, read-only family library so people load approved content instead of copying.
- Enforce one convention with a scheduled rename pass—see Best Practices for Revit Naming Conventions.
- Make a duplicate sweep part of your Revit Model Hygiene Checklist—minutes weekly beats a day of cleanup at handover.