How to Check an IFC Model for Building Code Compliance
· 4 min read · By Verify AI
IFC (Industry Foundation Classes) is the open, vendor-neutral format for exchanging BIM data. Because it carries both geometry and meaning, such as which object is a door and what its fire rating is, it is the natural input for automated code checking. The result is only as good as the model behind it, though. This guide covers what a checker needs and how to get a model ready.
Why IFC works for compliance checking
A drawing shows lines. An IFC model says what those lines are. A rule such as "fire doors on staircase enclosures must be rated" can only be tested if the model states which doors belong to a staircase and what rating each one has. IFC provides a standard place to put that information, and it is supported by every major authoring tool, including Revit, ArchiCAD, Bentley and Tekla.
Both IFC2x3 and IFC4 are widely used. IFC2x3 is still common in practice, and IFC4 adds richer definitions. A checker should read both.
What a rule check needs from the model
| Model element | IFC entity | What checks use it for |
|---|---|---|
| Rooms and areas | IfcSpace |
Occupancy, areas, travel distance start points |
| Doors | IfcDoor |
Exit widths, fire ratings, swing direction |
| Walls | IfcWall |
Fire separation, compartment boundaries |
| Stairs | IfcStair, IfcStairFlight |
Width, enclosure, number of exits |
| Floors and roofs | IfcSlab |
Compartment floors, shaft penetrations |
| Openings | IfcOpeningElement |
Door and shaft openings in walls and slabs |
| Levels | IfcBuildingStorey |
Floor-by-floor grouping |
| MEP equipment | IfcDistributionElement and subtypes |
Dampers, ducts, panels, sprinkler and hydrant equipment |
Properties matter as much as the objects. Standard property sets such as Pset_WallCommon and Pset_DoorCommon include a FireRating property, and checks that depend on ratings will only work if it is filled in.
Step-by-step: prepare the model
1. Fix model health first
Before exporting, look for the issues that most often break checks:
- Rooms and spaces missing or unbounded. Every occupied area should have a space with a name and correct boundaries.
- Generic objects. Elements that export as
IfcBuildingElementProxycarry no meaning, so a checker cannot tell a fire door from a hatch. - Wrong or missing levels. Every element should be assigned to the correct storey.
- Unit and scale errors. A model in the wrong unit fails every dimensional check.
2. Export with meaning intact
Export settings vary by tool and version, but the goals are the same:
- Choose an appropriate IFC version and view, for example the Coordination View for IFC2x3 or the Reference View for IFC4.
- Include spaces and rooms in the export.
- Include the common property sets so ratings and other properties travel with the objects.
- Include base quantities where they are available.
3. Look at the exported file, not just the source model
Open the IFC in a viewer before running any checks. Confirm that doors are still doors, storeys are correct, spaces exist and ratings appear on the elements you expect. Problems introduced by the export are much cheaper to find here than in a checker report.
4. Run the checks
Run the rule set that matches your project's jurisdiction, occupancy and building type. Choosing the wrong code pack gives a clean-looking report that answers the wrong question.
5. Review flagged items with a human eye
Automated results are strongest on measurable, well-defined rules. Look at the issues with the lowest confidence first, and confirm ambiguous ones against the model and the clause. See what to automate and what to leave to an engineer.
6. Keep an audit trail
Record which model version, rule set and edition of the code produced each result, along with any overrides and who made them. That record is what makes a compliance report defensible later.
Common failure patterns
- The check passes but means nothing because a whole discipline is missing from the export.
- Everything fails because the model is in millimetres and the checker expected metres.
- Ratings are absent, so rating-dependent checks are skipped or flagged as unknown.
Most of these are found in step 3, which is why it is worth the few minutes.
Try it on your own model
Verify AI reads IFC2x3 and IFC4 natively, along with DXF and PDF drawings, classifies the fire, HVAC, plumbing and electrical systems it finds, and reports issues with the clause and location. See the features for the full list, or contact us if you would like help getting a model export ready.