This hub covers the decision to migrate from dbt to Dataform and the procedural steps if you proceed. At $100/user/month, a 10-person analytics team pays $12,000 annually for dbt Cloud. Dataform offers comparable transformation capabilities at zero licensing cost for BigQuery users, but the migration has real costs and trade-offs beyond the licensing comparison.
Prerequisites
This migration is only relevant if you are a BigQuery-exclusive team. Dataform works with BigQuery and nothing else. If there’s any chance of adding Snowflake, Databricks, or another warehouse in the next few years, this decision is already made for you: stay on dbt.
You should be familiar with:
- Dataform as a GCP Service — what Dataform actually is and how it integrates with the GCP ecosystem
- Dataform-dbt Concept Mapping — the translation table between the two tools’ syntax
The Decision
Start here before looking at any procedural steps.
- Dataform vs dbt Cost Comparison — The real cost equation: licensing savings minus ecosystem gaps, migration costs, and hidden engineering overhead.
- dbt-Fivetran Merger and the 2026 Transformation Landscape — How the October 2025 dbt-Fivetran merger changed the context for this decision.
- Dataform Decision Framework — When Dataform is the right call and when dbt wins. The decision checklist.
What You’ll Lose
These notes document the gaps. Read them before committing.
- dbt Features Without a Dataform Equivalent — Snapshots, the package ecosystem, microbatch incremental strategy, Slim CI. The capabilities that have no Dataform equivalent and will require manual implementation or workarounds.
- Dataform Testing Limitations — Dataform’s built-in assertions cover three scenarios. dbt’s ecosystem provides dozens. This gap compounds as project complexity grows.
- Dataform Ecosystem and Tooling Gaps — CI/CD automation, IDE tooling, package ecosystem, and platform lock-in.
The Migration
If you’ve decided to proceed:
- Dataform-dbt Concept Mapping — Reference table: refs, configs, sources, materializations, directory structure, feature gaps.
- JavaScript vs Jinja in Analytics Engineering — The macro conversion problem in depth: where the syntax translation is mechanical and where it requires rewriting algorithms.
- dbt-to-Dataform Migration Process — The six-step procedural guide: auditing your project, running the automated tool, converting macros to JavaScript includes, recreating tests as assertions, setting up orchestration, and validating in parallel.
- dbt Migration Validation Patterns — How to prove the migration produced equivalent outputs: parallel execution, comparison queries, ML regression testing, phased cutover.