Back to tutorials

134 Remove Other Sub Categories

Chris McKeown / July 1, 2025

Power

~14 min read2,887 words
0 views

Welcome to this demonstration on Bonus Tools – 134 Remove Other Sub Categories. This powerful family cleanup tool automatically removes all subcategories from non-active categories in family files, including nested families, preventing unnecessary category pollution in your projects.

Table of Contents

Key Features

  • Automatic Cleanup: Removes all subcategories from inactive categories
  • Nested Family Processing: Recursively processes and cleans all nested families
  • Smart Retention: Keeps subcategories from the family's active category
  • Detailed Reporting: Color-coded output shows retained, deleted, and failed operations
  • Transaction Safety: Uses transactions with rollback protection
  • Real-Time Feedback: Progress updates during processing
  • Comprehensive Logging: Complete audit trail of all operations
  • Family Reload: Automatically reloads cleaned nested families

Understanding the Problem

What Are "Other Subcategories"?

The Issue: When you create or edit families, subcategories from various categories can accumulate:

  • Categories from copied geometry
  • Categories from imported families
  • Legacy categories from old workflows
  • Unintended categories from paste operations

The Impact: These unwanted subcategories:

  • Pollute project category lists
  • Create confusion for users
  • Increase file size
  • Complicate project standards
  • Make category management difficult

Example Scenario

Furniture Family (Active Category: Furniture)

Desired State:

  • Furniture: [Subcategory A]
  • Furniture: [Subcategory B]

Problem State:

  • Furniture: [Subcategory A]
  • Furniture: [Subcategory B]
  • Casework: [Imported Subcategory] ← Should not be here
  • Doors: [Copied Subcategory] ← Should not be here
  • Generic Models: [Legacy Subcategory] ← Should not be here

After Tool:

  • Furniture: [Subcategory A] ✓ Retained
  • Furniture: [Subcategory B] ✓ Retained
  • Casework subcategories ✗ Removed
  • Doors subcategories ✗ Removed
  • Generic Models subcategories ✗ Removed

Why This Matters

Project Impact:

  • Clean families = clean projects
  • Reduces category clutter
  • Maintains project standards
  • Simplifies user experience
  • Improves file performance

Family Quality:

  • Professional, clean families
  • Easier maintenance
  • Clear category structure
  • Better documentation
  • Reduced confusion

Requirements

Essential Components

  1. Valid Bonus Tools License: Active license key required
  2. Family Environment: Tool ONLY works in family editor (not projects)
  3. Editable Family: Family must be open for editing
  4. Nested Family Access: Nested families must be editable
  • Backup First: Save a copy before running
  • Test on Copy: Try on duplicate family first
  • Close Projects: Work in family editor only
  • Save Work: Save family after running tool

What Gets Processed

Included:

  • Current family file
  • All nested families (recursive)
  • All subcategories in all categories
  • Editable nested families only

Excluded:

  • System families (not editable)
  • Specific system annotation families:
    • Level Lead/Target families
    • Section Head Min families
    • Section Tail Filled families
    • Section Tail Upgrade families

How It Works

Processing Sequence

1. Initial Analysis

  • Opens output window for logging
  • Identifies family's active category
  • Scans all categories and subcategories

2. Nested Family Processing

  • Finds all nested families
  • Recursively processes each nested family
  • Edits and cleans nested families
  • Reloads cleaned families back into parent

3. Parent Family Processing

  • Processes main family last
  • Identifies subcategories to retain
  • Identifies subcategories to delete
  • Attempts deletion with error handling

4. Reporting

  • Generates color-coded output
  • Shows retained subcategories (green)
  • Shows deleted subcategories (blue)
  • Shows failed deletions (blue-violet)
  • Displays totals

Category Logic

Retention Rules:

Family Category: Furniture

RETAIN:
- Furniture: [Any Subcategory]

DELETE:
- All other categories: [Any Subcategory]
  - Casework: [Subcategories]
  - Doors: [Subcategories]
  - Windows: [Subcategories]
  - Generic Models: [Subcategories]
  - etc.

Smart Handling:

  • If subcategory appears in both lists, retained
  • If deletion fails, marked as unable to delete
  • Transaction ensures atomic operation
  • Rollback on errors

Nested Family Handling

Recursive Processing:

Parent Family
├── Nested Family A
│   ├── Process and clean
│   └── Reload into parent
├── Nested Family B
│   ├── Nested Family C
│   │   ├── Process and clean
│   │   └── Reload into B
│   ├── Process and clean B
│   └── Reload into parent
└── Process parent last

