Metabase

Metabase (opens in a new tab) is an open-source way to help everyone in your company to ask questions and learn from data. There's also a fully-managed cloud service (opens in a new tab) for Metabase.

Semantic Layer Sync

It is recommended to use Semantic Layer Sync to connect Cube to Metabase. It automatically synchronizes the data model between Cube and Metabase.

SQL API

You can also use the SQL API to connect Cube to Metabase.

Semantic Layer Sync is the recommended way to connect Metabase to Cube. If you're using the SQL API, consider migrating to Semantic Layer Sync.

Here's a short video guide:

Cube Cloud

Click Deploy SQL API and then the How to connect your BI tool link on the Overview page of your Cube deployment. Navigate to the BIs and Visualization Tools tab. You should see the screen like the one below with your connection credentials:

Self-hosted Cube

You need to set the following environment variables to enable the Cube SQL API. These credentials will be required to connect to Cube from Metabase later.

CUBEJS_PG_SQL_PORT=5432
CUBEJS_SQL_USER=myusername
CUBEJS_SQL_PASSWORD=mypassword

Connecting from Metabase

Metabase connects to Cube as to a Postgres database.

Querying data

Your cubes will be exposed as tables, where both your measures and dimensions are columns.

You can write SQL in Metabase that will be executed in Cube. Learn more about Cube SQL syntax on the reference page. You can also create a visualization of the executed SQL query.

If you prefer using the UI interface to "Ask a question", you can do that as well.