Home / Guides / Assay
QA / QC panelAssay

Audit the whole model. In one read-only scan.

Every delivery hides the same defects: a dimension that lies, CAD pasted in years ago, a model dumped on one workset, two texts printed on top of each other. Assay sweeps the active model in a single read-only pass — model-health checks, view forensics and a full inventory — and turns what it finds into a number a BIM manager can quote: a health score out of 100, with the evidence one double-click from the element itself.

Revit 2024–2027Read-only, alwaysOne scan, two modesA health score out of 100
Video guideComing soon on BIMIO’s YouTube
Why Assay exists

The defects that sink a delivery are invisible until it prints.

Revit accumulates warnings, overrides and hidden elements silently. Nobody sees them in a working view — the client sees them on the sheet.

Auditing by hand
  • Quality review is opening views one by one and squinting.
  • A dimension with typed-over text looks exactly like a real one.
  • Revit's warning list is a wall of noise nobody reads.
  • “Is the model clean?” is answered from memory.
The same model, through Assay
  • Model health, view forensics and a full inventory in one read-only pass.
  • Every finding carries its severity, its detail and a fix recommendation.
  • Warnings are grouped by type and counted — 340 occurrences is one row.
  • “Is the model clean?” is a score out of 100 — honest enough to say “partial” when a check could not run.
A model audit, start to finish

From an open model to a score you can defend.

Assay is read-only end to end — it opens no transactions, purges nothing, deletes nothing. Detection here; the fixing stays yours.

One click

Scan the model — and watch it happen.

The empty state promises exactly what runs: warnings, content hygiene, links, worksets, rooms, sheets and view forensics — read-only, nothing is modified. Press Scan and the fast whole-model checks run first, the per-view forensics last, the inventory closes the pass — with a live phase line and a working Cancel, inline in the window, never a modal in your face.

New to Revit: a whole-model audit that runs while you watch, and cancels when you say.
BIMIO · AssayBIMIO
Assay
— · No scan yet
0CRITICAL0ERROR0WARNING0INFO0INVENTORY
IssuesInventorySearch view, element, detail, id…
CriticalErrorWarningInfoAll areasAll kindsAll viewsClear filters
SeverityAreaKindViewElementDetailRecommendationCountID
Annotation clashes — Scanning view 68/84: A101 — Ground Floor Plan
82%Cancel
Select in RevitZoom toExport CSVExport HTMLScan
What it visits

Eleven named passes — and it tells you which views it opened.

One Scan is eleven passes in a fixed order: Revit warnings, content quality, link health, datum pinning, worksets, rooms and spaces, views and sheets and detail lines per view sweep the whole model; annotation clashes and the graphics-and-forged-dimensions pass then visit only the views placed on a sheet, so the forensics cost what the deliverable costs. The header stamps how many were visited. Working views are counted as a metric, not raised as 176 defects. The inventory runs last, and it takes everything.

New to Revit: an audit whose scope is stated rather than assumed.
BIMIO · AssayBIMIO
One click, eleven passes

Snowdon Towers — Sample Architecture · 05/07/2026 09:30 · 84 view(s) visited

Revit warningswhole model
Content qualitywhole model
Link healthwhole model
Datum pinningwhole model
Worksetswhole model
Rooms & spaceswhole model
Views & sheetswhole model
Detail lines per viewwhole model
Annotation clashes84 views placed on sheetsthe slow ones
Graphics, overrides and forged dimensions84 views placed on sheetsthe slow ones
Inventory42 sheets · 272 views · 24,318 items
Views not on sheets176Working views (not necessarily a defect)
The two per-view sweeps open only the views that are on a sheet — which is what the visited count on every report means, and why a model full of working views does not make the scan slower.
The verdict

A score out of 100 — that refuses to flatter.

The score starts at 100 and subtracts severity-weighted, capped penalties — a critical costs far more than a warning, and a warning-heavy model degrades on a curve instead of falling off a cliff. Five tiles above the grid carry the counts — clicking a severity tile filters to just it; the fifth flips to the Inventory. And one honesty rule above all: if a scanner could not run, a Warning row says so by name, the report's grade reads “partial” — and the score is never published to the rest of the suite as if the audit were whole.

