Skip to main content
Speckle provides multiple ways to validate your models against custom rules, ensuring they meet specific project requirements. Validation focuses on data properties and quality checks, helping you maintain consistency and catch issues early in your workflow.

What is Validation?

Validation in Speckle checks model data against rules you define. Unlike geometry-based clash detection, validation 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

Validation Options

There are three ways to validate models in Speckle:
The Property Checker is an Intelligence widget that provides spot checking of one property at a time:
  • Create validation rules directly in the dashboard widget
  • View results in a donut chart with pass/fail percentages
  • Colorize the 3D viewer based on validation results
  • Quick setup for immediate visual feedback
  • Validates against dashboard data sources
When to use: Use Property Checker for quick, ad-hoc validation checks of individual properties within a dashboard. Add it from the widget panel in Intelligence Dashboards.
All three use the same rule structure, so rules created in one can be adapted for the others. Model Validation uses Automated Validation to enable validation at scale and is an Enterprise feature.

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 with WHERE, AND, and CHECK conditions.

Conditions

Conditions define what to check:
  • Logic: How conditions combine (WHERE to filter, AND to refine, CHECK to 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, or INFO
  • Message: Description shown in validation results (auto-generated to help validate the logic, but can be overwritten)

FAQ

You can create rules that check for property existence, pattern matching, numeric comparisons, and value validation. Rules are defined using the validation rules interface at model-checker.speckle.systems.
No, Automated Validation runs automatically as an automation when you publish models to Speckle. Once set up, it will check every new version against your rules.
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.
Yes, Automated Validation 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.
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).
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.
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.
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.
Model Validation is now available in Speckle Intelligence dashboards, providing validation at scale using Automated Validation. We are working on support for importing IDS and COBie for the definition of rulesets.

Getting Help

For questions about Automated Validation, visit the Speckle Community or check out the Automate documentation for more information about setting up automations.