A common problem on projects is people not following the correct Object Naming convention when using Revit or other design authoring software, so it needs to be checked regularly.

I personally use the COBieQC tool for most data checks, but COBie itself doesn’t define naming rules, so these have to be verified separately.

In the UK, this was historically guided by BS 8541, now superseded by BS EN ISO 22014:2024 – Library objects for architecture, engineering, construction and use.
Both standards promote the same core principles: clear delimiters, no spaces, and no forbidden symbols.

For example, a properly formatted name might look like:
XXX_Wall_100mmBlockWall
where:

XXX_ is your company or project prefix,

Wall is the family category or type group, and

100mmBlockWall is the specific type or variant.

This kind of structured naming ensures consistent data handling across Revit, COBie, IFC, and asset management systems.

Below is a compact Excel formula to flag non-compliant names exported from Revit (I used DiRoots to export/import, but any Excel round-trip tool works).

Then, if you want to go further, there’s a larger one-cell formula that can auto-correct underscore placement.

> Replace MIV_ with your own organisation/project three-letter prefix (for example ABC_).
Adjust the cell reference (B2) to match your sheet.

1) The short, powerful audit formula (use this first)

What it does

Only looks at rows starting with your prefix (MIV_).

Flags if the name doesn’t have exactly two underscores, or contains forbidden characters (including spaces and double hyphens).

Formula

=AND(LEFT(B2,4)=”MIV_”, OR(LEN(B2)-LEN(SUBSTITUTE(B2,”_”,””))<>2, SUM(–ISNUMBER(FIND({“.”,”,”,”(“,”)”,”/”,”\”,”|”,””””,”‘”,” “,”–“}, B2)))>0))

How to use it

1. Export Family/Type names from Revit (e.g., with DiRoots).

2. Put the formula in a helper column beside the name column.

3. Filter for TRUE — these are the entries to fix.

4. Update in Excel (or inside Revit) and import the corrections back (DiRoots works well).

> Note: The {…} array inside FIND requires modern Excel. On older versions, replace it with a series of OR(ISNUMBER(FIND(“…”,B2)), …).

2) Optional: one-cell auto-fix for underscores (the “monster”)

If you want a formula that enforces exactly two underscores automatically:

If there are more than 2 underscores → keeps the first two, turns later _ into -.

If there’s only 1 underscore (typically just the prefix) → converts the last – to _ to create the second underscore.

If it doesn’t start MIV_ → returns the original unchanged.

By design this version focuses on underscores only (no symbol cleanup).

Formula

=IF(LEFT(B2&””,4)<>”MIV_”,B2,
IF(LEN(B2)-LEN(SUBSTITUTE(B2,”_”,””))>=2,
   LEFT(B2,FIND(“_”,B2,FIND(“_”,B2)+1)) &
   SUBSTITUTE(MID(B2,FIND(“_”,B2,FIND(“_”,B2)+1)+1,LEN(B2)),”_”,”-“),
   IF(LEN(B2)-LEN(SUBSTITUTE(B2,”-“,””))>0,
     LEFT(SUBSTITUTE(B2,”-“,”_”,LEN(B2)-LEN(SUBSTITUTE(B2,”-“,””))),
          FIND(“_”,SUBSTITUTE(B2,”-“,”_”,LEN(B2)-LEN(SUBSTITUTE(B2,”-“,””))),
               FIND(“_”,SUBSTITUTE(B2,”-“,”_”,LEN(B2)-LEN(SUBSTITUTE(B2,”-“,””))))+1)) &
     SUBSTITUTE(MID(SUBSTITUTE(B2,”-“,”_”,LEN(B2)-LEN(SUBSTITUTE(B2,”-“,””))),
               FIND(“_”,SUBSTITUTE(B2,”-“,”_”,LEN(B2)-LEN(SUBSTITUTE(B2,”-“,””))),
                    FIND(“_”,SUBSTITUTE(B2,”-“,”_”,LEN(B2)-LEN(SUBSTITUTE(B2,”-“,””))))+1)+1,
               LEN(B2)),”_”,”-“),
     B2)))

> ⚠️ This is intentionally complex because it handles multiple edge cases in one cell. It was assembled with help from ChatGPT, tested against tricky naming patterns, and meant as an optional one-step helper when you can’t use a two-column approach.

Tip
To see which names would actually change, wrap it in:

=LET(new,<formula_above>, IF(new<>B2,new,””))

Suggested workflow

1. Export Revit Family & Type Names to Excel (DiRoots).

2. Audit with the short formula — filter TRUE and correct obvious issues (spaces, forbidden symbols, wrong underscore count).

3. (Optional) Use the auto-fix formula to normalise underscore placement to exactly two.

4. Re-import the names back to Revit using DiRoots.

Why this matters

Moving from BS 8541 to BS EN ISO 22014:2024 keeps us aligned with international naming expectations.

Simple Excel checks like these give you fast, scalable QA without Dynamo or code — and they plug straight into existing export/import workflows.

By catching incorrect naming early, you’ll maintain consistent, standards-compliant data across your CDE and COBie deliverables — exactly what BS 8541 and ISO 22014 aim to achieve.

Leave a comment

I’m William

But feel free to call me Willy. I qualified with a BSc (Hons) in Architectural Technology and worked as an Architectural Technologist for over 15 years before moving into BIM Information Management. Since 2015, I’ve been working with BIM and digital construction workflows, and in 2023 I stepped into my current role as a BIM Information Manager. I am also BRE ISO 19650-2 certified, reflecting my commitment to best-practice information management. On this blog, I share insights on BIM and Information Management, along with personal reflections on investing and balancing professional life with family.

Husband | Dad | Dog Owner | Curious Mind