- Home
- Semantic Layer Software
- MetricFlow
MetricFlow
Oakland, California, USA
What it is
MetricFlow is a free, open-source tool from dbt Labs for defining metric logic and generating SQL to query metrics across data dimensions. Teams define metrics and semantic models in YAML files within a dbt project. Supported metric types include simple, conversion, cumulative, derived, and ratio metrics. MetricFlow uses entity types and parameters to construct joins while avoiding fan-out and chasm joins. It works with dbt version 1.6 and higher and lists Snowflake, BigQuery, Databricks, and Redshift as supported data platforms; Postgres is listed for dbt v1 only. Use requires a working dbt project and adapter. The tool is self-hosted, distributed under the Apache 2.0 license, and installable from PyPI with `pip install dbt-metricflow`. It does not currently support dbt built-in functions or packages. Custom integrations can use JDBC, ADBC, GraphQL, or the Python SDK. The separate dbt Semantic Layer, powered by MetricFlow, lists integrations including Power BI, Tableau, Google Sheets, Excel, Omni, Hex, Mode, and Sigma.
For and against
For
- Open-source under the Apache 2.0 license
- Supports several common metric types
- Constructs joins using entity types and parameters
- Offers JDBC, ADBC, GraphQL, and Python SDK integrations
Against
- Requires a working dbt project and adapter
- Does not support dbt built-in functions or packages
- Postgres support is listed for dbt v1 only
The verdict
MetricFlow provides self-hosted metric definitions and SQL generation for compatible dbt projects. Confirm that its dbt, adapter, and data-platform requirements fit your setup.
Who it suits
MetricFlow may suit data teams using dbt who want to define reusable metric logic and generate SQL across dimensions. A working dbt project and adapter are prerequisites.
Plans and prices
Developer
1 developer seat · 1 project · 3,000 successful models/month
Read 15 Oct 2026 · getdbt.com
Starter
5 developer seats · 1 project · 15,000 successful models/month · 5,000 queried metrics/month
Read 15 Oct 2026 · getdbt.com
MetricFlow
Apache 2.0 licensed · requires a working dbt project and dbt adapter
Read 4 Oct 2026 · github.com
Enterprise
Custom seats · 30 projects · 100,000 successful models/month · 20,000 queried metrics/month
Read 15 Oct 2026 · getdbt.com
Enterprise+
Custom seats and projects · 100,000 successful models/month · 20,000 queried metrics/month
Read 15 Oct 2026 · getdbt.com
On the record
- AI integration
- Claude and ChatGPT can connect through the dbt MCP server to query governed metrics.docs.getdbt.com · read 15 Oct 2026
- API
- The hosted Semantic Layer exposes GraphQL and JDBC interfaces for metric queries.docs.getdbt.com · read 15 Oct 2026
- APIs
- Custom integrations can use JDBC, ADBC, GraphQL, and the Python SDK library.docs.getdbt.com · read 4 Oct 2026
- CLI capabilities
- Commands can list metrics, dimensions, dimension values, entities, and saved queries, query metrics, validate configurations, and run exports.docs.getdbt.com · read 15 Oct 2026
- Configuration
- Metrics and semantic models are authored in YAML, with Ossie documents supported as an alternative from dbt 1.12.docs.getdbt.com · read 15 Oct 2026
- dbt compatibility
- MetricFlow is compatible with dbt version 1.6 and higher.docs.getdbt.com · read 4 Oct 2026
- Definitions
- Metrics and semantic models can be defined in YAML files in a dbt project.docs.getdbt.com · read 4 Oct 2026
- Documentation depth
- The developer documentation includes guides for joins, time spines, validations, semantic models, metrics, saved queries, advanced modeling, deployment, caching, exports, integrations, and APIs.docs.getdbt.com · read 15 Oct 2026
- Hosted access
- The dbt Semantic Layer is listed for dbt Starter, Enterprise, and Enterprise+ plans; the pricing page lists Starter at $100 per user/month.getdbt.com · read 4 Oct 2026
- Hosted execution
- On dbt Platform, MetricFlow commands run remotely through dbt sl and platform-managed versions.docs.getdbt.com · read 15 Oct 2026
- Installation
- Self-hosted installation uses pip with the dbt-metricflow package and optional adapter extras.docs.getdbt.com · read 15 Oct 2026
- Integrations
- Official documentation lists downstream integrations including Tableau, Hex, Dot, Mode, and Google Sheets.docs.getdbt.com · read 15 Oct 2026
- Joins
- MetricFlow uses entity types and parameters to construct joins and avoid fan-out and chasm joins.docs.getdbt.com · read 4 Oct 2026
- Licence
- MetricFlow versions 0.209.0 and newer use Apache 2.0; earlier releases used AGPL or BSL licensing.github.com · read 15 Oct 2026
- License and installation
- MetricFlow is distributed under Apache 2.0 and can be installed from PyPI with `pip install dbt-metricflow`.github.com · read 4 Oct 2026
- Limit: hosted dependency
- The independent review states that the managed semantic service and API require dbt Cloud; dbt Core can define metrics locally but lacks the hosted registry and API.analyticsengineering.com · read 15 Oct 2026
- Limit: modeling effort
- The independent review says teams must ensure correct keys and grains and that upfront semantic modeling is a tradeoff.analyticsengineering.com · read 15 Oct 2026
- Limit: performance
- The independent review warns that large windowed calculations can be expensive and still require warehouse partitioning, rollups, or pre-aggregation.analyticsengineering.com · read 15 Oct 2026