> ## Documentation Index
> Fetch the complete documentation index at: https://docs.realtimelca.com/llms.txt
> Use this file to discover all available pages before exploring further.

# IFC Requirements and Preferences

> What Real-Time LCA expects from an IFC file, independent of the authoring tool it came from.

Real-Time LCA reads IFC entities, groups them into BIM types, and exposes their quantities for material mapping. What you include in the export directly affects how well that works — an export missing quantities or property sets will still upload, but you'll end up filling in more by hand afterwards.

This page describes what the file itself should contain. For where to configure each of these settings in a specific authoring tool, see [Prepare Export](/user-guide/integrations/ifc-file-upload/prepare-export).

## General requirements

<Warning>
  * Real-Time LCA gets the best results from **IFC4X3 (Add2)**, exported to the **Reference View (RV)** MVD. IFC4 and IFC2x3 are also supported, but with reduced fidelity for quantities and classification.
  * Export **quantity sets** (`BaseQuantities`) with the file. Without them, Real-Time LCA can't read areas, volumes, or lengths directly, and you'll need to enter quantities manually after import.
</Warning>

Reference View is a lighter-weight MVD than Design Transfer View, and some exporters trim property sets or quantity sets from it by default. If a Reference View export comes through missing quantities or your type identifier, check your export setup for options to include base quantities and custom property sets explicitly — trimming them isn't a hard limitation of the MVD, just a common default.

## Classification

There are two ways to bring classification codes over from your IFC file.

<Columns cols={2}>
  <Card title="IfcClassification (preferred)" icon="star" href="https://ifc43-docs.standards.buildingsmart.org/IFC/RELEASE/IFC4x3/HTML/lexical/IfcClassification.htm">
    If your file uses [`IfcClassification`](https://ifc43-docs.standards.buildingsmart.org/IFC/RELEASE/IFC4x3/HTML/lexical/IfcClassification.htm), its **Name** (the `IfcLabel`) must match the classification parameter set in the [Speckle model's Parameter Mapping](/user-guide/project/project-settings#classification) exactly.
  </Card>

  <Card title="Regular property" icon="tag" href="/user-guide/project/project-settings#classification">
    If your export doesn't use `IfcClassification`, store the classification code as a regular property instead. The same rule applies: the property's **name** must match the classification parameter set in the [Speckle model's Parameter Mapping](/user-guide/project/project-settings#classification).
  </Card>
</Columns>

<Warning>
  Either way, a name mismatch means Real-Time LCA won't recognize the classification at all — it isn't matched partially or case-insensitively.
</Warning>

## Supported element types

Real-Time LCA reads a fixed set of IFC entity types from the upload. Elements of any other type are ignored during import — if a category you expect is missing after upload, check it against this list before assuming the export failed.

| IFC entity                                          | Typical element                                            |
| --------------------------------------------------- | ---------------------------------------------------------- |
| `IfcWall`, `IfcWallStandardCase`, `IfcCurtainWall`  | Walls, curtain walls                                       |
| `IfcSlab`, `IfcFloor`, `IfcRoof`                    | Slabs, floors, roofs                                       |
| `IfcBeam`                                           | Beams                                                      |
| `IfcColumn`                                         | Columns                                                    |
| `IfcFooting`                                        | Footings                                                   |
| `IfcWindow`                                         | Windows                                                    |
| `IfcDoor`                                           | Doors                                                      |
| `IfcCovering`                                       | Coverings (finishes, cladding)                             |
| `IfcStair`                                          | Stairs                                                     |
| `IfcRamp`, `IfcRampFlight`                          | Ramps                                                      |
| `IfcRailing`                                        | Railings                                                   |
| `IfcPlate`                                          | Plates                                                     |
| `IfcBuildingElementProxy`, `IfcBuildingElementPart` | Generic or composite elements without a dedicated IFC type |

<Note>
  This list may grow as the importer matures — since IFC upload is in open beta, let us know if you need a type that isn't covered yet.
</Note>
