Skip to content
FreeBIMTools

IFC Duplicate GUID Checker

Check whether every object in a model has an identifier of its own, and whether those identifiers are valid IFC GUIDs.

Files stay on your device

Drop your IFC here

or

Large models work best on a desktop browser. Files above roughly 500.0 MB may exceed browser memory.

How it works

  1. 1Select an IFC file. It is read from your disk by your browser and goes no further.
  2. 2Every rooted object is scanned, not only physical elements.
  3. 3Repeated identifiers are grouped, worst first, with the class, name and storey of each object that shares one.
  4. 4Identifiers that are not valid 22-character IFC GUIDs are listed separately.
  5. 5Export the findings as CSV, Excel or JSON to send to whoever owns the model.

About IFC Duplicate GUID Checker

The GlobalId is the load-bearing identifier in openBIM. It is what a clash report points at, what a BCF issue attaches to, what a model comparison matches on, and what links an element to a row in an asset register. The whole arrangement rests on one assumption: that an identifier belongs to one object.

When it does not, nothing announces the problem. An issue raised against a duplicated identifier resolves to whichever object the receiving tool happens to find first. A comparison between two revisions reports changes that did not happen, or misses changes that did. The symptom shows up weeks later as coordination that will not reconcile, and the cause is invisible from inside the authoring tool.

Duplicates arrive quietly. Copying elements and exporting before the copies are renumbered is the usual route. Merging files branched from one original is another. Neither produces a warning at export.

The second check is format. IFC compresses a 128-bit UUID into 22 characters of its own base64 alphabet. An exporter that writes a plain hyphenated UUID instead produces a file most viewers will open and some checking tools will reject, which is a difficult problem to diagnose when the only symptom is that a validator refuses the file.

This tool reports. It does not rewrite identifiers, because changing the values other systems use to track your elements is not something a browser utility should do on your behalf. Take the export to whoever owns the model.

Questions

Why do duplicate GlobalIds matter?
A GlobalId is the one identifier that is supposed to point at exactly one object, in this model and in every export of it. Clash reports, BCF issues, model comparison and any link to an asset register all rely on that. When two objects share an identifier, the tool on the other end cannot tell which one is meant, and it will silently pick one. The failure looks like an issue attached to the wrong element rather than an error message.
How do duplicates get into a model in the first place?
Copying elements in the authoring tool and exporting before the copies are given new identifiers is the common cause. Merging or linking files that were branched from one original is another. Some exporters also reuse identifiers when writing grouped or nested geometry. None of these produce a warning at export time, which is why a model can carry them for months.
What counts as a malformed GlobalId?
IFC stores a 128-bit UUID compressed into exactly 22 characters, using digits, letters, the underscore and the dollar sign. Anything else is outside the specification. The usual sight is a raw hyphenated UUID of 36 characters, written by an exporter that skipped the compression step. Many tools tolerate it, some do not, and the ones that do not tend to fail without explaining why.
Does it check relationships and property sets too, or only walls and doors?
Everything that carries a GlobalId. Property sets, type objects and relationships are rooted objects in IFC just as walls are, and a duplicate among them breaks the same downstream tools. Restricting the scan to physical elements would report a clean model that is not clean.
Can it fix the duplicates?
No, and it deliberately does not try. Rewriting identifiers inside a model would change the very thing other systems use to track those elements, and doing it in a browser tool with no view of what else references them would create a worse problem than it solved. The fix belongs in the authoring tool. This report tells you which elements and which storeys to look at.
Is my IFC file uploaded anywhere?
No. The file is read by your own browser using a WebAssembly IFC parser. The model is never sent to FreeBIMTools or anywhere else, and there is no upload endpoint for it.
Can it read a Revit .rvt file?
No, and no browser tool honestly can. RVT is a proprietary format that needs Revit itself. Export an IFC from Revit and this tool will read it.

Was this useful, or is something missing? There is no rating widget here, because a thumbs up with nowhere to go is not feedback. Tell us what IFC Duplicate GUID Checker should do, and describe the job rather than the feature.