local engine

IFC → GLB

Free IFC to GLB Converter

Yes. Drop an IFC file, choose GLB and download. web-ifc reads the meshes the model already stores; the length unit comes from the IFC project's own unit assignment, and glTF assumes metres.

An IFC file is a building information model: walls, slabs and columns as typed objects with relationships and properties, plus triangulated geometry for each element. Converting to GLB extracts that geometry, applies the shared project coordinates and packs it into a binary glTF container — the format web viewers and game engines consume natively. Units are not rescaled: IFC declares its length unit in the project's IfcUnitAssignment — metres in most BIM exports, but millimetres and feet also occur — while glTF assumes metres by convention.

Drop an IFC file, get GLB Reads IFC, writes GLB here .ifc → .glb Pick an IFC file, export GLB
  • Full-size 3D preview before you download
  • 28 input formats and 8 output formats, four detail levels for CAD sources
  • Reads the file in your tab — nothing is uploaded
224conversions here
28mainstream formats
0 Buploaded anywhere

How to convert IFC to GLB

  1. Load the IFC fileSelect an .ifc file. The web-ifc kernel validates the ISO 10303-21 (STEP) physical file structure and reads the IFC schema (IFC2X3 or IFC4) before geometry is touched.
  2. Extract element geometryEvery product element — walls, slabs, columns, beams — is triangulated by the kernel in its own placement context. Only elements with representable solids contribute geometry.
  3. Apply project coordinatesElement meshes are transformed from local placements into the shared project coordinate system, so the parts line up as they do in a BIM viewer.
  4. Write and exportEach element is written as its own node, keeping its IFC express ID as the node name, and the scene is packed into the target format.

What happens when IFC is converted to GLB

IFC is semantics first, geometry second

An IFC file is a building information model: every wall, door and storey is a typed object with relationships, properties and a spatial hierarchy. Geometry is just one attribute of many. Converting to a mesh format keeps the shapes and one node per element, but drops properties, relationships and the storey hierarchy.

Triangulated by web-ifc, not by tessellation settings

Unlike STEP, IFC geometry arrives already triangulated by the kernel — swept solids, extrusions and B-reps are converted internally. There is no user-facing detail level for IFC; the triangle count is what the kernel emits.

Units come from the IFC project

IFC does not fix one global unit: the project's IfcUnitAssignment declares length, and metres, millimetres and feet all appear in real files. glTF assumes metres by convention, so a model authored in another unit keeps its numeric coordinates and may need scaling on import. Check the header rather than assuming — STEP files work the same way.

Why GLB is the natural target for BIM geometry

GLB keeps the coordinates exactly as the kernel emits them, carries normals for clean shading, and opens in three.js, Babylon, Blender and Windows 3D Viewer without plugins. For web-based model sharing — the most common reason to leave IFC — it is the shortest path.

IFC vs GLB

IFC building modelBinary glTF mesh
FeatureIFC sourceGLB output
Model typeBIM: typed elements + relationshipsTriangle meshes, one per element
GeometryTriangulated per element by the kernelIndexed mesh with normals
UnitsDeclared in IfcUnitAssignment (m, mm, ft)Metres by convention, not rescaled
StructureSpatial hierarchy (site/storey/space)One node per element, hierarchy lost
PropertiesRich (materials, fire ratings, types)Dropped

Supported formats

FormatReadWriteNotes
STEP (.step .stp)Yes–ISO 10303 B-rep, AP203 / AP214 / AP242
IGES (.iges .igs)Yes–Entity-based surfaces, up to 5.3
BREP (.brep)Yes–OpenCascade native B-rep
STL (.stl)YesYesBinary and ASCII triangles, no units
OBJ (.obj)YesYesv / vn / f records; .mtl references ignored
PLY (.ply)YesYesBinary position and normal arrays
GLB / glTF (.glb .gltf)YesYesglTF 2.0, binary or JSON with data URI
3MF (.3mf)YesYesOPC/ZIP package, declares millimetres
FBX (.fbx)Yes–Binary and ASCII, static mesh only
DAE (.dae)YesYesCollada scene graph is flattened
3DS (.3ds)Yes–Legacy chunk-based 3D Studio format
AMF (.amf)Yes–XML, ZIP-compressed packages supported
USDZ (.usdz)YesYesZIP containing a USD stage

Known limitations and why a conversion can fail

Properties, types and relationships are dropped

Fire ratings, material sets, storey assignment and element relationships have no destination in a mesh file. The conversion is geometry extraction, not model conversion.

Large IFC files hit browser memory

Real-world IFC exports routinely reach 50-500 MB. The kernel streams what it can, but very large models can exhaust the tab's memory — split the model by discipline or storey in your BIM tool for reliable results.

Only element geometry with a solid representation converts

Spaces, annotations, grids and 2D drawings are skipped. An IFC that is mostly documentation can legitimately yield little or no geometry.

Measured on this machine

An IFC building model converted three times, with the GLB parsed for triangle count and size. Time is the median, from dropping the file to the finished download.

TrianglesGLB sizeTime
14,6601.01 MB1.64 s

119 elements became 119 nodes, named with their IFC express IDs, and 119 materials, all near-white. The file declares millimetres in its unit assignment but its coordinates are metre-scale (25.3 × 5.9 × 9.7), which is exactly why the header matters more than the assumption. Sample: example.ifc, 414 KB, two storeys. Tested on Chrome 156 / Windows 10 / Intel i7-7700K / 16 GB.

Frequently asked questions

Can I convert on this page itself?

No. This page is the reference for the IFC to GLB path, and the conversion itself runs in the workspace that the button above opens, with both formats already selected. Your file is read in that browser tab and the download is written locally, so there is no upload stage in either place. Keeping the documentation and the engine on separate addresses lets file support and detail levels change behind one workspace without breaking the page you are reading.

Does the GLB keep storeys or element names?

No. Each element becomes its own node, named with its IFC express ID, but the storey hierarchy and element metadata are dropped. Split by storey in your BIM tool before converting if you need separate files.

Why convert IFC at all instead of sharing the IFC file?

IFC viewers are heavy and the files are large. A GLB is 10-100x smaller, opens in any web viewer, and is what AR and game engines expect.

Which IFC versions are supported?

IFC2X3 and IFC4, which cover the overwhelming majority of files in the wild.

References

Related converters

All converters

Last updated: