The dbt package ecosystem has over 400 packages. This hub covers the mechanics of how packages work as a consumer — installing, configuring, evaluating, and upgrading them — including version conflict patterns and Fusion compatibility.
If you’re looking to build a package rather than use one, see dbt Package Development Hub instead.
Prerequisites
You should be comfortable with basic dbt project structure and have at least one package installed. If you haven’t used dbt packages at all, the dbt deps and the Package Lock File note is the right starting point.
Reading Order
dbt deps and the Package Lock File
What actually happens when you run dbt deps: the difference between packages.yml and dependencies.yml, how the lock file works, and the flags worth knowing. Start here if anything about dbt deps feels unclear.
dbt Package Installation Types
The three installation types (Hub, Git, local) and how to choose between them. Includes the version conflict pattern that trips up most teams — don’t list transitive dependencies in your root packages.yml — and the bundle installation rule for Fivetran cross-platform packages.
Fivetran dbt Packages Architecture
Fivetran’s unified package model, the cross-platform reporting bundles (ad_reporting, social_media_reporting), and the data flow from raw connector output through to your custom models. Read this before installing Fivetran packages.
dbt Fusion Package Compatibility How dbt 2.0 (Fusion) affects package compatibility: version bounds, the manifest format incompatibility between Core v12 and Fusion v20, the Hub’s Fusion badge, and a migration checklist. Skip this if you’re staying on dbt Core 1.x for now.
dbt Package Ecosystem Governance Who maintains what and how to evaluate a package’s reliability before committing to it in production. Relevant when you’re considering a community package you’re not already familiar with.
What’s Available
The key packages in each category, with pointers to dedicated notes where they exist:
Utilities
- dbt-utils — cross-database macros, SQL generation, generic tests. Nearly universal dependency.
- dbt-codegen — generates source YAML and model YAML from database metadata
- dbt-date — date dimension generation, fiscal calendars, timezone utilities
Data quality and testing
- dbt-expectations — 50+ data quality tests ported from Great Expectations
- Elementary — data observability: anomaly detection, freshness monitoring, test result history
- dbt-audit-helper — relation comparison for migrations and refactoring validation
- dbt-project-evaluator — DAG linting, naming conventions, test and documentation coverage
Source-specific
- Fivetran packages — 60+ packages covering ad platforms, CRM, finance, marketing automation
- Salesforce, HubSpot — CRM-specific notes with configuration details
Documentation and operations
- dbt-osmosis — propagates column descriptions downstream through the DAG
- dbt-profiler — generates doc blocks from statistical profiling
- dbt-coverage — checks documentation and test coverage with CI thresholds
- dbt-artifacts — captures run artifacts into warehouse tables for build time tracking
Key Concepts
Packages vs Mesh — packages share code (macros, models, tests); Mesh shares data products across dbt Cloud projects. See dbt Packages vs Mesh for the full distinction.
Dispatch configuration — needed when non-core adapters like Spark or Databricks lack adapter-specific implementations for package macros. See dbt Dispatch Configuration.
Package anti-patterns — the six common mistakes in package design that break installations. See dbt Package Anti-Patterns.