| Category | AI-native analytics engine with an integrated data stack | Semantic layer, now an agentic analytics platform with its own UI |
|---|
| Who it is built for | AI product and analytics teams, plus anyone who works with data — spreadsheet users through ML engineers | Platform and application engineers embedding metrics |
|---|
| Primary interface | The agent you already use, over MCP — plus Workspaces, notebooks, reports and data apps for the people who want a UI. All of them consume the same model rather than being the place it lives | Code, and now a UI — cubes authored in YAML, JavaScript or Python; Workbooks and chat in Cube D3 |
|---|
| Modeling language | Malloy — a modeling and query language with imports, inheritance, and public and private members | YAML configuration, with JavaScript or Python for dynamic cases |
|---|
| What is open | Open core. Malloy is open source, and we build and maintain Malloy Publisher, the open-source server for Malloy models. Your model is code in your repository, and Credible is in the Apache Ossie ecosystem for semantic interchange | Open core — Cube Core is open source and self-hostable; Cube Cloud and D3 are commercial |
|---|
| How the model gets built | A coding agent with open-source MCP tools and agent skills, capturing context from where it already lives | Hand-authored cubes, with a Semantic Model Agent proposing and editing them in Cube D3 |
|---|
| Governance | Governance as code. Access rules are annotations in the model itself — versioned, reviewed and composable like any other code | Row-level and member-level security defined in configuration |
|---|
| Materialization and caching | One annotation on the source, in the same file as the logic it materializes — no derived-table block, no rollup definitions, no refresh triggers, no orchestration run to schedule. Optional per source: query your own warehouse directly, or hold a source hot in Credible’s in-memory serving layer, which is how a team on Postgres gets fast serving without buying a warehouse to get it | Pre-aggregations — materialized rollups the query planner selects automatically, refreshed incrementally, each one defined by hand |
|---|
| How an agent finds the right data | Search. Typed targets — source, dimension, measure, view, even a dimensional value — are matched against an index of the model and come back ranked, so an agent asks for what it needs instead of picking a model and touring it | A discovery tool finds cubes by topic or intent as the agent’s first call, then describe_data for the detail |
|---|
| Where the model can be used | One model served to every surface — agents over MCP, plus APIs, an SDK, embedded dashboards, notebooks and HTML data apps. Results carry an interactive UI resource (MCP Apps, the official extension), so a client that supports it renders a real chart or table instead of the model re-narrating rows | Four APIs (SQL, REST, GraphQL, MDX), an MCP server and A2A, plus its own BI interface |
|---|
| Scale and portability | Built for globally distributed, high-availability workloads. Warehouse-agnostic on open-source Malloy — BigQuery, Snowflake, Postgres, MySQL, Trino, Presto and DuckDB, which also reads Parquet straight out of object storage including Azure Data Lake — so the model travels | Warehouse-agnostic, but scaling is tied to Cube Cloud compute |
|---|
| What you pay for | Usage, not seats — unlimited users on every plan, so adding people never changes the bill. Metered per organization on tokens, bytes processed, bytes served and hot storage, starting free. Your own agent’s tokens are never billed, and a query that runs on your own warehouse is not metered for the scan — only for the result it hands back | Per-developer seats plus consumption in Cube Compute Units, over a monthly minimum |
|---|