metabase
The simplest, fastest way to get business intelligence and analytics to everyone in your company :yum:
Top Related Projects
The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
Apache Superset is a Data Visualization and Data Exploration Platform
Make Your Company Data Driven. Connect to any data source, easily visualize, dashboard and share your data.
Apache ECharts is a powerful, interactive charting and data visualization library for browser
Open-source web platform used to create live reporting dashboards from APIs, MongoDB, Firestore, MySQL, PostgreSQL, and more 📈📊
Quick Overview
Metabase is an open-source business intelligence and analytics tool that allows users to easily visualize and share data from various sources. It provides a user-friendly interface for creating dashboards, charts, and reports without requiring extensive technical knowledge, making data analysis accessible to a wide range of users within an organization.
Pros
- Easy to set up and use, with a intuitive interface for non-technical users
- Supports a wide range of data sources, including SQL databases, NoSQL databases, and cloud services
- Offers powerful visualization tools and customizable dashboards
- Provides robust sharing and collaboration features
Cons
- Limited advanced analytics capabilities compared to some enterprise BI tools
- Can be resource-intensive for large datasets or complex queries
- Customization options for visualizations may be limited for some advanced use cases
- Some users report occasional performance issues with large-scale deployments
Getting Started
To get started with Metabase:
- Download the latest version from the Metabase website.
- Run the JAR file using Java:
java -jar metabase.jar
- Open a web browser and navigate to
http://localhost:3000
. - Follow the setup wizard to connect your data source and create an admin account.
- Start exploring your data and creating visualizations!
For Docker users:
docker run -d -p 3000:3000 --name metabase metabase/metabase
This will start Metabase in a Docker container, accessible at http://localhost:3000
.
Competitor Comparisons
The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
Pros of Grafana
- More extensive data visualization options and customizable dashboards
- Better support for real-time monitoring and alerting
- Wider range of data source integrations, including time-series databases
Cons of Grafana
- Steeper learning curve, especially for non-technical users
- Less focus on ad-hoc querying and data exploration
- More complex setup and configuration process
Code Comparison
Metabase (Clojure):
(defn format-result
[result]
(update result :rows (partial mapv vec)))
Grafana (TypeScript):
export function formatResult(result: any): FormattedResult {
return {
...result,
rows: result.rows.map((row: any[]) => Array.from(row)),
};
}
Both projects use different programming languages, with Metabase primarily using Clojure and Grafana using TypeScript. The code snippets show similar functionality for formatting query results, but with language-specific implementations.
Grafana's codebase tends to be more verbose due to TypeScript's static typing, while Metabase's Clojure code is more concise. Grafana's approach may provide better type safety and tooling support, while Metabase's code might be more expressive for certain tasks.
Apache Superset is a Data Visualization and Data Exploration Platform
Pros of Superset
- More extensive visualization options and customization capabilities
- Supports a wider range of databases and data sources
- Advanced features like SQL Lab for direct querying and exploration
Cons of Superset
- Steeper learning curve and more complex setup process
- Requires more technical expertise to configure and maintain
- Less intuitive user interface for non-technical users
Code Comparison
Superset (Python):
from superset import db
from superset.models import SqlaTable
def create_table(table_name, schema, database):
table = SqlaTable(table_name=table_name, schema=schema, database=database)
db.session.add(table)
db.session.commit()
Metabase (Clojure):
(ns metabase.models.table
(:require [metabase.models.database :refer [Database]]))
(defn create-table!
[table-name schema database-id]
(db/insert! Table
:name table-name
:schema schema
:db_id database-id))
Both Superset and Metabase are powerful business intelligence and data visualization tools. Superset offers more advanced features and customization options, making it suitable for data analysts and engineers. Metabase, on the other hand, provides a more user-friendly interface and easier setup, making it ideal for non-technical users and smaller teams. The choice between the two depends on the specific needs and technical expertise of the organization.
Make Your Company Data Driven. Connect to any data source, easily visualize, dashboard and share your data.
Pros of Redash
- More flexible query editor with support for multiple query languages
- Stronger focus on collaboration features and sharing capabilities
- Better support for large datasets and complex queries
Cons of Redash
- Steeper learning curve, especially for non-technical users
- Less intuitive UI/UX compared to Metabase
- Requires more setup and configuration
Code Comparison
Redash query example:
SELECT date_trunc('month', created_at) AS month,
COUNT(*) AS count
FROM users
GROUP BY 1
ORDER BY 1
Metabase query example:
(-> (query :users)
(aggregate (count))
(breakout (datetime-field :created_at :month))
(order-by (asc (datetime-field :created_at :month))))
Both Metabase and Redash are powerful open-source business intelligence and data visualization tools. Metabase is known for its user-friendly interface and ease of use, making it accessible to non-technical users. It excels in quick setup and intuitive data exploration. Redash, on the other hand, offers more advanced querying capabilities and is better suited for technical users and complex data analysis tasks. While Metabase uses a custom query language, Redash supports native SQL queries for various databases, providing more flexibility for experienced data analysts.
Apache ECharts is a powerful, interactive charting and data visualization library for browser
Pros of ECharts
- More versatile and customizable charting library with a wide range of chart types
- Better performance for large datasets and complex visualizations
- Supports both SVG and Canvas rendering for different use cases
Cons of ECharts
- Steeper learning curve due to its extensive API and configuration options
- Requires more manual setup and coding compared to Metabase's out-of-the-box solutions
- Less integrated with data sources and analytics features
Code Comparison
ECharts:
var myChart = echarts.init(document.getElementById('main'));
var option = {
xAxis: {type: 'category', data: ['Mon', 'Tue', 'Wed']},
yAxis: {type: 'value'},
series: [{data: [120, 200, 150], type: 'line'}]
};
myChart.setOption(option);
Metabase:
SELECT day_of_week, COUNT(*) as count
FROM orders
GROUP BY day_of_week
ORDER BY day_of_week
ECharts requires more JavaScript code to create and customize charts, while Metabase uses SQL queries to generate visualizations automatically. ECharts offers more control over the final output, but Metabase provides a simpler approach for quick data exploration and reporting.
Open-source web platform used to create live reporting dashboards from APIs, MongoDB, Firestore, MySQL, PostgreSQL, and more 📈📊
Pros of Chartbrew
- More lightweight and easier to set up for small to medium-sized projects
- Offers a modern, React-based frontend with a clean and intuitive user interface
- Provides built-in integrations with popular APIs like Google Analytics and Stripe
Cons of Chartbrew
- Less extensive feature set compared to Metabase, particularly for advanced analytics
- Smaller community and ecosystem, which may result in fewer resources and third-party integrations
- Limited support for complex data modeling and SQL-based analysis
Code Comparison
Metabase (Clojure):
(defn format-result
[result]
(-> result
(update :rows (partial mapv vec))
(update :cols (partial mapv #(update % :base_type name)))))
Chartbrew (JavaScript):
const formatChartData = (data) => {
return data.map((item) => ({
x: item.date,
y: item.value,
}));
};
Both projects use different programming languages, with Metabase primarily using Clojure and Chartbrew using JavaScript. The code snippets demonstrate basic data formatting functions, highlighting the different approaches and syntax used in each project.
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Metabase
Metabase is the easy, open-source way for everyone in your company to ask questions and learn from data.
Get started
The easiest way to get started with Metabase is to sign up for a free trial of Metabase Cloud. You get support, backups, upgrades, an SMTP server, SSL certificate, SoC2 Type 2 security auditing, and more (plus your money goes toward improving Metabase). Check out our quick overview of cloud vs self-hosting. If you need to, you can always switch to self-hosting Metabase at any time (or vice versa).
Features
- Set up in five minutes (we're not kidding).
- Let anyone on your team ask questions without knowing SQL.
- Use the SQL editor for more complex queries.
- Build handsome, interactive dashboards with filters, auto-refresh, fullscreen, and custom click behavior.
- Create models that clean up, annotate, and/or combine raw tables.
- Define canonical segments and metrics for your team to use.
- Send data to Slack or email on a schedule with dashboard subscriptions.
- Set up alerts to have Metabase notify you when your data changes.
- Embed charts and dashboards in your app, or even your entire Metabase.
Take a tour of Metabase.
Supported databases
Installation
Metabase can be run just about anywhere. Check out our Installation Guides.
Contributing
Quick Setup: Dev environment
In order to spin up a development environment, you need to start the front end and the backend as follows:
Frontend quick setup
The following command will install the Javascript dependencies:
$ yarn install
To build and run without watching changes:
$ yarn build
To build and run with hot-reload:
$ yarn build-hot
Backend quick setup
In order to run the backend, you'll need to build the drivers first, and then start the backend:
$ ./bin/build-drivers.sh
$ clojure -M:run
For a more detailed setup of a dev environment for Metabase, check out our Developers Guide.
MAGE - Development Automation
You need Babashka to run The Metabase Automation Genius Engine (MAGE). Run ./bin/mage
to list your tasks. All of them support -h
to learn more and show examples.
$ ./bin/mage
ââââ ââââ ââââââ âââââââ ââââââââ
âââââ âââââââââââââââââââââ ââââââââ
ââââââââââââââââââââââ ââââââââââ
ââââââââââââââââââââââ âââââââââ
âââ âââ ââââââ ââââââââââââââââââââ
âââ ââââââ âââ âââââââ ââââââââ
The Metabase Automation Genius Engine
The following tasks are available:
cljfmt-staged Runs cljfmt on staged files
...
kondo Runs Kondo against a file, directory, or everything we usually lint
...
start-db Start a db on a default port in docker
jar-download Given a version, downloads a metabase jar
$ ./bin/mage kondo -h
<prints help for easily running kondo>
mage Autocomplete
Run ./bin/mage -autocomplete
and follow the instructions to setup autocomplete in your terminal.
Internationalization
We want Metabase to be available in as many languages as possible. See which translations are available and help contribute to internationalization using our project over at Crowdin. You can also check out our policies on translations.
Extending Metabase
Hit our Query API from Javascript to integrate analytics. Metabase enables your application to:
- Build moderation interfaces.
- Export subsets of your users to third party marketing automation software.
- Provide a custom customer lookup application for the people in your company.
Check out our guide, Working with the Metabase API.
Security Disclosure
See SECURITY.md for details.
License
This repository contains the source code for both the Open Source edition of Metabase, released under the AGPL, as well as the commercial editions of Metabase, which are released under the Metabase Commercial Software License.
See LICENSE.txt for details.
Unless otherwise noted, all files © 2025 Metabase, Inc.
Metabase Experts
If youâd like more technical resources to set up your data stack with Metabase, connect with a Metabase Expert.
Top Related Projects
The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
Apache Superset is a Data Visualization and Data Exploration Platform
Make Your Company Data Driven. Connect to any data source, easily visualize, dashboard and share your data.
Apache ECharts is a powerful, interactive charting and data visualization library for browser
Open-source web platform used to create live reporting dashboards from APIs, MongoDB, Firestore, MySQL, PostgreSQL, and more 📈📊
Convert
designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot