Guides

dbt Semantic Layer: Benefits, use cases, and how it works

‍

October 27, 2026
The dbt Semantic Layer defines business metrics once and makes them accessible across BI tools and APIs. Learn how it works and explore key use cases.

When multiple business intelligence (BI) tools, notebooks, APIs, and AI applications all calculate the same business metric, data engineers and analysts each write their own SQL. Revenue in one dashboard does not match revenue in another, and analysts spend hours reconciling numbers instead of acting on them.

The dbt Semantic Layer avoids metric inconsistency by giving data teams a single place to write metric definitions once, right inside their dbt projects. Once you define a metric, every tool that queries the dbt Semantic Layer gets the same governed result. Here’s a breakdown of how the dbt Semantic Layer works, including its key benefits and use cases.

What is the dbt Semantic Layer?

The dbt Semantic Layer is a centralized, tool-independent component from dbt Labs that allows data teams to write and serve business metrics directly from dbt semantic models. This is how dbt Labs applies the semantic layer concept to its own modeling workflow.

The dbt Semantic Layer architecture follows a hub-and-spoke model. Data teams define metric logic in one place (the dbt project), and multiple endpoints use it. A Tableau dashboard, Google Sheets report, API call, and AI agent can all query the same metric definitions in dbt, so they all return the same numbers.

How MetricFlow powers the dbt Semantic Layer

dbt MetricFlow is the open-source query engine behind the dbt Semantic Layer. dbt Labs acquired MetricFlow through its Transform acquisition in 2023. In 2025, dbt Labs relicensed MetricFlow under Apache 2.0, making the project available under a permissive open-source license.

Fivetran and dbt Labs merged in 2026, and MetricFlow now operates within a combined platform that spans automated data movement through governed metric definitions. MetricFlow reads semantic models, metrics, entities, and dimensions defined in dbt's semantic-layer configuration, then determines the right way to assemble each metric at query time.

The query flow works in these four steps:

  1. Define semantic models and metrics in dbt: Data engineers define semantic models and metrics in YAML within the dbt project, providing the foundation for the semantic graph. MetricFlow validates these configurations.
  2. A tool or API requests a metric: A BI tool, GraphQL request, Java Database Connectivity (JDBC) connection, or application sends a query asking for a specific metric with specific dimensions.
  3. MetricFlow resolves the semantic graph and generates SQL: MetricFlow uses the semantic graph to identify the required table joins, then produces an optimized SQL query for the data platform.
  4. The data platform executes the query: The generated SQL runs in the warehouse or lakehouse, and the requesting tool receives the same metric as any other tool querying the same definition.

Key benefits of the dbt Semantic Layer

The real value of the dbt Semantic Layer is the ability to write metric logic once and have every tool query the same definition. Here’s what teams gain:

  • Consistent metric definitions: Every BI tool, notebook, API, and AI application queries the same governed calculation. When the metric definition changes in dbt, the update propagates to every endpoint automatically, so different business units don’t need to debate whose numbers are correct.
  • Centralized governance: Metric definitions live in the dbt project repository, which means every change goes through code review and continuous integration validation with full version history. Data teams can audit who changed a metric and when the change went live.
  • Reusable metrics that support self-service: Business users and analysts can query approved metrics through supported interfaces like Tableau, Hex, Google Sheets, and Power BI without writing SQL from scratch. Data teams keep full ownership of every definition, and analysts stop filing one-off SQL requests.
  • Less duplicate logic: Without a semantic layer, each BI tool and each report contains its own copy of metric SQL, and a single formula change requires teams to update every copy. The dbt Semantic Layer removes that duplication, and transformation workflows use one shared set of governed definitions.

These dbt Semantic Layer benefits are most impactful for organizations that run multiple BI tools across departments and keep producing conflicting numbers from separate SQL queries.

dbt Semantic Layer use cases

Data teams that centralize metric definitions in dbt open up multiple ways to consume those metrics across their organization.

Reporting and BI

Data teams can serve the same governed metrics to every semantic layer BI tool and dashboard without redoing calculations in each platform.

When a Tableau dashboard and a Hex notebook pull revenue from the dbt Semantic Layer, both show identical numbers. Maintaining those metrics requires updating one YAML file instead of editing SQL in every report.

Embedded analytics

