Website Review
What is Cube?
Cube is an analytics platform built around a semantic layer — a central model where business definitions (metrics, dimensions, relationships) are defined once and reused everywhere. Its current positioning is "agentic analytics": the same governed model serves human-facing BI (charts, reports, dashboards) and AI agents that query data through APIs and MCP.
What it actually covers
- Business intelligence for data teams — self-serve analytics where metrics stay consistent across every surface because they come from one model.
- Embedded analytics — putting analytics inside your own product, with several integration paths depending on how much control you want.
- AI/agent access — agents such as Claude, Codex or custom agents retrieve governed data and structured results rather than guessing at raw tables.
- Performance and governance — caching and query performance features, plus permissions that flow from the semantic model through to end users.
Embedded analytics options, by control level
| Approach | Best for | Trade-off |
|---|---|---|
| Chat and dashboard iframes | Fastest drop-in path | Least control over UI |
| Creator Mode | Letting your customers build their own workbooks and dashboards | More surface area to support |
| Chat API / MCP | Fully custom AI analytics experiences, agent-to-agent | Most engineering effort |
| Core Data APIs | Building any UI on top of the data layer | You own the front end entirely |
Who it suits
Data teams that want one definition of truth feeding both dashboards and AI features; SaaS companies embedding analytics into a multi-tenant product with per-customer permissions; and organizations where AI agents need reliable business context rather than direct database access. If you only need a single internal dashboard, a lighter BI tool is likely simpler.
A practical next step: pick your hardest case — a multi-tenant embedded dashboard, or an agent that must answer a metric question correctly — and test whether Cube's semantic model can express your definitions and customer-level permissions without workarounds. The platform is documented at Cube, and its semantic-layer approach is comparable in category to dbt.
How does Cube's semantic layer keep answers governed and consistent for both humans and AI agents?
Cube's semantic layer acts as the single definition layer that every consumer reads from, so a metric like "active customer" or "net revenue" means the same thing whether a human opens a dashboard or an AI agent requests data through MCP or an API. Governance is applied at the model level and flows outward, which is why Cube describes permissions as reaching "through to your customers' permissions" in embedded, multi-tenant deployments. The practical effect: agents get governed, structured results instead of querying raw tables and inventing their own logic.
How the loop works for an agent Cube's page describes an autonomous cycle: the agent understands the request, works against the data model, runs the analysis, and produces a result. For humans, that result surfaces as charts, reports and dashboards; for agents, as governed data and structured output the next operation can consume. Because both paths resolve against the same semantic model, a number an agent reports and a number a dashboard shows should reconcile.
Where the consistency actually comes from
- Central metric and dimension definitions, rather than per-tool SQL.
- Business context and governance attached to the model, not bolted on per surface.
- Permissions enforced from the model through to end-customer access in embedded scenarios.
- MCP and API access for agents, so they read the governed layer rather than the warehouse directly.
Embedded and multi-tenant angle If you're shipping analytics inside your own product, the semantic layer is what keeps tenant A's definitions and permissions from bleeding into tenant B's. Cube lists several embedding paths with different trade-offs: Chat and Dashboard iframes as the fastest drop-in option, Chat API for a fully custom AI experience, Creator Mode where your customers build their own workbooks, and Core Data APIs for maximum control when you're building your own UI. Branding is configurable so the embedded surfaces match your product.
A concrete scenario A fintech product team wants an in-app assistant that answers "how is this account trending?" for each customer. Without a shared semantic layer, the assistant writes its own SQL, drifts from the finance dashboard, and leaks across tenants. With one, the assistant calls the governed model, inherits the account's permission scope, and returns a figure that matches what the customer's own dashboard shows.
How to decide if this fits Choose the semantic-layer-first route when consistency across many surfaces (BI, embedded app, AI agents) and strict multi-tenancy are the hard requirements. If you only need one dashboard for one internal team, the modeling overhead may not pay for itself. A useful next step is to pick your two most contested metrics, define them once in a trial model, and test whether both a dashboard and an agent query return the same number under different user permissions. Cube's own Pricing and documentation pages are the place to check deployment and licensing fit.
What steps are involved in embedding Cube's AI-powered analytics into a multi-tenant SaaS product?
Embedding Cube into a multi-tenant SaaS product is mainly a modeling-and-integration project, not a UI rewrite. Cube supplies a semantic layer that holds your metric definitions, governance and tenant permissions, then exposes that layer to your own product through several embedding surfaces. The steps below follow that order, which is also the order that avoids rework.
1. Define the semantic model first
Model your business entities, metrics and dimensions in Cube's semantic layer so one definition serves every surface. This is the step that makes multi-tenancy manageable: tenant rules and row-level permissions are expressed once in the model rather than re-implemented per screen or per customer.
2. Decide how tenants map to the model
Cube describes itself as multi-tenant by construction, with governance flowing from the model through to each customer's permissions. In practice you decide how a tenant identifier is passed on every request and how it filters queries, then verify that a customer can only ever see their own slice — including through any AI agent path.
3. Choose your embedding surface
The right choice depends on how much control you want versus how fast you want to ship.
| Surface | Best for | Trade-off |
|---|---|---|
| Embedded iframes (Chat and Dashboard) | Fastest drop-in path to a working analytics experience | Least control over layout and interaction |
| Chat API | A fully custom AI analytics experience, including agent-to-agent use via MCP | You build and maintain the interface |
| Creator Mode | Letting your customers build their own workbooks and dashboards inside your app | More surface area to govern and support |
| Core Data APIs | Maximum control at the data layer, with any UI on top | Most engineering effort |
4. Wire in agents and automation
Cube's agentic path is aimed at AI agents that act without a person in the loop: requests and triggers arrive from a human, a schedule or an agent, and Cube runs an autonomous loop — understand the request, work on the data model, run the analysis, produce the result. Agents reach governed data through MCP and APIs, so results come back as structured output for the next operation rather than a chart for a person to read.
5. Apply branding and tenant permissions
Cube's embedded surfaces are designed to take your colors, branding and agent name so they disappear into your product. Confirm this early, because white-labelling decisions can affect which surface you pick.
6. Validate governance end to end
Test the unglamorous cases: a tenant asking about another tenant's data, an agent asked a question outside its permissions, and a metric definition changed in the model. If the model is the single source of truth, all three should resolve consistently.
A useful next step: pick one customer-facing question your users already ask — for example, "how is my account trending this quarter?" — and trace it through the model, the tenant filter and your chosen surface before committing to a broader rollout. That single path exposes most integration problems cheaply.
If you want to compare approaches, Cube's own documentation and demo pages are the most direct source, and it is worth reading how a reference customer such as Brex evaluated Cube against alternatives.
How does Cube compare to dbt Semantic Layer and LookML for a data team's analytics stack?
Cube positions itself as a semantic layer that serves both AI agents and human analysts from one model, and its own page frames the choice against dbt Semantic Layer and LookML directly (it cites Brex picking Cube over both). The practical difference is where each tool expects the semantic model to live and who consumes it. For a data team, that usually decides the comparison more than any feature list.
Where they diverge
- dbt Semantic Layer: definitions live alongside your dbt transformations. Strong fit if dbt already owns your transformation layer and you want metrics defined once, close to the models that produce them. It assumes a dbt-centric workflow.
- LookML: the modeling language inside Looker. Deep, mature, and tightly coupled to Looker's exploration and dashboarding. Best when Looker is your BI surface and you are comfortable staying inside that ecosystem.
- Cube: a standalone semantic layer you point multiple surfaces at — BI tools, embedded customer-facing analytics, and now AI agents via MCP and APIs. Cube's page emphasizes multi-tenancy, governance flowing from the model to customer permissions, and caching/query performance. That is aimed at teams shipping analytics into a product, not only serving internal dashboards.
A concrete way to decide
Ask what has to consume the model in two years:
- Only internal dashboards in one BI tool → LookML or dbt Semantic Layer is the lower-friction path.
- Internal BI plus AI agents needing governed, structured results → Cube's MCP/API story is the reason to look.
- Analytics embedded in your own product, with per-customer permissions → Cube's multi-tenant framing is the differentiator; dbt Semantic Layer and LookML were not designed around that as the primary case.
A useful next step is to prototype one metric — say, monthly active accounts — in each candidate and trace it end to end: model definition, permission handling, and what an agent or embedded iframe actually returns. The tool that keeps that metric consistent across every surface wins, regardless of which one has the nicer editor.
Worth reading the primary sources before committing: Cube, dbt, and Looker.
What is the process for connecting an autonomous AI agent to Cube's governed data via MCP or APIs?
Cube connects an autonomous agent through its semantic layer rather than by handing the agent raw database access. The agent asks a question or fires a trigger, Cube maps that request onto the semantic model, applies business context plus governance and permissions, runs the analysis, and returns a structured result the agent can act on — or a chart, report or dashboard for a human.
The practical flow
- Model and publish the data. You define metrics, dimensions, joins and business logic in Cube's semantic layer, so “revenue” or “active customer” means one thing everywhere.
- Expose it to the agent. Cube offers an MCP endpoint and APIs for agent-to-agent use, alongside a Chat API for custom AI analytics experiences. The MCP route is the one aimed at agents like Claude, Codex or a custom agent.
- Authenticate and scope the agent. Because governance flows from the model through to end-user permissions, you attach the agent to a tenant or user context instead of giving it broad warehouse credentials.
- Let the agent loop. The agent interprets the request, works against the data model, runs the analysis and produces a result — then uses that structured output for the next operation.
- Return the right surface. The same governed answer can come back as structured data for the agent, or as an embedded chart, dashboard or iframe for a person.
Choosing between the paths
| Path | Best for | Trade-off |
|---|---|---|
| MCP / APIs | Autonomous agents and agent-to-agent workflows | You build more of the interaction layer yourself |
| Chat API | A fully custom AI analytics experience | More engineering than a drop-in embed |
| Chat and dashboard iframes | Fastest route to something in front of users | Less control over the surrounding UX |
| Creator Mode | Letting your customers build their own workbooks and dashboards | Heavier product surface to support |
| Core Data APIs | Maximum control at the data layer, any UI on top | You own essentially everything above the data |
Where it fits
For an embedded analytics product, the multi-tenant angle matters most: one semantic model serves many customers while permissions stay scoped per tenant, so an agent working on behalf of customer A cannot read customer B's numbers. For an internal data team, the value is consistency — the agent and the analyst's dashboard draw on the same definitions.
A useful first step is to pick one high-frequency question your team or customers already ask, model it in Cube, and wire a single agent to it via MCP. That tests permission scoping and answer quality on a narrow surface before you expand the agent's reach. If you want to see comparable approaches, Cube documents its own setup, and it is worth understanding how a semantic layer differs from a metrics layer in tools like dbt.
How does Cube handle data governance and permissions across different customers in embedded analytics?
Cube treats governance and permissions as part of the semantic model itself, then carries that model through to each embedded surface. In practice, you define metrics, dimensions, joins, and access rules once in the semantic layer, and every consumer — dashboards, iframes, Chat API, or an AI agent — reads from the same governed definitions. That is the core claim on the page: "One semantic model keeps every answer governed and consistent."
For multi-customer embedded analytics, the relevant idea is that governance flows "from your model through to your customers' permissions." The page describes Cube as "multi-tenant by construction," meaning tenant isolation and customer-level access are intended to be handled at the modeling and query layer rather than re-implemented in each front-end or agent integration. Because the same model backs both human-facing dashboards and agent-facing APIs/MCP, a customer's permissions apply whether a person clicks a chart or an AI agent requests the data.
H3 What this means in practice
- Define once, enforce everywhere. Access rules and metric definitions live in the semantic layer, so an embedded dashboard, an iframe, and an agent query should return the same governed result for the same user.
- Tenant scoping is a modeling concern. You map customers/tenants to the data and rules in the model, then pass user context at query time so each tenant sees only its own data.
- Agents inherit the same guardrails. Cube positions itself as "BI for both humans and AI agents," so agent access is meant to be grounded in the same permissions rather than bypassing them.
- Branding is separate from governance. The page notes embedded surfaces can carry "your colors, your branding, your agent name," which is a presentation concern; permissions remain tied to the model.
H3 A concrete scenario
Imagine a SaaS product with three enterprise customers, each with its own account data and its own set of authorized users. You model the shared metrics once, add tenant and role rules, and embed dashboards or a Chat API experience in your app. When a user at Customer A opens a report — or asks an agent a question — Cube evaluates their identity against the model and returns only what that tenant and role should see. You avoid rebuilding permission logic for every new surface.
H3 How to decide if this fits
- Good fit if you already want a single source of truth for metrics and need that same governance to extend to embedded dashboards and AI agents.
- Less of a fit if your access rules are highly bespoke per customer and can't be expressed in a semantic model, or if you only need a simple chart embed with no shared definitions.
- Check before committing: how tenant context is passed at query time, how row- and column-level rules are expressed, and how permissions behave through the Chat API and MCP paths specifically.
Next step: review the modeling and security documentation, then prototype one tenant with a row-level rule and verify it holds across an embedded dashboard and an agent query. Start at Cube.
User reviews (0)