Benefits:

  • Complete cleanup throughout family tree
  • Prevents subcategory reintroduction
  • Maintains family hierarchy
  • Ensures thorough cleaning

Step-by-Step Guide

Basic Workflow

1. Prepare Family

  • Open family in Family Editor
  • Verify it's the correct family
  • Save current state (backup)
  • Close any projects

2. Launch Tool

  • Go to Bonus Tools ribbon
  • Click "134 Remove Other Sub Categories"
  • Output window opens automatically

3. Monitor Process

  • Watch output window for progress
  • See nested families being processed
  • Observe subcategories being evaluated
  • Note any errors or warnings

4. Review Results

  • Check "Final list" section in output
  • Review retained subcategories (green)
  • Review deleted subcategories (blue)
  • Note any unable to delete (blue-violet)
  • Read total counts

5. Verify and Save

  • Check family properties
  • Verify category list
  • Review subcategories in browser
  • Save family if satisfied
  • Test in project if needed

Advanced Workflow: Batch Family Cleanup

Goal: Clean multiple families systematically

Steps:

  1. Create list of families to clean
  2. For each family:
    • Open in Family Editor
    • Run tool
    • Review output
    • Save if successful
    • Document results
  3. Test cleaned families in project
  4. Verify category lists clean
  5. Update family library

Output and Logging

Output Window Sections

1. Processing Log (Real-Time)

Running: 134 Remove Other Sub Categories
Nested Family: [Family Name]
Adding to retained list: Furniture : Custom Subcategory
Removing from delete list: Generic Models : Wrong Category
Deleted: Casework : Imported Subcategory
Failed to remove category: Doors : Locked Subcategory
Loaded Nested Family: [Family Name] into: [Parent Name]
Parent Family: [Parent Name]

2. Final Summary

Final list

Retained: Furniture : Subcategory A
Retained: Furniture : Subcategory B
Total Retained: 2

Deleted: Casework : Subcategory X
Deleted: Doors : Subcategory Y
Deleted: Generic Models : Subcategory Z
Total Deleted: 3

Unable to Deleted: Windows : Locked Subcategory
Total unable to Deleted: 1

Color Coding

Black: General information, family names, totals Green: Subcategories retained (correct category) Blue: Subcategories deleted (wrong category) Purple: Subcategories removed from delete list Blue-Violet: Subcategories unable to delete Red: Errors and failures

Understanding Output

"Adding to retained list"

  • Subcategory belongs to family's active category
  • Will be kept in family
  • Correct and desired

"Removing from delete list"

  • Subcategory was marked for deletion
  • But found in nested family's correct category
  • Moved to retained list

"Deleted"

  • Subcategory successfully removed
  • From inactive category
  • Operation successful

"Unable to Deleted"

  • Deletion attempt failed
  • May be in use or locked
  • Requires manual review

"Failed to remove category"

  • Error during deletion
  • See error details below in output
  • May need manual intervention

Example Workflows

Workflow 1: Clean Downloaded Family

Goal: Remove unwanted categories from downloaded family library content

Steps:

  1. Download family from manufacturer or library
  2. Open family in Family Editor
  3. Review current categories (Manage → Project Browser)
  4. Note unwanted subcategories
  5. Run "134 Remove Other Sub Categories"
  6. Review output window:
    • Check retained list matches expectations
    • Verify deleted list contains unwanted items
    • Note any unable to delete
  7. Verify category list now clean
  8. Save family with descriptive name
  9. Test in project
  10. Add to company library

Expected Results:

  • Only family category subcategories remain
  • All other category subcategories removed
  • Clean, professional family

Workflow 2: Nested Family Cleanup

Goal: Clean parent family and all nested families

Steps:

  1. Open parent family

  2. Note number of nested families (Project Browser)

  3. Run tool

  4. Monitor output for each nested family:

    Nested Family: Insert A
    [Processing messages]
    Loaded Nested Family: Insert A into: Parent
    
    Nested Family: Insert B
    [Processing messages]
    Loaded Nested Family: Insert B into: Parent
    
    Parent Family: Parent Name
    [Processing messages]
    
  5. Review final summary

  6. Check all totals reasonable

  7. Save family

  8. Test nested families still work correctly

Verification:

  • Each nested family processed
  • Nested families reloaded properly
  • Parent family cleaned last
  • All levels of nesting addressed

