What is Model Checker?
Model Checker automatically validates model data against rules you define. Unlike geometry-based clash detection, Model Checker focuses on:- Property validation - Check if properties exist, have values, or match patterns
- Data quality - Ensure data meets project standards and requirements
- Automated testing - Run checks automatically when models are published
- View results - See validation results in the 3D viewer
Model Checker vs. Model Checker Widget
There are two ways to validate models in Speckle:- Model Checker
- Model Checker Widget
The Model Checker UI at model-checker.speckle.systems is designed for creating validation rules that work with automations:
- Create and manage validation rules
- Use rules with automations for automatic validation
- View results in the 3D viewer
- View results in the connector interface in desktop applications (Revit, Rhino, etc.)
Future Migration: Model Checker will be migrating into Dashboards, but will remain compatible with all rulesets already created. Your existing rulesets will continue to work without any changes.
Prerequisites
- A Speckle project with a model
Getting Started
1
Access Model Checker
Navigate to Model Checker and sign in with your Speckle account.

2
Select a project
Browse your Speckle projects and select the project you want to create validation rules for.

3
Create a ruleset
Click Create New Ruleset to start defining validation rules for your project. Give your ruleset a name and description.

4
Add rules
Add rules to your ruleset. Each rule consists of conditions that filter and validate model elements. See the Rules and Rulesets guide for details.

5
Copy your ruleset URL
Once your rules are defined, click Copy Link to get the URL for your ruleset. This URL can be used in Speckle Automate to connect your rules to the Model Checker automation.



6
Set up the automation
In your Speckle project, navigate to the Automations tab and create a new automation:
- Select the Model Checker function from the function library and click Next.
- Configure the ruleset URL: In the function parameters, paste the ruleset URL you copied from Model Checker. This connects your validation rules to the automation.
- Choose a Speckle Model: Select the model from the current project that will trigger the automation. The automation will run automatically whenever a new version of this model is published.
- Name your automation: Provide a meaningful name for reference (e.g., “Building Code Compliance Check”).
- Create the automation: Click Create to finalize the setup.

7
Review results
When models are published, Model Checker automatically runs. Check results in Speckle’s 3D viewer, where elements with warnings or errors are flagged.

Key Concepts
Rulesets
A ruleset is a collection of validation rules for a specific project. You can create multiple rulesets for different validation purposes (e.g., one for building code compliance, another for naming conventions). Rulesets can be exported and imported as TSV files, making it easy to share validation rules between projects or teams.Rules
Each rule consists of one or more conditions that work together to validate model elements. Rules use a structured logic system withWHERE, AND, and CHECK conditions.
Conditions
Conditions define what to check:- Logic: How conditions combine (
WHEREto filter,ANDto refine,CHECKto validate) - Property Name: The object property to check
- Predicate: The comparison operation (equal to, greater than, exists, etc.)
- Value: The reference value for comparison
- Severity:
ERROR,WARNING, orINFO - Message: Description shown in validation results (auto-generated to help validate the logic, but can be overwritten)
What types of rules can I create?
What types of rules can I create?
You can create rules that check for property existence, pattern matching, numeric comparisons, and value validation. Rules are defined using the Model Checker interface at model-checker.speckle.systems.
Do I need to run Model Checker manually?
Do I need to run Model Checker manually?
No, Model Checker runs automatically as an automation when you publish models to Speckle. Once set up, it will check every new version against your rules.
What happens if a rule fails?
What happens if a rule fails?
Elements that fail validation rules are flagged in the 3D viewer with warnings or errors. You can see which rules failed and the associated messages.
Can I check properties that don't exist in the model?
Can I check properties that don't exist in the model?
Yes, Model Checker can add tests for properties. The results of these tests can then be used as filters in the 3D viewer, even if the property doesn’t exist in the original model.
Can I have multiple rulesets for one project?
Can I have multiple rulesets for one project?
Yes, you can create multiple rulesets for a single project. This is useful for organizing different types of validation checks (e.g., building code compliance, naming conventions, material standards).
How do rule messages work?
How do rule messages work?
Rule messages are auto-generated to help validate the logic you are testing for, but they can be overwritten with custom messages. This helps ensure your validation messages are clear and actionable.
Can I export and import rulesets?
Can I export and import rulesets?
Yes, rulesets can be exported and imported as TSV files. This makes it easy to share validation rules between projects or teams, or to back up your rules.
Does it matter which Speckle project I select?
Does it matter which Speckle project I select?
At this time, there isn’t anything particularly special about selecting a particular Speckle project. We’re considering making use of project data when defining rules in future updates.
Roadmap
Future enhancements planned for Model Checker include:- Import IDS to convert applicable rules to Speckle Model Checker - Import Information Delivery Specification (IDS) files and automatically convert compatible rules to Model Checker format
- Migrate individual model checker rules as model checker widget display - Convert existing Model Checker rules for use in the Model Checker widget within Intelligence dashboards
Next Steps
- Learn about creating rules and using rulesets
- See how to view results