Upgrading software—the thing we all know we should do but sometimes fear because “if it ain’t broke, don’t fix it,” right? Well, with dbt, staying up-to-date is not just about chasing the latest features; it’s about keeping your data pipelines efficient, secure, and compatible with future improvements. So, let’s walk through how to upgrade dbt-core and its adapters—smoothly and (hopefully) without breaking anything.


Step 1: Check Your Current Version

Before making any changes, it’s a good idea to check what versions of dbt and adapter you’re currently running. Open your terminal and run:

dbt --version

This will show the installed versions of dbt-core and your adapter (e.g., dbt-snowflake). Write them down or take a screenshot—just in case you need to revert later.

Step 2: Read the Release Notes

Every major dbt update comes with release notes. These highlight new features, fixes, and, most importantly, breaking changes. It’s always good practice to review them before upgrading. You can find here a list of all trusted adapters and their latest versions.

If the new version deprecates a feature you rely on, you’ll want to adjust your dbt project before upgrading.

Step 3: Upgrade dbt-core and Adapters

Now, onto the main event—upgrading! Run the following command in your terminal:

pip install --upgrade dbt-core dbt-snowflake

Replace dbt-snowflake with the adapter you’re using (e.g., dbt-bigquery, dbt-redshift).

Starting with dbt v1.8, dbt-core and adapters are decoupled, meaning installing one doesn’t automatically update the other. So, it’s a good idea to explicitly upgrade both.

Step 4: Verify the Upgrade

After upgrading, confirm that the new version installed correctly:

dbt --version

If everything looks good, you’re on track!

Step 5: Test Your Project

You wouldn’t upgrade production software without testing it first (hopefully), and dbt is no different. Run the following checks:

  • Ensure dbt can connect to your data warehouse: dbt debug
  • Compile your models to catch any syntax issues: dbt compile
  • Run a small subset of models to check for issues: dbt run --select some_model

If these run without errors, you’re in good shape. If not, check the release notes and logs to troubleshoot.

Step 6: Roll Back if Needed

If things don’t go as planned, you can always roll back:

pip install dbt-core==<previous_version> dbt-snowflake==<previous_version>

Using version control (like Git) for your dbt project is also a lifesaver—make sure to commit changes before upgrading so you can revert if needed.

Final Thoughts

Upgrading dbt is a bit like updating your phone’s OS—you know you should do it, but you want to be sure it won’t mess up anything important. With a bit of preparation and testing, the process can be painless. So go ahead, upgrade with confidence, and keep your data transformations running smoothly!

Happy Days!


Work together with one of our consultants and maximize the effects of your data. 

Contact us, and we’ll help you right away.

Bel ons

Afspraak

Mail ons