Back to all tools

Soda
YAML-defined data quality checks — monitor, alert, and resolve data issues at scale.
0Free
Data Quality
Overview
Soda is a data quality platform that uses a YAML-based check language (SodaCL) to define, run, and monitor data quality rules across SQL databases, data warehouses, and data pipelines with built-in alerting and collaboration.
Key Features
- SodaCL — a human-readable YAML check language for data quality rules
- Anomaly detection checks powered by ML for automatic threshold learning
- Native integrations with Snowflake, BigQuery, Redshift, Spark, and DuckDB
- Soda Cloud for collaborative incident management and check history
- Programmatic checks via the Soda Python library
- dbt-soda integration to run checks on dbt model outputs
Real-World Workflows
Monitor data freshness and completeness
- 1Write a SodaCL checks.yml with freshness and row count checks
- 2Run soda scan on a schedule or in the CI/CD pipeline
- 3Alert on Slack or PagerDuty when checks fail
- 4Track check history and trends in Soda Cloud
Integrate data quality into dbt pipelines
- 1Configure soda-core-dbt adapter in your dbt project
- 2Add SodaCL checks for critical dbt model outputs
- 3Run soda scan after dbt run in your Airflow or Dagster DAG
- 4Gate downstream pipeline steps on data quality pass/fail status
Getting Started
# Install Soda Core with Snowflake pip install soda-core-snowflake # Create a configuration file # configuration.yml: # data_source my_warehouse: # type: snowflake # account: ... # Create a checks file # checks.yml: # checks for orders: # - row_count > 0 # - missing_count(status) = 0 soda scan -d my_warehouse -c configuration.yml checks.yml
Compare Alternatives
See how Soda stacks up against similar tools.