Product teams can serve the same metrics through APIs and embedded views within their own product. The dbt Semantic Layer exposes metrics via JDBC and GraphQL APIs, so teams avoid duplicating calculation logic inside application code.

AI and LLM applications

AI systems that query the dbt Semantic Layer for conversational analytics get reliable metrics. The semantic layer provides queryable business definitions that AI and large language model applications can use to retrieve governed metrics and dimensions.

Trustworthy data is especially important for powering AI agents that act autonomously. Metrics in the dbt Semantic Layer go through code review and version control before agents can query them, so teams building AI workflows often use open, interoperable data systems as a base.

Self-service analytics

Users with less of a technical background can pull approved metrics from BI tools like Tableau, Hex, Google Sheets, and Power BI without writing their own SQL. The data team controls every metric definition and who can access it. Fewer people need to ask engineers for custom SQL.

Exploratory analytics and data science

Analysts and data scientists can filter and recombine a verified metric as needed. The dbt Semantic Layer gives analysts a baseline metric they can trust — a suitable starting point for layering on additional calculations for deeper analysis.

Each of these use cases is feasible because the metric definitions live in one place. The data team writes it once in dbt, and every dashboard, API, agent, and notebook pulls from the same source.

Build a reliable data foundation for the dbt Semantic Layer with Fivetran

A semantic layer depends on the data supplying it. If sync schedules drift or schemas change, even perfectly governed downstream metric definitions produce stale or incorrect results.

‍Fivetran moves source data into a warehouse or lakehouse automatically and runs dbt model builds after each sync, so dbt models always operate on current data. Here’s how the data progresses from the source to the governed dbt metrics:

  1. Source systems: Data sources like SaaS applications, databases, file storage, and event streams generate the operational data that feeds the rest of the pipeline.
  2. Fivetran data movement: Fivetran syncs source data into the warehouse or lakehouse automatically, handling schema changes and incremental updates without manual pipeline maintenance.
  3. Warehouse or lakehouse: The destination stores replicated data and serves as the compute platform for transformations.
  4. dbt models and the dbt Semantic Layer: dbt transforms raw data into analytics-ready tables, and the dbt Semantic Layer defines governed metric definitions on top of those transformed models.
  5. Consumption endpoints: BI tools, APIs, AI endpoints, or embedded applications query the dbt Semantic Layer and receive governed metrics.

Fivetran supports the data movement and transformation steps in this flow with the following capabilities:

  • Automated data movement: Fivetran’s prebuilt connectors replicate data from apps, databases, ERPs, and file systems into the warehouse or lakehouse on a reliable schedule, so dbt models operate on current source data.
  • dbt model runs after syncs: Teams can use integrated scheduling so their dbt model runs automatically after each sync completes. Transformations execute on fresh data without manual scheduling or third-party orchestration tools.
  • Pre-built dbt-compatible data models: Fivetran provides ready-made dbt data models for popular connectors that produce analytics-ready tables without custom SQL. 

Maintain trusted data sets every team can rely on. Try Fivetran Transformations to automate dbt model runs and keep your governed metrics current.

FAQ

Can the dbt Semantic Layer work with tools outside the dbt ecosystem?

The dbt Semantic Layer exposes metrics through JDBC and GraphQL APIs and a Python SDK, so any tool that supports those protocols can query governed definitions. dbt Labs also has native integrations with Tableau, Hex, Mode, Google Sheets, and Power BI for direct connectivity.

How is the dbt Semantic Layer different from a BI tool’s semantic layer?

A BI tool’s semantic model typically governs metrics only within that single tool. The dbt Semantic Layer defines metrics in the dbt project and serves them to multiple tools and APIs simultaneously, so every tool uses the same calculation regardless of platform.

When should a team adopt the dbt Semantic Layer?

The dbt Semantic Layer is most useful when companies use multiple BI tools or AI applications that consume the same metrics, and different teams produce conflicting numbers from separate SQL queries. Teams with a single BI tool and stable metric definitions may not need the dbt Semantic Layer immediately.

‍

[CTA_MODULE]

‍

Start your 14-day free trial with Fivetran today!
Get started today to see how Fivetran fits into your stack
Topics
Share

Related posts

Start for free

Join the thousands of companies using Fivetran to centralize and transform their data.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.