New to Revit: a model-health number that admits what it could not check.
BIMIO · AssayBIMIO
Assay
Snowdon Towers — Sample Architecture · 05/07/2026 09:30 · 84 view(s) visited
62 / 100 · model health
1CRITICAL2ERROR6WARNING2INFO24,318INVENTORY
IssuesInventorySearch view, element, detail, id…11 rows
Critical (1)Error (2)Warning (6)Info (2)All areasAll kindsAll viewsClear filters
SeverityAreaKindViewElementDetailRecommendationCountID
CriticalAnnotationsFakeDimensionA101 — Ground Floor PlanDimensionShows '2 400' but really measures 2 387 mmRemove the text override so the dimension reports the true measurement.442901
ErrorContentImportedCadsite-plan-old.dwgCAD imported into the model embeds its geometry, line patterns and text styles permanently.Delete and re-attach as a CAD link, or rebuild natively.301442
WarningAnnotationsAnnotationClashA104 — Level 2 PlanText NoteText Notes vs Text NotesReposition so both texts stay readable on the sheet.455210 / 455211
InfoGraphicsGraphicOverrideS-201 — Section AAFAC Brick 102Overrides: halftone, projection colourPer-element overrides bypass view templates; reset to By View if unintended.388120
Select in RevitZoom to11 finding(s) · 24,318 inventory item(s)Export CSVExport HTMLScan
The catalogue

From forged dimensions to a model dumped on one workset.

The view forensics catch what working views hide: elements hidden by hand, overridden graphics, hidden links, texts printing over each other, and the worst offender — dimensions whose displayed value has been typed over. The model-health suite reads the rest of the story: Revit warnings grouped by type and counted, in-place families, imported CAD, purgeable types, unpinned links, unenclosed, unplaced and duplicate rooms, sheets without title blocks, duplicate sheet numbers, views drafted over with hundreds of detail lines, and a model leaning on one overloaded workset.

New to Revit: the whole defect taxonomy in one grid — not one Revit dialog per problem.
BIMIO · AssayBIMIO
Assay
Snowdon Towers — Sample Architecture · 05/07/2026 09:30 · 84 view(s) visited
62 / 100 · model health
1CRITICAL2ERROR6WARNING2INFO24,318INVENTORY
IssuesInventorySearch view, element, detail, id…6 rows
Critical (1)Error (2)Warning (6)Info (2)All areasAll kindsAll viewsClear filters
SeverityAreaKindViewElementDetailRecommendationCountID
WarningModelHealthModelWarning12 elements12 occurrences · Highlighted walls overlapResolve via Manage ▸ Warnings; recurring types usually point at a modelling or family-authoring habit.12402544
WarningCoordinationWorksetHygieneShellWorkset 'Shell' holds 62 % of elements — worksets aren't segmenting the model.Distribute elements across purpose-named worksets to reduce sync contention.
InfoContentPurgeableContent210 unused element(s) (families, types, patterns, materials, templates) could be purged.Run Manage ▸ Purge Unused to reduce file size.210
WarningCoordinationLinkNotPinnedMT-STR-Block A.rvtAn unpinned link can be moved by accident, breaking shared positioning.Select the link and Pin it (most BEPs require links pinned).88213
WarningModelHealthUnplacedRoomStore 1.07Exists in the schedule but is not placed in any view — it still counts in area take-offs.Place it, or delete it from the schedule.391207
ErrorStandardsDuplicateSheetNumberSheet A-1012 sheets share number 'A-101'.Renumber so every sheet number is unique.2220145
Select in RevitZoom to11 finding(s) · 24,318 inventory item(s)Export CSVExport HTMLScan
Warnings, ranked

The AI names the two warnings that break the drawings.

