The problem to solve
- Each report author writes their own SQL or DAX for the same metric.
- Numbers differ between finance and sales dashboards.
- Nobody knows which dataset is official.
A semantic layer gives one governed definition of business entities and metrics that reports reuse.
Where definitions can live
| Option | Strength | Trade-off |
|---|---|---|
| BI semantic model (Power BI shared models, LookML) | Rich modelling, fast in its own tool | Other tools can't fully reuse it, or only via connectors |
| Headless semantic layer (dbt Semantic Layer, Cube) | Tool-agnostic, defined as code | Another component to run; BI integrations vary |
| Platform metric definitions (Databricks metric views, Snowflake semantic views) | Close to the data and governance | Newer; tool support varies |
| Gold tables with pre-computed metrics | Simple, any tool reads them | Less flexible slicing; risk of metric logic in many tables |
Decide by tool landscape
| Situation | Approach |
|---|---|
| One BI tool (e.g. Power BI everywhere) | Shared, certified semantic models in that tool; gold tables underneath |
| Several BI tools plus notebooks and AI assistants | Headless or platform-level metric definitions; BI tools consume them |
| Early stage, few metrics | Well-modelled gold tables with documented metric logic, then add a layer later |
AI assistants and natural-language query tools work far better on top of a semantic layer than on raw tables, which is one more reason to invest in it.
Governance model
| Element | Design |
|---|---|
| Certified datasets/models | A small set, clearly labelled, owned by a central or domain team |
| Metric owner | A business owner signs off each key metric definition |
| Change control | Definitions in Git; pull requests reviewed by owners; versioned |
| Self-service | Users build reports on certified models; new metrics go through a request path |
| Documentation | Definition, grain, filters and owner visible next to the metric |
Avoid these traps
- One giant model with every table. It becomes slow and hard to change. Prefer domain models.
- Copying the same measure into many reports instead of using shared models.
- No deprecation path, so old and new definitions live side by side for years.
Tip
Start with the ten metrics leadership looks at every week. Get one agreed definition and owner for each, publish them in the semantic layer, and grow from there.
Checklist
- BI tool landscape documented
- Location of metric definitions chosen
- Certified datasets and owners named
- Definitions under version control with reviews
- Top metrics defined and published first
- Deprecation process agreed