ub.ConstraintScanner is an Autodesk Revit add-in from underbim, a Portugal-based BIM consultancy that has worked in BIM, Revit training, consulting, and software development since 2001. It is one of eight independent add-ins in ub.Suite Edition 1, which launched in late October 2026, and is positioned as a model diagnosis tool. Its tagline, "See the relationships. Inspect what they mean," sums up the approach. It scans Revit constraints, dependencies, and model conditions, narrows the results to the relationships that matter, and lets users go straight from the evidence to the elements involved, without changing the model.
Note on sources: This summary is based mainly on underbim's full ConstraintScanner product page, which covers the workflow, feature explorer, coverage, and licensing. The background on Revit constraints comes from Autodesk documentation and community forums. An independent review or hands-on test wasn't found, and gaps are listed under Open Questions.
The Problem It Addresses: Constraints in Revit
Constraints build intelligence into a Revit model by setting relationships between elements. They're powerful, but they're also a common source of confusion and unexpected model behavior. Autodesk's documentation and user forums describe several traits that make constraints hard to manage at project scale:
- Several kinds of constraints: Explicit constraints (locked alignments, locked dimensions, and EQ equality constraints) always hold, and conflicts with them cause errors. Looser relationships, such as unlocked dimensions and alignments, may be dropped without notice when a conflict occurs. Implied constraints, such as walls attached to roofs or joined at corners, are managed by Revit itself.
- Constraints exist apart from dimensions: Constraints don't belong to a specific view and can exist without the dimension that created them. Deleting a dimension doesn't always remove the constraint, so "hidden" constraints can remain in the model. Several locked dimensions between the same two references can also map to a single constraint.
- Hard to trace: Revit's native Reveal Constraints mode shows constraints only temporarily, in the current view. Users on Autodesk forums report they can't find which locked dimension or view controls an element, or "take me to" the source of a constraint.
- No native bulk review: Revit has no built-in way to list, filter, or unlock constraints across a whole project. Users have turned to Dynamo scripts or the Revit API, where constraints sit in a separate category from dimensions.
- Over-constraining and unpredictable behavior: Leftover or unnecessary locks can make elements resist edits or move unexpectedly. In workshared models, a constraint can't be edited if any constrained element is in a workset the user can't edit.
ConstraintScanner is aimed at this gap. It helps BIM managers, coordinators, and modelers inspect and understand the constraints and dependencies already in a model, instead of discovering them one at a time when an element won't move.
Key Facts
- Purpose: Read-only diagnosis of Revit constraints, dependencies, and model conditions.
- Scan scopes: Current Selection, Current View, or Entire Project.
- Operating mode: Read-only. The scanner has no Delete, Ungroup, Unpin, or Unconstrain option.
- Licensing: Perpetual license by Edition. Updates within the Edition are included, and major Edition upgrades are optional. Single-activation and two-activation options are offered.
- Documentation: The product page links to setup and documentation. underbim's website also has a Downloads area and a Customer Portal.
The Product Idea
The tool is built on one idea: a relationship isn't automatically a problem. ConstraintScanner presents constraints and dependencies as evidence to inspect, not as errors to remove automatically. The aim is to make model relationships easier to understand before anyone decides whether they need attention. The diagnosis and any change to the model are deliberately kept separate.
Workflow: Scan Broadly, Investigate Deliberately
- Scope: Choose Current Selection, Current View, or Entire Project.
- Scan: Read the supported constraint, dependency, and warning conditions.
- Filter: Use search and filters to narrow the results to the relationships worth reviewing.
- Inspect: Read the Impact, the Evidence, and the element information attached to each occurrence.
- Locate: Select, open, or zoom to the relevant model context, and isolate it temporarily.
- Review: Keep the diagnosis read-only, and decide separately what, if anything, should change.
Coverage: One Inspection Surface
ConstraintScanner brings several common sources of model dependency into one searchable review. It deliberately covers a defined set of Revit relationships and conditions, and it reports them for inspection without removing or rewriting them:
- Locks, EQ, and references (constraint relationships): Locked dimension segments, equality (EQ) conditions, and reference relationships found by the scan.
- Pinned elements, groups, and arrays (element state and membership): Pinned state and membership relationships, including groups detected in the Revit model.
- Hosts and levels (model dependencies): Supported host and level relationships, shown in the same diagnostic results.
- Warnings (native model conditions): Supported Revit warnings, included in the same searchable inspection view.
Each result is tagged with a short label: LOCK (locked segment), EQ (equal dimension), PINNED (pinned element), or GROUP (group membership). The three scan scopes support different kinds of investigation. Selection inspects only the elements already selected in Revit, Current View limits the scan to the active view for spatially focused work, and Entire Project checks all supported conditions across the active document for a broad audit.
Impact and Evidence
A scan result is only useful if you can read it in context. Each occurrence stays linked to the reason it was flagged and to the model elements behind it, through four kinds of information:
- Condition: States what was detected, so a result is never just an Element ID.
- Impact: Describes how the occurrence takes part in the model.
- Evidence: Shows the reason behind the result, so you can review it before going into a Revit view.
- Identity: Gives the element information, including a Copy ID option for tracing an occurrence or sharing it with others.
Example from the product page: A wall (ID 184233) is paired with a dimension (ID 205981). The scanner reports the condition as Locked segment, the impact as Relationship retained, and the evidence as Constraint / reference context.
Model Investigation: From Result Back into Revit
Results stay useful after filtering because you can find each occurrence in the model and inspect it there, and none of these actions edits the model:
- Select: Select the relevant Revit element directly from the current scan result.
- Open / Zoom: Open or zoom to a Revit view that shows the occurrence, when one is available.
- Temporary Isolate: Use Revit's Temporary Hide/Isolate to focus on the relevant elements without saving a permanent graphic state.
Place Within ub.Suite 1
ub.Suite 1 includes FilterToSchedule, ModelData, InterferenceInvestigator, , ConstraintScanner, ScopeViews, Elevations, and BackupMover. ConstraintScanner shares the suite's design approach:
- Understand before acting: ProjectManager follows an "audit first, change second" principle. Discovery and filtering are kept separate from destructive operations, changes are previewed, and each applied operation keeps a single Revit Undo path.
- Reach the actual elements: InterferenceInvestigator emphasizes moving from a result to the real model elements, then selecting, isolating, and recovering enough context to understand an issue.
- Structured, reviewable results: Sibling tools turn findings into native Revit schedules, .ubr result packages, or input to ModelData for further work.
ConstraintScanner takes the "understand before acting" idea furthest of the suite's tools. It's entirely read-only and has no cleanup commands, so any change is a separate, deliberate step done with native Revit tools or another add-in. Like InterferenceInvestigator, it puts the emphasis on moving from a result back to the actual elements.
Compared with Native Revit Tools
Open Questions
- Which Revit warnings and host/level relationships count as "supported"?
- Does it detect hidden constraints left behind after dimensions were deleted, implied constraints such as wall joins and attachments, or constraints inside families?
- Does the scan include linked models, or only the active document?
- Can results be exported, saved, or sent to a schedule, a .ubr package, or ModelData like other suite tools, or is Copy ID the only output?
- How does it present constraints on elements in worksets the user can't edit in workshared models?
Bottom Line
ConstraintScanner targets a long-standing Revit pain point: constraints and dependencies are powerful, but they're hard to see, trace, and manage across a project. Native tools only show them one view at a time. It brings locks, EQ conditions, references, pins, groups, arrays, hosts, levels, and supported warnings into one searchable, evidence-based view. Each result connects directly to the elements in the model, and the model is never changed. For BIM coordinators focused on model QA/QC, it's a low-risk audit tool, though cleanup still has to be done separately.
Sources
- ub.ConstraintScanner product page
- ub.Suite 1 overview
- ub.Suite 1 launch announcement
- Autodesk Help: About Constraints
- Autodesk Help: Apply Constraints with Dimensions
- Autodesk Community: Finding Dimensional Controls of Elements
- Autodesk Community: Unlocking All Locked Dimensions
- Revit Add-ons: ProjectManager summary
- Revit Add-ons: InterferenceInvestigator summary
Advertisement

No comments:
Post a Comment