Skip to main content

LookML vs a Universal Semantic Layer: What Changes

Emily Winks, Data Governance Expert, Atlan
Data Governance Expert
Updated:09/10/2026
|
Published:09/10/2026
14 min read

Key takeaways

  • LookML defines metrics only inside Looker; Cube and the dbt Semantic Layer serve one definition to every BI tool.
  • Open Semantic Interchange, now Apache Ossie, is the emerging standard for moving metric definitions across tools.
  • Cube's open-source core runs at over 200 Fortune 1000 companies; a LookML model still lives inside Looker alone.
  • The real question is rarely LookML vs Cube. It's whether either can tell an agent who owns the number.

LookML vs a universal semantic layer: what's the difference?

LookML is Looker's modeling language: dimensions, measures, and joins defined once as version-controlled code, but usable only inside Looker. A universal semantic layer, Cube, the dbt Semantic Layer, or AtScale, defines the same kind of metric once and serves it over SQL, REST, GraphQL, or MDX to any BI tool, spreadsheet, or AI agent that queries it, not just one. Teams that live entirely inside Looker rarely feel the gap. Teams running a second BI tool, an embedded analytics product, or an AI agent that needs to cite a metric feel it immediately.

Key distinction:

  • LookML — Looker-only modeling language, version-controlled, translated to SQL at query time
  • Universal semantic layer — Cube, dbt Semantic Layer, or AtScale, serving one metric to every BI tool and agent
  • Open Semantic Interchange — the vendor-neutral format both categories are converging toward
  • Atlan's role — the context layer above either choice, adding lineage, ownership, and access policy

See how ready your metric layer is for AI

Assess Context Maturity

LookML defines every dimension, measure, and join a Looker analyst sees, version-controlled and reviewed like application code, which is why Looker’s own testing found it cuts gen-AI query errors by up to two-thirds versus querying raw warehouse tables. What that discipline doesn’t do is travel: a LookML model is compiled by Looker’s own SQL generator, and no other BI tool or AI framework reads that format natively. A universal semantic layer, Cube, the dbt Semantic Layer, or AtScale are the three names that come up in almost every evaluation, solves a related but distinct problem: define a metric once and serve it to whichever tool asks, Looker included. Atlan sits above either choice as the context layer, attaching lineage, ownership, and access policy to whatever semantic layer a team already runs. This page assumes you already know what LookML does inside Looker; it answers the question that comes after: does a second BI tool or an AI agent asking for the same number change what you should model in.

Dimension LookML Universal semantic layer
What it is Looker’s proprietary modeling language for dimensions, measures, and joins A vendor-neutral metric layer (Cube, dbt Semantic Layer, AtScale) that any tool can query
Where it lives Compiled by Looker’s own SQL generator; runs only inside Looker Runs independently of any single BI tool, served over its own API layer
Query surface Looker’s Explore interface only SQL, REST, GraphQL, and MDX/DAX depending on the vendor
Portability Locked to Looker unless rebuilt elsewhere Designed to be queried by multiple BI tools, apps, and agents at once
Governance Git-based review of the model itself, no lineage or ownership metadata Defines and serves metrics; governance still sits outside the semantic layer
Best for Teams whose only BI interface is Looker Teams running more than one BI tool, an embedded product, or AI agents across both

LookML vs a universal semantic layer: what’s the difference?

The distinction holds regardless of which universal option a team picks: LookML governs what a metric means inside one BI tool, and a universal semantic layer governs what it means across every tool that asks. Looker shipped LookML in 2012 to stop analysts from redefining the same calculation five different ways across five dashboards, and it succeeded at exactly that scope. A practitioner on r/BusinessIntelligence put the boundary plainly: a team needs “semantic definitions to be available throughout our data ecosystem, including rETL processes, machine learning pipelines, and SQL access,” not locked inside one BI platform.

