What Is a Semantic Layer?

The single governed mapping from warehouse tables to business vocabulary.

0/1 done

Overview

One definition, every consumer

A semantic layer is the layer of software between your warehouse and everything that reads from it. It does three jobs:

  1. Names the business vocabulary — entities (Customer, Order), measures (revenue, order_count), dimensions (country, product_line, week).
  2. Maps that vocabulary to physical SQL — the revenue metric is SUM(orders.amount_cents)/100, joined to customers on customer_id.
  3. Compiles consumer queries against the vocabulary into warehouse-native SQL on demand — Snowflake, BigQuery, Databricks, Postgres.

The leverage: every consumer (Looker, Hex, Streamlit, an embedded app, an LLM agent, a Slack bot) reads the same definitions. 'Revenue' means one thing across the company.

Without a semantic layer

Each tool re-writes its own SQL. Marketing's dashboard says $2.3M; Finance's says $2.1M; the CEO loses faith in both. Three months are spent reconciling the difference, only to find one excluded refunds and the other excluded VAT.

Where it sits

Sources → Warehouse (Snowflake/BigQuery/Databricks)
       → dbt models (raw → staging → marts)
       → SEMANTIC LAYER  ← *this track*
       → Consumers (BI, notebooks, apps, LLMs)

It is not a warehouse, not a dashboard tool, not a metrics dashboard product — it is the typed contract between warehouse and consumer.

Analogy — the trusted concierge

A semantic layer is a trusted hotel concierge. Guests (BI tools, notebooks, LLMs) ask in plain language — 'a quiet room near the lobby', 'how was revenue last quarter?' — and the concierge translates that intent into the hotel's internal codes (room numbers, SQL joins) and returns the answer. Two guests who ask the same question always get the same answer because there is only one concierge desk. Without one, every guest wanders the corridors guessing which door is theirs — and they all come back with different rooms.

The shape of the modern stack

Click a node to focus its neighbourhood · drag to pan · scroll to zoom

Where the semantic layer sits — between warehouse marts and every consumer surface. One definition, many frontends.

Make it stick

Catalogue every tool in your company that reads from the warehouse. For each, ask: who decides what 'revenue' means inside that tool? If the answer is 'whoever wrote the first dashboard', you have N silently competing semantic layers and one of the goals of this track is to converge on one.

  • Which two dashboards in your company would disagree about a top-line KPI today?
  • Who is the single person who could answer 'what is the official revenue definition?' — and is that role written down?

Reading in progress · 0 of 1 activity done