kimo
DefinitionAll productsData

Semantic layer

Definition

A semantic layer is a governed layer between raw data and the tools that query it. Business entities, metrics, dimensions and join paths are defined there once, in code, so every dashboard, spreadsheet and AI assistant computes them the same way.

Updated 2 sources3 min read

A semantic layer is a governed layer between your raw data and the tools that query it. Business entities, metrics, dimensions and join paths are defined there once, in code. Every dashboard, spreadsheet export and AI assistant then computes “revenue” or “active customer” the same way, because none of them defines it on its own.

What is a semantic layer?

The dbt documentation describes the idea plainly. By centralizing metric definitions, data teams can ensure consistent self-service access to those metrics in downstream tools, and moving definitions out of the BI layer into the modeling layer means different business units work from the same definitions.1 A semantic layer usually contains four things:

  • Entities and their keys (customer, subscription, campaign, aircraft).
  • Measures: aggregations such as sum(amount) or count(distinct user_id), with filters baked in.
  • Dimensions to slice by, ideally conformed so “region” means the same thing on every table, an idea dimensional modeling has long relied on.2
  • Relationships: the allowed join paths, so a query cannot fan out and double-count.
The semantic layerSources feed models; measures and dimensions are defined once; dashboards and Ask Kimo reuse them.SourcesConsumersPostgreSQLProduct DBusers · eventsStripeStripesubscriptionsHubSpotHubSpotdeals · contactsGoogle Analytics 4GA4sessionsSemantic layerdefinitions as code · versioned · reviewedModelsCustomersSubscriptionsMeasuresMRRNRRCACBurnDimensionsPlanRegionChannelPoliciesRow-level securityAsk Kimoplain-English answersDashboardslive, sharedBoard decklocked snapshotsAPI & exportssame numbersOne definition of MRR, reused everywhere
Figure.Sources feed models; measures and dimensions are defined once; dashboards and Ask Kimo reuse them.

Scroll sideways to see the full diagram.

Example: defining MRR once

A measure in a semantic model (illustrative)
yaml
model: subscriptions
grain: one row per subscription per day
entities:
  - name: customer
    key: customer_id
measures:
  - name: mrr
    label: MRR
    agg: sum
    expr: monthly_amount
    filters:
      - status in ('active', 'past_due')
dimensions:
  - name: plan
  - name: region
  - name: date
    type: time

Once MRR lives here, the board deck, the finance dashboard and a question typed into Ask Kimo all compile to the same SQL. Change the definition (for example, to exclude past_due) and every consumer updates together, with the change in version history.

Common misconceptions

  • “It is just a set of views.” Views fix the query shape. A semantic layer composes measures and dimensions at query time and enforces valid joins.
  • “Our BI tool already has one.” If the definitions live inside one tool, every other tool, notebook and AI agent re-implements them.
  • “It slows things down.” It compiles to SQL that runs where the data is, and can be pushed down to the source.

How Kimo uses a semantic layer

Everything in Kimo reads from its semantic layer: Models, dashboards and Ask Kimo, which shows the measure and SQL behind every answer instead of guessing. Learn the building blocks in data models and measures and dimensions. The semantic layer for AI post explains why it matters for LLMs.

Frequently asked questions

What is the difference between a semantic layer and a metrics layer?

The terms are often used interchangeably. “Metrics layer” stresses the measure definitions, while “semantic layer” usually also covers entities, dimensions and join paths.

Do I need a semantic layer if I have a data warehouse?

The warehouse stores and computes. The semantic layer decides what the numbers mean. Without it, each tool and analyst re-implements definitions, and the numbers drift.

Why does a semantic layer matter for AI assistants?

It gives the model a vetted vocabulary of measures and joins to choose from, so answers are compiled from approved definitions rather than improvised SQL.

Sources

2 references
  1. dbt Semantic Layer (opens in a new tab)
    dbt Labsdocs.getdbt.com

    Centralizing metric definitions for consistent self-service; moving definitions out of the BI layer.

  2. Dimensional Modeling Techniques (opens in a new tab)
    Kimball Groupkimballgroup.com

    Conformed dimensions, facts and star schemas.

External sources were accessed at the time of writing. Kimo product details, customers and figures in examples are illustrative unless a source is cited.

Used in

Where Semantic layer shows up in practice

9 resources
GuideBeginner
All

Install Kimo Bridge with Docker

Run the bridge next to your database in minutes: outbound-only, read-only, revocable.

Arno Visser
10 min read
GuideIntermediate
All

The Kimo Bridge security model

What leaves your network, what never does, and how every query is authorized and audited.

Rhea Patel
10 min read
Whitepaper
All

Your Data, Your Rules

The hybrid analytics architecture behind Kimo Bridge: live query pushdown, optional cloud sync, and zero-trust by default.

Arno Visser
22 pages
Whitepaper
BI

The Board Pack Playbook

Metrics, narrative and data discipline for every board meeting and funding round, from seed to Series B.

Inès Dupuis
28 pages
ArticleProduct
All

Introducing Kimo Bridge: your data stays home

A small package you install next to your database opens a private, outbound-only bridge to Kimo. Query live, store nothing — or sync to our cloud when you want to.

Théo Marchand
7 min read

Your data officer is ready.

Connect a source — or install Kimo Bridge and keep data on your servers — then ask a question and get an answer you can audit.