Connect a provider once in Synapse and the scan adds a single batched call: every warning type comes back ranked critical, soon or ignorable with a one-line reason, and Assay re-stamps the severity and puts the reason in front of the recommendation. Three slightly-off-axis walls drop to Info; two identical instances rise to Critical, because they double-count in every schedule. The call is capped at sixty seconds — miss it and the deterministic findings stand, with the report recording that the triage did not run.

New to Revit: warnings sorted by what they break, not by what Revit calls them.
BIMIO · AssayBIMIO
Assay
Snowdon Towers — Sample Architecture · 18/07/2026 08:12 · 84 view(s) visited
39 / 100 · model health
2CRITICAL2ERROR5WARNING7INFO24,502INVENTORY
IssuesInventorySearch view, element, detail, id…16 rows
Critical (2)Error (2)Warning (5)Info (7)All areasAll kindsAll viewsClear filters
SeverityAreaKindViewElementDetailRecommendationCountID
CriticalModelHealthModelWarning2 elements2 occurrences · There are identical instances in the same place. This will result in double counting in schedules.AI triage (critical): identical instances double-count in every schedule and take-off. · Resolve via Manage ▸ Warnings; recurring types usually point at a modelling or family-authoring habit.2418223
WarningModelHealthModelWarning24 elements24 occurrences · Highlighted walls overlap.AI triage (soon): overlapping walls distort net areas and print doubled hatching. · Resolve via Manage ▸ Warnings; recurring types usually point at a modelling or family-authoring habit.24402544
InfoModelHealthModelWarning9 elements9 occurrences · Room is not in a properly enclosed region.AI triage (ignorable): these are the plant voids, which are unbounded on purpose. · Resolve via Manage ▸ Warnings; recurring types usually point at a modelling or family-authoring habit.9391077
InfoModelHealthModelWarning3 elements3 occurrences · Wall is slightly off axis and may cause inaccuracies.AI triage (ignorable): three walls off axis by under a millimetre. · Resolve via Manage ▸ Warnings; recurring types usually point at a modelling or family-authoring habit.3377410
Select in RevitZoom to16 finding(s) · 24,502 inventory item(s) · AI triage appliedExport CSVExport HTMLScan
Jump to it

Every row is a door into Revit.

Double-click a finding and Assay selects the element and zooms to it, opening a suitable view if the current one can't show it. A clash row hands over both texts at once, because the finding names them both. The right-click menu keeps the plumbing honest — Select in Revit, Zoom to, Copy element ID, ready for Select by ID — and an ID that no longer exists is simply ignored, never an error in your face. It is one row at a time: for a bulk hand-over, the CSV's ElementId column feeds Select by ID.

New to Revit: an audit grid wired to the model — not a PDF you re-find elements from.
BIMIO · AssayBIMIO
Assay
Snowdon Towers — Sample Architecture · 05/07/2026 09:30 · 84 view(s) visited
62 / 100 · model health
1CRITICAL2ERROR6WARNING2INFO24,318INVENTORY
IssuesInventorySearch view, element, detail, id…11 rows
Critical (1)Error (2)Warning (6)Info (2)All areasAll kindsAll viewsClear filters
SeverityAreaKindViewElementDetailRecommendationCountID
CriticalAnnotationsFakeDimensionA101 — Ground Floor PlanDimensionShows '2 400' but really measures 2 387 mmRemove the text override so the dimension reports the true measurement.442901
WarningVisibilityHiddenInViewA101 — Ground Floor PlanParty Wall 215Hidden via Hide Element / Hide in ViewConfirm the hide is intentional; unhide if it masks required content.402118
Select in RevitZoom toCopy element ID
Select in RevitZoom to11 finding(s) · 24,318 inventory item(s)Export CSVExport HTMLScan
Flip the switch

The same scan is also the inventory.

One segmented control flips the window from Issues to Inventory: every sheet, view, model element and annotation the scan met, with its worksharing story — who created it, who last modified it, who owns it right now. Orphans only keeps just the views placed on no sheet, the classic model-bloat tell. Each tab remembers its own search and filters, so flipping back loses nothing.

