What is the IFC file format?
The .ifc file extension is used by various BIM (Building Information Modeling) software for storing data related to construction and architecture. An .ifc file contains projects and models for objects and buildings along with information about materials, shapes, and spatial elements.
.ifc is an object-oriented, neutral exchange format maintained by buildingSMART International (formerly the International Alliance for Interoperability, IAI) and standardized as ISO 16739. The main purpose of the IFC standard is to facilitate cooperation and interoperability between software tools and entities in the construction industry.
The common file encoding - IFC-SPF - is a plain-text .STEP Part-21 file whose first line reads ISO-10303-21;, followed by a HEADER section that declares the IFC schema version (e.g. IFC4 or IFC2X3). Compressed and XML variants carry the .ifcZIP and .ifcXML extensions respectively. The format specification is freely available as an open standard.
IFC4 is the most widely deployed release; IFC4.3 (published as ISO 16739-1:2024) extends the standard to infrastructure projects such as roads, bridges, and railways.
Security & safety
RISK: LOWAn IFC file (IFC-SPF) is plain-text geometry and property data with no executable code, so opening it is safe. The .ifcZIP variant is a normal ZIP - only risky if it's been disguised (check it really contains an .ifc). The practical concerns are non-malware: IFC models can be large and slow to load, and an exported model may inadvertently include detailed building data (security-sensitive layouts, proprietary design) you didn't intend to share. As always, distrust a file named 'model.ifc.exe'.
Format details
in a nutshell- Autodesk Inventor Feature file - Inventor uses .ifc internally for an imported feature/iFeature catalog entry - unrelated to building models.
- EnSight / CEI scenario file - The EnSight CFD post-processing suite has used .ifc for one of its data/scenario files.
Programs that open IFC files
Technical details
deep spec| File encoding | Plain-text STEP Part-21 (ISO 10303-21); the file body is 7-bit ASCII |
| File header | First line is always `ISO-10303-21;` followed by a `HEADER` section and a `DATA` section |
| Schema declaration | `FILE_SCHEMA` entity in the header names the IFC version, e.g. `('IFC4')` or `('IFC2X3')` |
| MIME type | `application/x-step` |
| Non-ASCII characters | Escaped inside string literals using `\X2\` (UTF-16BE hex) or `\X4\` (UTF-32 hex) sequences |
| Compressed variant | `.ifcZIP` - a standard ZIP archive containing the IFC-SPF text file; starts with PK magic bytes |
| XML variant | `.ifcXML` - same data model serialized in ifcXML (ISO 10303-28) format; significantly larger than IFC-SPF |
| Data model language | Defined in EXPRESS (ISO 10303-11); entity-attribute model with type inheritance and inverse relationships |
| Geometry types supported | BREP, CSG, swept solids (extrusion and revolution), tessellation (`IfcTessellatedFaceSet`), NURBS |
| Coordinate system | Right-handed 3D Cartesian; length unit declared via `IFCSIUNIT` entities within the file |
| Property extension mechanism | `IfcPropertySet` - arbitrary key-value metadata attachable to any building or infrastructure element |
| Georeferencing support | `IfcCoordinateReferenceSystem` and `IfcMapConversion` link the model origin to a real-world CRS |
| IFC versions in active use | IFC2x3 (legacy, widely supported), IFC4/IFC4.1 (current building standard), IFC4.3 (infrastructure) |
| Infrastructure scope (IFC4.3) | Adds element types for roads, railways, bridges, ports, and waterways; published as ISO 16739-1:2024 |
| Relationship model | Explicit relationship entities (e.g. `IfcRelAggregates`, `IfcRelContainedInSpatialStructure`) rather than direct object pointers |
| Released | 1997 (IFC 1.0); ISO 16739 since 2013; IFC4 widely used, IFC4.3 (2024) for infrastructure |
| Open standard | Yes · royalty-free |
| Specification | technical.buildingsmart.org |
IFC conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about IFC files.