ifc-check

A free check from the team behind enjade.io — the BIM coordination platform for construction projects.

Check your IFC before you send it. Free. In your browser. No upload.

Drop any IFC — IFC2x3, IFC4, IFC4x3, IFC5. In about a minute you'll see what's bloating the file: duplicate geometry, profiles that could be swapped for simpler ones, meshes with too many triangles, empty property sets. One click downloads the cleaned IFC — with a before/after log. Four out of five files finish in under a minute. The file itself never leaves your computer.

25
checks
~4 s
on a 20 MB file
0 B
uploaded
100%
runs in your browser
No upload
ifc-check.app
Read file header · IFC4
Index 84,219 entities
Replaceable profiles
Meshes with too many triangles
↓ 6.81 MB savings found (37.0%)
Runs in your browser. The file never gets uploaded.
Drop an IFC file here
…or click to browse · accepts .ifc up to 200 MB · .ifczip up to 40 MB without an account
Start check

No upload. No server. Just your browser.

All the work happens right here in this tab. Open DevTools and watch — nothing about your model leaves the page. After the check we send anonymous numbers (a file fingerprint, the size in bytes, and how many checks passed or failed) — never the file itself. Full list in the terms.

Nothing is hidden

Every check is just code running in your tab. You can see exactly which element of your file triggered each finding — by GUID, with line numbers. No black-box score, no remote service deciding for you.

Built on the parsers your team already trusts

Powered by ifc-lite, a fast IFC reader written in Rust and compiled to run in the browser — alongside IfcOpenShell for the trickier corners of the schema. The same engines the desktop tools rely on — now in your tab.

How it works

Three steps, all in this tab. No upload, no signup, nothing between steps — you watch each one happen live.

STEP 01

Drop your file

Your browser reads the file from your disk into memory. Nothing is sent anywhere. The file stays on your computer.

STEP 02

25 checks run, live

Duplicate geometry, swappable profiles, oversized meshes, owner-history cleanup, empty properties — and more. You see progress for each check, and you can stop any time.

STEP 03

Read the savings report

Open findings by element ID, untick individual checks to see what each one saves, export the report as JSON or PDF. Share the report — not the model.

Don't have a file to test with?

Grab one from the buildingSMART Sample-Test-Files repository — free reference models for IFC2x3, IFC4, IFC4x3, and IFC5. Download one, drop it on this page, and watch all 25 checks run.

The 25 checks, every scan

Every check runs locally, shows you how many bytes it could save, and points to the exact elements that triggered it. The groups match the report tabs — so you can fix duplicates without leaving the duplicates view.

Duplicate shape representations
duplicate-representationsRepresentations
Mesh → primitive recovery
mesh-primitivesRepresentations
Over-tessellated meshes
over-tessellated-meshesRepresentations
Swept curve / fitted profiles
swept-curve-profilesRepresentations
Mesh inventory viewer
mesh-viewerRepresentations
Replaceable arbitrary profiles
replaceable-arbitrary-profilesProfiles
2D point-list inventory
pointlists-2d-inventoryProfiles
Identical 2D point-lists
identical-pointlists-dedupeProfiles
Class–shape mismatch
class-shape-mismatchProfiles
Point-heavy elements
point-heavy-elementsProfiles
Empty / single-valued psets
psets-strippedProperty Sets
Pset propagation (type → instance)
pset-type-instanceProperty Sets
Empty property values
empty-property-values-ifcliteProperty Sets
Unreferenced geometric contexts
unused-contextsCleanup
Unreferenced unit assignments
unused-unitsCleanup
Unreferenced materials
unused-materials-ifcliteCleanup
Unreferenced styles
unused-styles-ifcliteCleanup
Empty relationships
empty-relationships-ifcliteCleanup
Excessive decimal precision
roundable-valuesOptimization
Redundant descriptions
redundant-descriptions-ifcliteOptimization
STEP comments / header bloat
step-comments-header-bloat-ifcliteOptimization
Identity local placements
identity-placements-ifcliteOptimization
Placeholder values
placeholder-values-ifcliteMetadata
Bloated owner history
owner-history-stripMetadata
Teams / Pro

One file shows a problem. A hundred files show the pattern.

Sign in and ifc-check Pro adds up the savings across every scan you run — without ever sending the model itself. Only summary numbers (size, status, bytes saved, run time, fingerprint) sync to your account. When coordination outgrows a single person, that's where enjade.io takes over.

  • Trends across projects, disciplines, and individual checks
  • Spot recurring problems — fix the template once, save bytes on every export
  • Breakdowns per check and per project, plus CSV export for stakeholder reports
  • Same local-only setup — opt-in sync, transparent payload, no IFC content uploaded
▾ Your projects · 30 days
Files scanned184
Total savings found412 MB
Avg run time3.6 s
Most-fired checkDuplicate reps
Top projectKH Zabern