Create beautiful, detailed, and data-rich BIM models.

The importance of the IFC GlobalId attribute

IFC files store information about your BIM model and BIM data. Some of this data is specific to the industry, such as IfcWall, or IfcBeam. We call these domain-specific entities Rooted elements in IFC-jargon.

In contrast, other data in an IFC file is generic, such as the colour red's RGB code (255, 0, 0), or the coordinate point (0, 0, 0). These are non-rooted elements. By themselves, they lack meaning, but they are referenced by Rooted elements.

Rooted elements are special because they can have information such as a Name, Description, and OwnerHistory, which allows people and responsibilities of organisations to be captured. Rooted elements also have one compulsory attribute, called the GlobalId.

This GlobalId attribute is a special, computer-generated unique identifier for a particular element. You might have heard other names for it, such as a Universally Unique Identifier, or UUID, or Globally Unique Identifier, or GUID. They all mean the same thing in principle, but IFC's GlobalId is a little special that it is always exactly 22 characters long, and the first digit must be 0, 1, 2, or 3. Despite the IFC-specific formatting, they actually contain the same data underneath using some fancy computer math.

The GlobalId is important because it is the only way to uniquely identify an element, even if other attributes such as its Name changes. Even across two different IFC files, there should be no duplicate GlobalId values. This means you can build a BIM model consisting of thousands of IFC files for a city, or even the world, and you can uniquely identify a single screw. You may be familiar with element IDs in your own BIM program, but it may not be as properly unique as an IFC GlobalId, which creates problems in large BIM data warehouses. When BIM quality auditing is performed, the GlobalId must be used as the element reference.

Common issues

When multiple disciplines create IFC files, they often refer to the same element in multiple files, such as the same IfcProject, same IfcSite, same IfcBuilding, and same IfcBuildingStorey. However, if the authoring programs generate different GlobalId values for each IFC file, then they are creating duplicate, and therefore incorrect, BIM information.

When the BIM authoring tool does not support the ability to reference GlobalId values from other IFC files, then you must fix this error by editing the GlobalId of elements in your IFC model. The process for this is different depending on which BIM authoring tool you use.

Please note that editing GlobalId values manually is dangerous. It must be specifically generated in a way that complies with OpenBIM requirements. If in doubt, consult your BIM specialist.

How to manage GlobalId in BlenderBIM

As soon as you export an IFC object in BlenderBIM for the first time, it will generate a GlobalId. This will be stored in the object's properties. It is free for you to copy, paste, and edit to a custom GlobalId if you need to specifically match an exact BIM object.

How to manage GlobalId in Revit

In Revit, even before you export an IFC file, the IFC GlobalId is predetermined. However, to see the GlobalId, you will need to export your Revit model to an IFC file.

If you use the open-source IFC exporter, you will need to press the "Modify setup ..." button to access more settings.

In the "Advanced" tab of the setup window, ensure that "Store the IFC GUID in an element parameter after export" is checked. We recommend that this option is always checked.

After your export is complete, you can now see a new parameter called IfcGUID for your objects. Despite the inconsistent naming, this is actually the IFC GlobalId. This property can now be overriden, copied, or searched for. If the text is deleted, it will be rewritten on your next export. However, it will always rewrite the original GlobalId. There is no way to regenerate a fresh ID - it will always be predetermined.