Workflow 3: Template Family Standardization

Goal: Clean template families before distributing to team

Steps:

  1. Open template family
  2. Document current category structure
  3. Run cleanup tool
  4. Review output carefully
  5. Verify only template category retained
  6. Test all functionality preserved
  7. Save as template
  8. Document cleanup in family notes
  9. Distribute to team with instructions

Quality Checks:

  • Template functionality intact
  • No unwanted categories
  • Clean for users
  • Professional appearance

Workflow 4: Legacy Family Modernization

Goal: Update old families to current standards

Steps:

  1. Create backup of original family
  2. Open in current Revit version
  3. Upgrade if prompted
  4. Run subcategory cleanup
  5. Review extensive delete list (old families have many)
  6. Check for "unable to delete" items
  7. Manually investigate locked subcategories
  8. Re-run tool if manual changes made
  9. Test thoroughly
  10. Save with version note

Considerations:

  • Legacy families may have many unwanted categories
  • Some subcategories may be in use (can't delete)
  • May need manual intervention
  • Test functionality after cleanup

Workflow 5: Post-Copy Cleanup

Goal: Clean family after copying geometry from other families

Scenario:

  • Copied details from door family into furniture family
  • Door subcategories now in furniture family

Steps:

  1. Finish geometry copying and editing
  2. Before saving, run cleanup tool
  3. Review output - should see door categories deleted
  4. Verify furniture subcategories retained
  5. Check copied geometry still visible
  6. Verify subcategories assigned correctly
  7. Save cleaned family

Prevention:

  • Run tool after any copy operations
  • Prevents category pollution
  • Maintains clean families

Workflow 6: Pre-Project Family Audit

Goal: Clean all families before starting new project

Process:

  1. Create list of families for project
  2. Create backup of all families
  3. For each family:
    • Open in Family Editor
    • Run cleanup tool
    • Document results
    • Save if successful
    • Note any issues
  4. Compile report of all cleaned families
  5. Test sample families in project
  6. Verify category lists clean
  7. Proceed with project using cleaned families

Documentation:

  • Spreadsheet of families processed
  • Before/after category counts
  • Any families with issues
  • Test results

Tips and Best Practices

Before Running Tool

Preparation:

  • Always backup families before cleaning
  • Test on copies first
  • Close projects (tool only works in families)
  • Save current work
  • Document current state if needed

Verification:

  • Confirm family category is correct
  • Review existing subcategories
  • Note any custom subcategories needed
  • Check nested family structure

During Processing

Monitoring:

  • Watch output window closely
  • Note processing of each nested family
  • Observe retained vs. deleted lists building
  • Watch for error messages
  • Allow process to complete (don't interrupt)

Understanding Progress:

  • Nested families processed first
  • Multiple nested levels processed recursively
  • Parent family processed last
  • Color coding helps track status

After Processing

Verification Steps:

  1. Review final summary totals
  2. Check "unable to delete" list
  3. Verify retained list correct
  4. Ensure expected deletions occurred
  5. Test family functionality
  6. Check in project if applicable

Save Strategy:

  • Save with new version number if tracking
  • Include "Cleaned" in description
  • Document cleanup in family notes
  • Keep pre-cleanup version temporarily

Category Management

What to Retain:

  • Family's active category subcategories
  • Custom subcategories you created
  • Standard project subcategories
  • Subcategories in use by geometry

What Gets Deleted:

  • Other categories' subcategories
  • Imported subcategories
  • Copied subcategories
  • Legacy subcategories
  • Accidental subcategories

Manual Review Needed:

  • "Unable to delete" items
  • Locked subcategories
  • Subcategories with dependencies
  • Questionable deletions

Nested Family Considerations

Editing Permissions:

  • Nested families must be editable
  • System families skipped automatically
  • Locked families can't be processed
  • May need to replace locked nested families

Processing Order:

  • Deepest nested families first
  • Working up to parent
  • Each level reloaded after cleaning
  • Parent processed last

Quality Control

Post-Cleanup Checks:

  • Review category list in project browser
  • Verify geometry visibility
  • Check subcategory assignments
  • Test family parameters
  • Verify type catalog (if applicable)

Project Testing:

  • Load into test project
  • Check Object Styles list
  • Verify visibility graphics
  • Test in multiple views
  • Confirm tag behavior

Common Use Cases

Library Management

Family Library Cleanup:

  • Clean all library families
  • Standardize category structure
  • Remove legacy categories
  • Maintain professional library

New Content Addition:

  • Clean before adding to library
  • Verify category compliance
  • Document cleanup process
  • Quality control step

Project Preparation

Template Families:

  • Clean before distributing
  • Ensure only relevant categories
  • Professional appearance
  • User-friendly

Project Standards:

  • Clean families match project standards
  • Consistent category structure
  • Reduce user confusion
  • Improve project quality

Content Creation

Family Development:

  • Clean during development
  • Prevent category accumulation
  • Maintain quality throughout
  • Final cleanup before release

Custom Content:

  • Remove test categories
  • Clean development artifacts
  • Professional final product
  • Ready for distribution

Troubleshooting Projects

Category Pollution:

  • Clean source families
  • Reload into project
  • Reduce category clutter
  • Improve user experience

Standards Compliance:

  • Ensure families meet standards
  • Remove non-compliant categories
  • Document compliance
  • Maintain standards

Troubleshooting

Common Issues

Problem: "Action only available in the Family environment"

  • Cause: Tool run in project instead of family
  • Solution:
    • Close project
    • Open family in Family Editor (Edit Family)
    • Run tool again
    • Tool only works in family environment

Problem: "No subcategories deleted (all retained)"

  • Cause: Family may already be clean, or all subcategories belong to active category
  • Solution:
    • This may be correct if family is already clean
    • Verify family category
    • Check subcategory list manually
    • Review output for confirmation

Problem: "Many subcategories 'Unable to Deleted'"

  • Cause: Subcategories in use by geometry or locked
  • Solution:
    • Review which subcategories failed
    • Check if geometry uses these subcategories
    • Reassign geometry to correct subcategories
    • Delete unused geometry
    • Re-run tool after corrections

Problem: "Nested family not processed"

  • Cause: Nested family not editable or is system family
  • Solution:
    • Check if family is editable (not system)
    • Verify permissions on nested family
    • Replace with editable family if needed
    • System families automatically skipped (expected)

Problem: "Tool runs but nothing happens"

  • Cause: Family may have no other subcategories to remove
  • Solution:
    • Check output window for details
    • Review retained list
    • Verify delete list is empty
    • Family may already be clean

Problem: "Process very slow with many nested families"

  • Cause: Recursive processing of deep nesting hierarchy
  • Solution:
    • Be patient (this is normal)
    • Watch output window for progress
    • Each nested family must be processed
    • Consider simplifying nesting structure

Problem: "Family won't save after cleanup"

  • Cause: Family may have issues or dependencies
  • Solution:
    • Review output for errors
    • Check family warnings
    • Verify geometry integrity
    • May need to manually address issues
    • Check if family corrupted

Problem: "Subcategories return after reload"

  • Cause: May be from unprocessed nested families or new geometry
  • Solution:
    • Ensure all nested families processed
    • Re-run tool
    • Check for new copied geometry
    • Verify nested families saved correctly

Problem: "Wrong subcategories retained"

  • Cause: Family category may not be set correctly
  • Solution:
    • Check family category (Family Category and Parameters)
    • Verify correct category selected
    • Change category if needed
    • Re-run tool

Error Messages

"Failed to remove category: [name]"

  • Specific subcategory deletion failed
  • Check if in use
  • Review dependencies
  • May need manual intervention

"Failed to process nested family [name]"

  • Nested family couldn't be edited
  • Check if locked or system family
  • Review permissions
  • May need to replace

"Failed to remove categories"

  • Transaction failed
  • Check for family issues
  • Review output for specific errors
  • May need manual cleanup

"Global fail to remove categories"

  • Major error in processing
  • Review output window completely
  • Check family integrity
  • Contact support if persistent

Performance Issues

Slow Processing:

  • Normal for complex families
  • Many nested families take time
  • Deep nesting requires more processing
  • Be patient and monitor output

Memory Usage:

  • Large families use more memory
  • Many nested families increase usage
  • Close other applications if needed
  • Consider simplifying family structure

Verification Issues

Category List Still Cluttered:

  • Check if tool completed successfully
  • Review "unable to delete" list
  • Manual cleanup may be needed
  • Consider running again

Functionality Lost:

  • Some geometry may have been affected
  • Check subcategory assignments
  • Verify visibility settings
  • Test thoroughly before saving

Need Help? Contact support or refer to additional Bonus Tools documentation.

Thank you for using Bonus Tools - 134 Remove Other Sub Categories!