Back to all tools

dbt
Transform data in your warehouse with SQL + software engineering best practices.
0Open Source
ELT & Transform
Overview
dbt (data build tool) enables analytics engineers to transform data in their warehouses using SQL and software engineering best practices — version control, testing, documentation, and modular models.
Key Features
- SQL-first transformation with Jinja templating for DRY models
- Built-in testing framework for data quality assertions
- Auto-generated documentation with lineage DAG visualization
- dbt Cloud for managed scheduling, CI/CD, and IDE
- Packages for 100+ reusable model libraries (dbt-utils, dbt-expectations)
- Supports Snowflake, BigQuery, Redshift, Databricks, DuckDB, and more
Real-World Workflows
Build a modular analytics data model
- 1Organize SQL models into staging, intermediate, and mart layers
- 2Use ref() to define dependencies between models
- 3Add schema.yml tests (unique, not_null, accepted_values) per column
- 4Run dbt build to compile, run, and test all models
CI/CD for data transformations
- 1Set up a dbt Cloud job triggered on PR merge
- 2Run dbt test on each PR to catch regressions before production
- 3Use slim CI to run only modified models with state comparison
- 4Publish auto-generated docs to a static site on merge
Getting Started
# Install dbt with Snowflake adapter pip install dbt-snowflake # Initialize a new project dbt init my_project cd my_project # Run models against the warehouse dbt run # Run tests dbt test # Generate and serve docs dbt docs generate && dbt docs serve
Compare Alternatives
See how dbt stacks up against similar tools.