Open beta
Bimly is in open beta. Features and pricing may change before general availability. We'd love to hear your feedback — get in touch → see what's new →
Practical guide

Quantity takeoff from IFC (QTO) — base quantities, area & volume, vs cost estimating

The basics of quantity takeoff (QTO) from BIM/IFC. How IFC carries quantities (IfcElementQuantity, base quantities), how model quantities differ from cost estimating, the net/gross and opening-deduction pitfalls, and how to check them in practice.

5 min read

Instead of scaling off drawings by hand, you pull “wall area,” “concrete volume,” and “door count” straight from the BIM model — that’s QTO (Quantity Take-off). IFC can carry these quantities. But they’re often missing, or net and gross get mixed up, and the pitfalls are predictable. Get the basics right and the model becomes a solid front end to estimating.

Bottom line first
  • IFC can hold per-element length, area, volume, count and weight (via IfcElementQuantity / the standard base quantities).
  • Model quantities are an input to estimating — not the estimate itself (rates, productivity, waste).
  • When quantities are empty or wrong, suspect they weren't exported, or a net/gross / opening-deduction definition mismatch.

What QTO is (pulling quantities from the model)

QTO is the work of counting up the quantities needed for design and construction. Traditionally it was hand-measured off drawings; in BIM the elements themselves carry dimensions and volume, so quantities can be aggregated from the model. If there are 100 walls, the model tells you their total area and volume.

The advantages over hand takeoff are clear. It follows changes (stretch a wall and the quantity updates), it’s hard to miss (counted per element), and each quantity traces back to its element. The caveat, as below, is that “model quantity” is not the same as “estimate.”

How IFC carries quantities

In IFC an element is linked to an IfcElementQuantity (a group of quantities), which holds individual quantities. Quantities are typed.

📏 Length

Wall length, beam length, etc. (IfcQuantityLength).

🟦 Area

Wall side area, floor area (IfcQuantityArea). Net vs gross matters.

🧊 Volume

Concrete volume, etc. (IfcQuantityVolume).

🔢 Count

Number of doors, fixtures (IfcQuantityCount).

⚖️ Weight

Steel weight, etc. (IfcQuantityWeight).

IFC also defines standard quantity sets per element type. A wall has Qto_WallBaseQuantities (length, width, height, side area, volume, etc.); a slab has Qto_SlabBaseQuantities (in IFC2x3 these are collectively “base quantities”). When quantities are exported to this standard, the receiving side can aggregate “which wall, which quantity” mechanically.

wall element (IfcWall) Qto_WallBaseQuantities Length = 4000 mm NetSideArea = 9.6 m² GrossSideArea = 10.8 m² NetVolume = 1.44 m³
Standard base quantities on an element. The key is that net (openings deducted) and gross (before deduction) are separate

Quantity ≠ estimate

This is the most important point. What you pull from the model is a quantity (4000 mm, 9.6 m²) — not an estimate (cost). An estimate only emerges once you apply rates, productivity, waste factors and labour to the quantities, and the model alone doesn’t decide those.

The model gives

Quantities (QTO)

  • 120 walls / 1,150 m² total side area
  • 340 m³ of concrete
  • 45 doors / 62 windows
  • each traces back to its element
People decide

Estimate (cost)

  • rates, productivity, waste
  • labour, temporary works, overheads
  • region, timing, quantity scale
  • takeoff rules (deduction) judgment

So QTO is a powerful input to estimating. The more accurately and quickly you can produce quantities, the better and faster the estimate — but not by turning model quantities directly into money. Sharing that expectation prevents mistakes.

Common pitfalls

gross whole wall counted net openings deducted
The same wall gives a different area for net (openings deducted) vs gross (not). Mixing the two means the numbers won't reconcile

Checking and using them in practice

First, in a viewer or property panel, click an element and confirm quantities are present. If you can see the standard quantity set (Qto_WallBaseQuantities, etc.), it’s ready to aggregate. If quantities are empty, start by having them included on the export side.

When aggregating, the key is to decide and standardise the takeoff basis (net/gross, deduction rules) up front. If the basis drifts, the same model yields different quantities that won’t reconcile. Grouping elements by type and part with property sets and classification makes it easier to keep the aggregation granularity consistent.

Summary

Quantity takeoff is where BIM’s “follows changes” strength shows most plainly. Leaning on quantities that trace to elements cuts both the effort and the misses. The basics of properties and classification are in property sets and classification, and the big picture in what is IFC.

Related articles