Cube, the dbt Semantic Layer, and AtScale answer that exact complaint, each from a different starting point. Cube ships an open-source core under a dual MIT and Apache 2.0 license and now runs data experiences at more than 200 Fortune 1000 companies, serving SQL, REST, GraphQL, and MDX from one definition. The dbt Semantic Layer, rebuilt around MetricFlow at Coalesce 2023, keeps definitions in the same Git-reviewed YAML dbt engineers already own. AtScale takes the opposite entry point: a universal semantic layer built for the OLAP, Excel, and Power BI estates that predate the modern warehouse. None of the three is “the” universal semantic layer; each earns that label by serving more than one consumer, the property LookML was never built to have.


What is LookML?

LookML is the language Looker uses to define dimensions, measures, and joins once, in version-controlled files, so every Explore and dashboard inherits the same definition. It has worked this way since 2012, roughly a decade before “semantic layer as code” became the industry’s phrase for it. A field guide to semantic layers covers the broader category; the shorter version is that LookML answers “what does this metric mean” once, inside Looker, and stops there by design.

That stop is the whole tradeoff. A team whose only BI interface is Looker rarely notices it: the model, the dashboards, and the analysts asking questions all live in the same place. The gap shows up the moment a second consumer, another BI tool, a reverse-ETL pipeline, or an agent querying the warehouse directly, needs the same number and can’t read LookML to get it.

Core components of LookML


  • Views: dimension and measure definitions mapped to warehouse columns
  • Explores: views assembled through joins into the models analysts open
  • Models: groupings of Explores that control what a team or role sees
  • Persistent Derived Tables: pre-computed results for expensive joins
  • Git-based version control: every metric change reviewed like application code

What is a universal semantic layer?

A universal semantic layer defines a metric once, in code or configuration, and serves that definition over an API any BI tool, embedded product, or AI agent can call, rather than confining it to one platform’s interface. Semantic layer for analytics covers the mechanics in more depth; the property that matters for this comparison is portability, not modeling syntax.

Cube’s documented architecture covers that job in four parts: data modeling in YAML, JavaScript, or Python; access control enforced at the semantic layer itself; a caching layer with Cube Store for sub-second queries; and a multi-API surface spanning SQL, REST, GraphQL, MDX/DAX, and an MCP server built for AI agents. The dbt Semantic Layer keeps that same job inside the dbt project analytics engineers already review in pull requests, and anchored Open Semantic Interchange at its September 2025 launch, a vendor-neutral format for moving definitions between tools without a rewrite. That initiative has since entered the Apache Incubator as Apache Ossie, grown from 17 launch partners to more than 50, and remains worth watching rather than something any product ships native support for yet. AtScale rounds out the shortlist for teams with deep MDX and Excel legacy to migrate off of first. The same choice shows up one layer down the stack: Unity Catalog’s semantic layer and Snowflake Semantic Views both trade warehouse-native convenience for the same portability gap, one warehouse over.

Core components of a universal semantic layer


  • Vendor-neutral modeling: metrics defined in YAML, SQL, or a DSL that isn’t tied to one BI vendor’s interface
  • Multi-protocol serving: SQL, REST, GraphQL, and MDX/DAX from a single definition, depending on the vendor
  • Cross-tool consistency: the same metric returns the same value in every connected BI tool, app, or agent
  • Open Semantic Interchange alignment: an emerging, vendor-neutral export format several of these tools now support

One context layer, every metric definition

LookML, Cube, and the dbt Semantic Layer are three places a metric definition can live. The AI Context Stack shows where each fits relative to the warehouse, the catalog, and the agents querying all three.

Get the Context Layer Ebook

LookML vs a universal semantic layer: head-to-head

The sharpest differences show up in reach, not modeling quality. LookML’s model is more mature inside its own scope; a universal semantic layer trades some in-platform polish for a query surface that works everywhere.

Dimension LookML Universal semantic layer
Primary focus Consistent metrics inside one BI tool Consistent metrics across every BI tool and agent that queries them
Key stakeholder Looker analysts and admins Analytics engineers, platform teams, and whoever owns AI-agent access
Query languages Looker’s Explore UI, compiled to SQL SQL, REST, GraphQL, MDX/DAX, and (for Cube) MCP
Licensing Bundled with a Looker (Google Cloud) subscription Open-source core (Cube) or included with dbt/warehouse tooling; AtScale is enterprise-licensed
Time to value Fast if Looker is already the BI standard Longer setup; value compounds as more tools connect to the same model
Portability Ties the model to Looker Designed to move between BI tools and, increasingly, via Open Semantic Interchange
Failure mode A well-modeled metric no other tool or agent can read A portable metric definition with no record of who owns it
Industry standard None; proprietary to Looker Open Semantic Interchange (incubating at Apache as Ossie)

