dbt v2 reached general availability on 14 September 2026. It is the biggest change to dbt since it was created: the engine behind it, first announced as "Fusion" in 2025, is now simply dbt. If you write SQL models for a living, here is what is different, what will break, and how to upgrade calmly.
One engine, two distributions
dbt v2 is built on a single engine written in Rust. It ships in two forms:
dbt-oss, the open-source distribution under the Apache 2.0 licence.dbt, the full distribution from dbt Labs, which adds proprietary features on top.
Because adapters now connect through ADBC drivers, dbt v2 is a single compiled program. There is no longer a tree of Python packages to install and keep compatible, which removes a whole category of "it works on my laptop but not in CI" problems.
What you get
Much faster parsing and compiling
dbt Labs reports that parsing a 10,000-model project is up to 10 times faster than in v1. On large projects, the wait before anything runs drops from minutes to seconds, which changes how it feels to work in dbt every day.
Mistakes caught before the warehouse sees them
v2 understands your SQL, not just your Jinja. By default it parses every model when compiling, without needing a warehouse connection, and reports problems as warnings. In strict mode it fully resolves column types and references before running anything, so a misspelled column or a type mismatch fails in seconds on your laptop rather than twenty minutes into a production run. Strict mode needs you to be signed in with dbt login.
dbt build --static-analysis strictStrict mode also produces column-level lineage, so you can see exactly which downstream models and dashboards use a column before you rename it.
Built-in extras
dbt lint: SQL linting compatible with SQLFluff, with--fixto tidy files automatically.- Batched tests with
--batch-tests. dbt Labs' internal testing reported about 40% lower test runtime and 65% fewer queries. - dbt Docs v2 with
dbt docs generateanddbt docs serve, and a built-in language server for editor support. - DuckDB built in: no separate adapter to install, which makes dbt v2 a great way to learn and prototype on your laptop. More in DuckDB 2.0: what's coming.
Adapters for BigQuery, Databricks, DuckDB, Redshift and Snowflake are generally available; ClickHouse and Spark are in beta.
What breaks: dbt v2 is stricter
dbt v1 silently ignored a lot of mistakes. v2 turns them into errors. In practice, most upgrade work is cleaning up things that were already wrong.
- Misspelled configs and unknown YAML keys now fail instead of being ignored. That includes unused paths in
dbt_project.ymland duplicate config keys. - Missing macros, tests and variables fail at
dbt parse, much earlier than before. --modelsand-mare gone. Use--selector-s.- Standalone YAML anchors must live under a new top-level
anchors:key. - Reading
metafromconfig.get()no longer works; useconfig.meta_get()instead. - Behaviour-change flags scheduled for 2.0 are always on and can no longer be switched off.
# dbt v2: standalone anchors go under "anchors:"
anchors:
- &id_column
name: id
data_type: int
models:
- name: dim_customer
columns:
- *id_columnHow to upgrade, step by step
- 1. Get to the latest v1 and fix every deprecation warning. Warnings in v1 are the errors of v2.
- 2. Test the new parser while still on v1.12:
dbt parse --use-v2-parsershows what v2 would reject, without changing anything. - 3. Let the tools do the boring fixes. The
dbt-autofixpackage fixes many common issues automatically, so you only review what is left. - 4. Install v2 and run it side by side. v2 writes a manifest that v1 can read, so
state:modifiedand--deferkeep working while part of the team is still on v1. - 5. Switch CI first, then production, once a full
dbt buildpasses on a copy of your data.
# Install dbt v2
python -m pip install dbt
dbt --versiondbt v1 remains supported, so there is no need to rush a large project. Start with a smaller project, or a new one, to learn what changes.
What it means for analytics engineers
The day-to-day work does not change: you still write SQL models, tests and documentation. What changes is the feedback loop. Faster parsing, errors caught before running, and column lineage on your laptop make dbt feel much more like a modern programming tool. The stricter checks are also a good moment to clean up projects that have grown messy over the years.
New to dbt? Start with Your first dbt project, step by step. For where dbt fits in the bigger picture, see The data stack in 2026.
Sources: the dbt documentation "Upgrading to dbt v2", dbt Labs' release coverage from September 2026 and the DuckDB blog. Details may change in minor releases, so check the official docs before upgrading production projects.
