Revit to IFC,
without the wait.

A reimagined IFC exporter for Revit, built from the ground up for speed. Big models that once meant a coffee break now export in minutes.

schema
IFC4 RV
ready for
IFC+SG
works in
Revit 2027+
Model
451 MB model · ~125k elements
DRG BMC-001 · High-rise
  1. 1 Reading model
  2. 2 Snapshot
  3. 3 Converting
  4. 4 Writing IFC

Revit reads. rvt2ifc converts.

The built-in exporter does every step inside Revit, one thing at a time. rvt2ifc keeps Revit's part as small as possible and does the heavy lifting on every core at once.

Export 1 · first export

Built-in exporter 0.0 s
Time
Revit

Preparing export…

rvt2ifc 0.0 s
Time
Revit
rvt2ifc

Preparing export…

Revit only reads

Revit is slow and does one thing at a time, so it gets the one job that needs it: reading the model.

rvt2ifc builds the IFC

Geometry, properties, placement and the rest are computed in Rust, on every core at once.

Same rules, ported

The built-in exporter is ported as faithfully as possible, changed only where a different choice makes more sense.

Where the speed comes from.

Most of an export is Revit reading the model, so the work goes into asking Revit for less. A cache goes further: later exports read only what changed.

Optimizations

before after

Cache

Caching keeps what Revit read during an export. Next time, only what you changed is read again, so later exports are much faster.

Checked against the built-in exporter.

A comparator matches every element of rvt2ifc's IFC to the built-in exporter's by GlobalId, then checks it layer by layer.

Presence Every element, matched by GlobalId
Attributes Name, Tag, PredefinedType and the rest
Spatial Site, building, storeys and containment
Types Type objects and which elements use them
Properties Property sets and quantity sets, value by value
Materials Materials, constituent sets and their fractions
Classifications Uniformat and classification references
Project Units, placement, georeference and address
Geometry World-space shape of every product, however it is encoded
Validation IFC schema and EXPRESS rules

Different on purpose.

A few of the built-in exporter's rules are changed deliberately. Most make the export repeatable: export the same model twice and you get the same IFC.

Topic Built-in rvt2ifc
Duplicate stored GUIDs A random replacement, different on every export Same order and fallbacks, but a replacement derived from the element: the same every time
Custom set named like a standard one Random GlobalId Repeatable GlobalId
Floor and beam extrusion choice Depends on Revit's internal face order, can change between exports Fixed order, same result every time; the built-in exporter's other outcome is predicted and reported
Two parameters with the same name An empty built-in parameter can hide the one you filled The first usable value; your project or shared parameter wins
Detail level of view exports The view's detail level Always Fine: an element has the same shape in a view export as in a full export
Empty text Written as '' Written as $ (unset), the IFC standard; same meaning

Part of the BMC plugin.

rvt2ifc is one of the tools in the BMC plugin for Revit 2027. Here is its Export IFC page.

BMC · Revit Tools

Export IFC

IFC4 Reference View, georeferenced, with the IFC+SG mapping.

Output D:\exports\racadvancedsampleproject.ifc
Scope
Mapping IFC+SG (BMC)
Georeference EPSG:3414 Singapore
Cache

Ready. Revit reads the model, then rvt2ifc converts it.

Built for CORENET X submissions.

Singapore's CORENET X takes IFC models in the IFC+SG standard. It is mandatory for new projects of 30,000 m² GFA since October 2025 and of 5,000 m² from October 2026. BMC carries the IFC+SG dictionary and mapping, generated from the official CORENET X workbook.

0 IFC+SG elements
0 properties
0 validation rules
0 Revit shared parameters
0 IFC Revit mappings

Parameters in, properties out

IFC+SG Parameters binds the shared parameters to the right Revit categories. Fill them in, and Export IFC writes them into the IFC+SG property sets with the built-in mapping.

Checked against the built-in exporter with every value filled

Test copies of the samples with every IFC+SG parameter filled with dictionary values (about 90,000 values). RAC matches the built-in exporter on every layer. Where two parameters share a name, rvt2ifc deliberately keeps the one you filled.

SVY21 georeference

One click sets the built-in exporter's own Singapore values: EPSG:3414, SVY21 / Singapore TM, in metres, with the project base point and site elevation.

From fast export to model checking.

rvt2ifc is the first part of BMC. The checker it feeds is next: a design-stage compliance check that reports what it checked and what it could not.

Done

Live
  1. rvt2ifc Exports Revit models to IFC, matching the built-in exporter on the samples and a 451 MB high-rise
  2. Georeference Project base point, site elevation, map conversion, SVY21
  3. IFC+SG mapping Built-in mapping and shared parameters
  4. Material colours Surface styles and colour maps as the built-in exporter writes them
  5. Re-export cache Cached re-exports identical to full exports
  6. Duplicate GUID repair Repeatable replacements, saved only on request

In progress

In progress
  1. BMC dashboard One window for every tool, outside Revit, on top of it
  2. Linked files Linked models as separate IFC files
  3. More IFC classes Class-specific property sets for unusual class mappings

Coming next

Coming soon
  1. Clean model for checking Turns the IFC into one clean model that rules can check
  2. Compliance checks Geometric, countable and property rules, with a "not checked" list
  3. 2D plan checks Vector PDF plans, for projects that stay on 2D submissions
  4. IFC4X3 The schema is already a parameter of the mapping

Read on

Every decision is written down.

How the exporter works, how parity is checked, every setting and every deliberate difference from the built-in exporter.