Example: an AI copilot that needs Looker’s number without Looker’s interface. A team building an agent to answer “what was Q3 revenue” faces this exact fork. If the agent only ever asks Looker, LookML’s own definition is a complete answer, provided AI agent governance already covers who that agent may ask on behalf of. The moment the same agent also needs a number a Tableau dashboard or a Snowflake Cortex Analyst session produced, LookML has nothing to say about whether those numbers agree, because it was never built to see outside Looker.


Do you need to replace LookML with a universal semantic layer?

Most teams that ask this question don’t need to replace anything. They need the two to work together: LookML stays the interface analysts already know, and a universal layer handles everything LookML can’t reach.

How they work together


Looker Modeler is Google’s own attempt at this seam, decoupling LookML’s model from the Looker interface so other tools can read it, though adoption is still early. Short of that, teams typically keep LookML as the system of record for Looker dashboards and add Cube or the dbt Semantic Layer underneath for everything Looker doesn’t touch: an embedded analytics product, a second BI tool after an acquisition, or an AI agent harness that needs to query metrics directly. Context layer vs semantic layer covers the layer above both: neither records who owns a metric or whether the requesting agent may see it, a governance question, not a modeling one.

The MCP Server delivers that governed context the same way regardless of which semantic layer sits underneath, the same pattern how to implement an enterprise context layer for AI walks through for a data catalog or any other data infrastructure an AI program depends on.


When should you add a universal semantic layer on top of LookML?

The right call depends on how many consumers need the same metric, not on whether LookML is doing its job well inside Looker.

Stay with LookML alone when Looker is the only BI interface your organization runs, every dashboard and Explore lives inside it, and no other tool or agent needs to query the same warehouse tables directly.

Add a universal semantic layer when a second BI tool enters the stack (common after an acquisition), an embedded analytics product needs metrics served over an API, or an agent needs a metric without going through Looker’s interface. This is the same single-stack lock-in tradeoff that shows up whenever one vendor’s format becomes the only place business logic lives.

Add a governed context layer regardless of which semantic layer you pick when more than one agent needs to cite the same metric, or why AI agents fail in production starts to look less like a model problem and more like a definition problem.

Same metric, different tools, different answers?

If LookML and a second semantic layer define the same metric two different ways, the Context Gap Calculator shows what that drift is actually costing your team.

Try the Gap Calculator

How Atlan approaches LookML and universal semantic layers

Atlan sits underneath whichever semantic layer a team runs, cataloging what already exists instead of asking anyone to model a metric a second time. A live Looker connector catalogs Explores, dashboards, models, views, and folders, and crawls the underlying LookML files to resolve lineage back to the physical warehouse tables already tracked from Snowflake, BigQuery, or any other source. Where a team runs a universal semantic layer instead, dbt Semantic Layer definitions are ingested natively and enriched with ownership, lineage, and quality signals the semantic layer itself doesn’t carry.

Either path lands in the same place: core components of a context layer sit above LookML, Cube, or the dbt Semantic Layer alike, resolving what context engineering actually requires, a definition plus who’s accountable for it. A context graph connects a LookML measure to the same governance metadata a Cube or dbt metric carries, so one agent gets a consistent answer no matter which semantic layer produced the number. MCP delivers that context to any agent framework, and in the AI Labs benchmark, adding it improved text-to-SQL accuracy by 38%, independent of which semantic layer a team runs.


Real stories from real customers: One shared vocabulary across tools

"Atlan captures Workday's shared language to be leveraged by AI via its MCP server. As part of Atlan's AI labs, we're co-building the semantic layer that AI needs."

— Joe DosSantos, VP Enterprise Data & Analytics, Workday

"Atlan is much more than a catalog of catalogs. It's more of a context operating system…Atlan enabled us to easily activate metadata for everything from discovery in the marketplace to AI governance to data quality to an MCP server delivering context to AI models."

