Metabase
metabase · Business intelligence
GitHub stars
49,967Awaiting first sync
No measured star history yet
What is Metabase?
Metabase is built for the people in a company who need numbers from the database but do not write SQL. An admin connects the data once, and colleagues explore it by clicking, save what they find as charts and dashboards, and share it by link, email or Slack. Analysts who prefer SQL can write it directly in the same tool.
Metabase is an open-source business intelligence tool that connects to your company databases. People build questions with a point-and-click query builder or a SQL editor, then turn them into dashboards, alerts and scheduled email or Slack reports.
Core capabilities
- Build questions with a point-and-click query builder, or write SQL in the built-in editor.
- Connect PostgreSQL, MySQL, SQL Server, BigQuery, Snowflake, MongoDB and other officially supported databases.
- Self-host with Docker or the JAR file under the AGPL, with PostgreSQL or MySQL for the app database.
Ask questions with or without SQL
The query builder lets you choose data, filter it, join tables, add custom expressions and summarise by group, then view the result as a table or one of many chart types, including bar, line, pie, map and pivot table. The SQL editor adds parameters and reusable snippets. Officially supported databases include PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, BigQuery, Snowflake, Redshift, MongoDB and ClickHouse.
- Query builder
- SQL editor
- PostgreSQL
- MySQL
Dashboards, alerts and sharing
Dashboards combine saved questions across tabs, with filter widgets that apply to several charts, custom click behaviour and auto-refresh. Subscriptions send a dashboard to email or Slack on a schedule, with CSV, XLSX or PDF attachments. Alerts watch a single question for any result or a crossing of a goal line. Admins can also turn on public links and iframes for view-only sharing. An admin must first set up email or Slack.
- Dashboards
- Filters
- Subscriptions
- Alerts
- Public links
Run it yourself under the AGPL
Run the metabase/metabase Docker image on port 3000, or start the JAR file with Java. Both keep their own data in an embedded H2 database that the docs say to avoid in production, so point Metabase at PostgreSQL or MySQL with the MB_DB_ environment variables. Code outside the top-level enterprise folder is AGPL. That folder, and the metabase-enterprise image, use the Metabase Commercial License.
- Docker
- JAR
- PostgreSQL
- AGPL
Where it fits
Use cases
- 01
Let sales and ops answer their own data questions
Connect your PostgreSQL or MySQL database as an admin, then have colleagues pick a table in the query builder, add filters and a summary, and save the chart. Those who know SQL can switch to the SQL editor for harder queries.
- 02
Build a weekly KPI dashboard
Save several questions to one dashboard, add filter widgets that apply to all of them, and set an email or Slack subscription to deliver it on a schedule. The dashboard can also auto-refresh on a wall screen.
- 03
Get warned when a number moves
Save a question such as daily failed payments, choose Create an alert, and pick a trigger such as any result or crossing a goal line. Metabase checks it on your schedule and notifies you by email or Slack.