New to Revit: authorship and ownership per element — answered without opening a single dialog.
BIMIO · AssayBIMIO
Assay
Snowdon Towers — Sample Architecture · 05/07/2026 09:30 · 84 view(s) visited
62 / 100 · model health
1CRITICAL2ERROR6WARNING2INFO24,318INVENTORY
IssuesInventorySearch view, element, detail, id…3 rows
Annotation (1,204)Model (22,800)Sheet (42)View (272)All categoriesAll authorsAll editorsAll ownersOrphans onlyClear filters
KindNameCategoryAuthorLast modifiedOwnerOrphanID
ViewS-201 — Section AASectionjsmithmriveraNone (Free)Yes442871
ViewDetail — Parapet junctionDetailavegaavegaNone (Free)Yes431006
ViewL2 — Working plan (copy)FloorPlanjsmithjsmithjsmithYes455102
Select in RevitZoom to11 finding(s) · 24,318 inventory item(s)Export CSVExport HTMLScan
The evidence

Under the score, the numbers it was made from.

The scan does not only find things, it counts them. Revit warnings and how many distinct types they are; in-place families; imported CAD against linked; raster images; what Purge Unused would remove; detail lines and the worst single view; linked models and the unpinned ones; unpinned datums; rooms unplaced or unenclosed; sheets missing a title block; working views; placed views with no template. Each carries a traffic light, and every poor or watch light is subtracted from the score — so the headline number can be checked, tile by tile.

New to Revit: a health score that shows its working.
Assay — Model health reportBIMIO
Health metricsquantitative model KPIs
Model metrics
Model elements24,506Non-type instances
Revit warnings121 distinct type(s)
Imported CAD (not linked)13 linked CAD instance(s)
Raster images6Raster images inflate file size
Purgeable elements412What Purge Unused would remove
Detail lines1,904across 84 view(s); worst has 214
Unpinned links1
Unpinned datums931 datum(s) total
Rooms / areas / spaces1482 unplaced · 1 not enclosed
Sheets420 without title block
Hand it over

One HTML file. No internet, no excuses.

Export HTML writes a single self-contained report — score ring with a written verdict, severity donut, area-by-severity matrix, the searchable findings and the inventory — that renders identically on a locked-down site-office laptop, because nothing in it phones home. Export CSV hands the issues to Excel. And the scan is read across the suite: Lens shows the Assay card on the selected element, and the suite dashboard carries the audit headline stamped with when it was measured.

New to Revit: an audit you can send tonight and defend tomorrow.
BIMIO_Assay_report.html
62 / 100 · model health
!1 Critical — a dimension whose displayed value is typed over
8 Error & Warning — imported CAD, duplicate sheet numbers, an unpinned link
Inventory embedded — 24,318 elements with authorship, searchable
Read by the rest

Select a wall, and Lens already knows what Assay found on it.

The scan stays in the session, keyed to the document it came from — a title-only model such as Project1 must be the very same document, so one model's verdict is never read against another. Lens picks it up: an ASSAY card whose subtitle is the model's headline, then this element's findings as severity-led rows with a Show that jumps to the view where the finding bites. A clean element says so rather than pretending no scan ran. The Hub tile stays live and refuses to invent a score.

New to Revit: the audit answering inside another tool, about the element in front of you.
Lens×
ProjectElementType⤴ HTML
Search this element…≡⌕✦ Explain
i
GENERAL INFO
Identity, placement and authorship.
Id402118
ASSAYOpen ↗
Model health 62/100 (D) · 11 findings · scanned 05/07 09:30.
WarningHidden in view
See the real output

This is an actual HTML report Assay exports — self-contained, works offline, shareable as one file. Scroll it right here, or open it full-screen.

Open full report

Stop guessing whether the model is clean.

Assay ships on the QA / QC panel of the BIMIO tab. One read-only scan, a score you can quote at the milestone, and a report you can send tonight. Revit 2024–2027, full trial, no card.

← PreviousWarren