Navisworks-style interference checking without leaving Revit. Write clash rules by category — across the model and its links — run them, and every hit becomes a coloured sphere at the exact centre of the interference, carrying the full record inside the model itself. Clash remembers each clash's life — new, open, resolved, accepted — run after run, session after session.
Export to a federated checker and the clashes live in a report while the elements live in Revit — two truths that drift apart between meetings. Clash keeps detection, decision and fix in the same file.
Clash has two halves. The coordinator writes the rules — sides, links, phase, engine, severity policy — and they live inside the model. Then the whole team lives the results: spheres, the browser, decisions, refreshes, reports. Here is the loop, top to bottom.
Tap Input or Output to isolate a half — the other collapses.
The coordinator writes rules the way the project talks about them — ducts against structure, pipes against walls — and they save inside the .rvt, so the rule book opens with the model on every machine.
A rule is two sides. Each side takes categories from the host model or from the links you tick — leave every link unticked and it clashes against all of them, transforms applied automatically. The two sides are deliberately different. The host side offers every category the model DEFINES, modelled yet or not — a rule is a template, so you must be able to aim at Data Devices before the first one exists. The link side offers only what that link actually models, because you cannot author against a link's empty categories and listing them would be noise. The comparison — model to model, model to link, link to link — follows from the sides themselves.
Scope a rule to a phase and a wall demolished in phase 1 stops clashing with the duct that replaced it — a clash that only ever existed in the model's history, never on site. Design options are just as honest: main model only, main plus primary, or everything — and two alternatives of one option set are never clashed against each other, because only one of them will ever be built.
Pick the engine — Fast compares bounding boxes for a near-instant sweep; Precise computes the true solid intersection, box-gated so it only pays for pairs that already touch — and add a clearance tolerance in millimetres to catch near-misses too. Then the policy: auto severity bands every hit by penetration depth, with a live preview of the bands as you tune the thresholds, or fix one severity for the whole rule. Either way any single clash can be re-banded by hand later, and a refresh respects it.
Spheres, decisions, refreshes, reports: everything below is driven by the rules above.
Every hit is a sphere in the model, every decision sticks, and every refresh keeps score. The reports go out in three formats; the answers come home through BCF.
Tick rules and Run selected; a progress dialog counts through with a Cancel that actually cancels, leaving the model untouched. The status line answers plainly — rules run, new, resolved, spheres in model — and when elements could not be examined at all, it says so, because “no clashes” and “we could not look at 43 of these” are different sentences.
| Rule | Comparison | Engine | Tolerance | Results | Actions | |
|---|---|---|---|---|---|---|
Ducts vs Structure StructuralFraming, StructuralColumns x DuctCurves, DuctFittings | Model ↔ Link | Precise | 0 mm | 41123· 12 resolved | ||
Pipes vs Walls Walls x PipeCurves | Model ↔ Link | Precise | 25 mm | 273 | ||
Cable trays vs Ceilings CableTray x Ceilings | Link ↔ Link | Fast (BBox) | 0 mm | not run yet |
Each clash becomes a sphere at the centre of the interference, coloured by severity with the colour baked into the geometry, so it reads in every view. It carries the full record inside the model, and a readable summary in its Comments — so a plain Generic Models schedule lists your clashes for anyone, no BIMIO installed. Spheres go to the workset you choose and ride your normal sync; Clash itself never synchronises anything.
The browser defaults to Open, so fixed clashes stop burying the live ones. Filter by severity or state, search by id, category, family or type, and step through with J and K while Revit zooms and isolates each pair. Group by side A, side B — or by place, because a coordinator schedules visits, not rows. Connected an AI through Synapse? Triage routes each discipline pairing with a priority and an owner — read-only, aggregates only.
Re-band a clash with a click, mark it Reviewed, or Ignore a by-design overlap and it never comes back — the fingerprint is remembered. Highlight a batch and assign an owner, urgency, comment and due date into real Revit parameters, ready for schedules and Power BI. Decisions live in their own store inside the document — so even Clear spheres, which is housekeeping, no longer bins a coordination meeting's worth of judgement.
After modelling, Refresh re-runs and reconciles by fingerprint: gone clashes grey out and stay as visible progress, new ones arrive coloured, and survivors keep your manual severity and Reviewed flags. Re-running never duplicates a sphere. Every run adds a point to the burn-down the project carries inside the model — up to 400 runs of history.
One button, three formats: a self-contained HTML report — severity donut, burn-down, discipline matrix, every clash in a filterable table, offline and dark-mode-aware — a CSV for Excel and Power BI, and BCF 2.1 with stable topic ids and a viewpoint per clash for BIMcollab, Solibri or Navisworks. And when the .bcfzip comes back weeks later, Clash reads it, shows you exactly what would change — and what would not — and writes nothing until you agree.
This is an actual HTML report Clash exports — self-contained, works offline, shareable as one file. Scroll it right here, or open it full-screen.
Clash ships on the QA / QC panel of the BIMIO tab. Open a project, write your first rule — walls against ducts is a fine start — and press Run. Revit 2024–2027, full trial, no card.
BIMIO Clash | Critical | Active | A: Host #312045 | B: Link:MEP-Central #88711 | penetration 62.5 mm | rule 3f9c2a71b4de