— Sridher Arumugham, Chief Data & Analytics Officer, DigiKey

Neither account names LookML or a specific universal semantic layer. Both arrive at the same point this comparison keeps circling back to: the modeling language underneath was never the bottleneck once more than one tool, or more than one agent, needed to agree on what a number meant.

Is your metric layer ready for AI agents to query it?

Run through the checklist enterprise teams use to find governance gaps before scaling AI agents on top of LookML, Cube, or any other semantic layer.

Check Your Readiness

The lock-in question a universal semantic layer alone doesn’t answer

LookML answers what a metric means inside Looker, with a decade of production maturity behind that one job. A universal semantic layer answers the same question across every tool that might ask, at the cost of the deep, single-platform polish LookML has. Neither answers a third question an agent actually needs settled: who owns this number, and is the agent asking allowed to see it. Teams that treat “LookML or Cube” as the whole decision tend to ship a portable metric nobody is accountable for, a governance gap no modeling language was built to close on its own.


FAQs about LookML vs a universal semantic layer

  1. Is LookML a universal semantic layer?
    No. LookML defines dimensions, measures, and joins as code, but only Looker can read that model. A universal semantic layer serves the same kind of definition over SQL, REST, GraphQL, or MDX to any BI tool or AI agent, not one platform.

  2. Can LookML metrics be reused outside Looker?
    Not directly. A LookML view is compiled by Looker’s own SQL generator, and no other tool reads that format natively. Looker Modeler is an early attempt to decouple the model from Looker’s interface, but adoption is still early.

  3. What is a universal semantic layer, with examples?
    It defines a metric once and serves it to every consumer that queries it, across BI tools, embedded analytics, and AI agents, rather than inside one BI platform. Cube, the dbt Semantic Layer, and AtScale are the three most evaluated examples.

  4. Is Cube a replacement for LookML?
    Not usually. Teams committed to Looker as their BI interface tend to keep LookML for what analysts see, and add Cube (or another universal layer) underneath once a second tool, an embedded product, or an agent needs the same metric outside Looker.

  5. Does a universal semantic layer solve AI agent governance on its own?
    No. It solves definition drift: the same metric, computed the same way, everywhere. It doesn’t, by itself, record who owns that metric or whether the requesting agent may see it. That’s a separate, governance-layer question.

  6. How does Atlan work with LookML or a universal semantic layer?
    Atlan catalogs LookML models, Explores, and dashboards directly, and ingests definitions from a universal semantic layer like the dbt Semantic Layer. Either way, Atlan adds lineage, ownership, and access policy, then delivers that context to AI agents through its MCP Server.


Sources

  1. Introduction to LookML, Google Cloud
  2. How Looker’s semantic layer enhances gen AI trustworthiness, Google Cloud Blog
  3. Evaluating Looker and Seeking Advice on Alternatives, r/BusinessIntelligence
  4. What Is a Semantic Layer? Why It Matters for AI Analytics in 2026, Definite
  5. Revamped dbt Semantic Layer: Enhanced Metrics Definition and Querying With MetricFlow, dbt Labs
  6. Snowflake, Salesforce, dbt Labs and More Launch Open Semantic Interchange, Snowflake
  7. Apache Ossie (Incubating): The New Name for Open Semantic Interchange, Apache Ossie
  8. Cube documentation
  9. Cube Is Building a “Semantic Layer” for Company Data, TechCrunch
  10. cube-js/cube, GitHub
  11. Universal Semantic Layer, AtScale

Share this article

signoff-panel-logo

Atlan is the Context Layer for AI. It translates business knowledge, including data definitions, working procedures, and governance policies, into context AI can actually use. This knowledge lives in a single Enterprise Data Graph that every team and AI agent can reach.

In Atlan's AI Labs benchmark, adding this context improved AI's text-to-SQL accuracy by 38%.

Atlan is recognized as a Leader across multiple Gartner reports and Forrester Waves, and is trusted by over 400 enterprises representing $10T+ in market cap, including Mastercard, Workday, General Motors, CME Group, HubSpot, FOX, Virgin Media O2, and Elastic.

Bridge the context gap.
Ship AI that works.