dbt-common
The shared common utilities that dbt-core and adapter implementations use
Decision gist · record as of 2026-08-14
Yes, if you are developing a dbt adapter or contributing to dbt-core. No, if you are an end user of dbt—install dbt-core or a specific adapter instead, and dbt-common will be pulled in as a transitive dependency. The package is actively maintained, has low install friction, and carries no security vulnerabilities.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later; intended as a dependency for dbt projects rather than standalone use.
- Low install friction with a pure Python wheel.
- Actively maintained with a release 3 days ago.
License · maintenance · safety
Apache-2.0 (permissive) — Apache-2.0 permissive license allows use in commercial and open-source projects without significant restrictions.
last release 2026-08-11 (3 days) · last repo commit 2026-08-11 · 40 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 90,917,492 downloads/mo, #372 on PyPI
Alternatives
Verify before relying
pip install dbt-common
import dbt_common
# Used internally by dbt-core and adapters; not typically imported directly in user code- Specific utilities and APIs exposed by dbt-common for adapter developers are not detailed in the excerpt.
- Whether dbt-common is intended for direct use by end users or only as an internal dependency of dbt-core and adapters.
What it is and what it does
dbt-common is a shared library that centralizes utilities used across dbt-core and dbt adapter implementations. It reduces code duplication and ensures consistency in how adapters and core components handle common tasks like data transformation, serialization, and telemetry. The package is actively maintained by dbt Labs and released frequently; it depends on a stable set of libraries including Jinja2, protobuf, jsonschema, and OpenTelemetry for observability.
This is primarily an internal dependency for the dbt ecosystem rather than a standalone tool. If you are building a dbt adapter or contributing to dbt-core, you will use dbt-common as a dependency. End users installing dbt-core or adapters will have dbt-common pulled in automatically. The package is in pre-alpha status but is actively developed and has no known security vulnerabilities.
Use it for
- Building a custom dbt adapter that needs shared utilities and patterns from dbt-core.
- Contributing to dbt-core or dbt-labs adapter projects and accessing common infrastructure.
- Ensuring consistency in error handling, logging, and telemetry across dbt ecosystem projects.
- Leveraging dbt's data validation and serialization utilities in adapter implementations.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are developing a dbt adapter or contributing to dbt-core.
No, if you are an end user of dbt—install dbt-core or a specific adapter instead, and dbt-common will be pulled in as a transitive dependency. The package is actively maintained, has low install friction, and carries no security vulnerabilities.
Install
dbt-common on PyPI
Before you install
Low install friction with a pure Python wheel. Actively maintained with a release 3 days ago. Supports current Python versions (3.10–3.14) and both CPython and PyPy.
Requires Python 3.10 or later; intended as a dependency for dbt projects rather than standalone use.
License in practice
Apache-2.0 permissive license allows use in commercial and open-source projects without significant restrictions.
Quickstart
pip install dbt-common
import dbt_common
# Used internally by dbt-core and adapters; not typically imported directly in user code
Verify before relying
- Specific utilities and APIs exposed by dbt-common for adapter developers are not detailed in the excerpt.
- Whether dbt-common is intended for direct use by end users or only as an internal dependency of dbt-core and adapters.
Package facts
| License | Apache-2.0 permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 14 packagesagatecoloramadbt-protosdeepdiffisodatejinja2jsonschemamashumaroopentelemetry-apipathspecprotobufpython-dateutilrequeststyping-extensions |
| Maintenance | Actively maintained 3 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 90,917,492 / month, #372 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 2 - Pre-AlphaLicense :: OSI Approved :: Apache Software LicenseOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy |
Evidence: dbt_common-1.39.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “dbt shared utilities”
- dbt-commonProvides shared utilities and common code used by dbt-core and dbt…
- dbt-semantic-interfacesProvides shared semantic class definitions, validation protocols, and…
- dbt-adaptersProvides base adapter protocols and shared functionality that…
Give your agent the search over MCP, or paste the wish link into any chat.
Similar packages
Provides base adapter protocols and shared functionality that database adapters use to integrate with dbt-core, handling connections, dialect translation, relation caching, and core interface management.
Bundles dbt-core and MetricFlow with compatible versioning, allowing you to execute semantic layer commands through a single unified installation instead of managing separate packages.
Provides shared semantic class definitions, validation protocols, and interfaces used by both dbt-core and MetricFlow to maintain consistency across projects.
A dbt adapter that connects dbt-core to Microsoft Fabric Synapse Data Warehouse, enabling data transformation and modeling workflows on Fabric.
Install only if you have a Fabric warehouse and dbt-core 1.4 or newer; it is not useful as a standalone tool.
Provides shared utility functions and helpers used across scverse packages, reducing code duplication in the scverse ecosystem.
dbt-core transforms raw data in a warehouse using SQL select statements organized as models, handling compilation, testing, and dependency management across data transformation projects.
Install it if you need to build SQL-based data transformations with testing and documentation; you will also need to install a warehouse-specific adapter…
See also dbt-sqlserver · airflow-dbt-python · dbt · dbt-dremio