★ 49,774ClojureNOASSERTIONupdated Oct 2026
best for giving non-technical teams self-serve dashboards without teaching them SQL
Run the Docker image, point it at a database, and someone on sales or support is building their own charts within the hour. That ease of onboarding is why teams reach for Metabase instead of Superset or Redash: nobody wants to learn SQL Lab, but most people can learn a question builder.
The embedding story is the strongest on this page. Drop a chart, a full dashboard, or the entire UI into your own product with JWT-based multi-tenant auth, and you skip months of building a reporting layer from scratch — DataEase and Chartbrew both offer embedding, but neither matches this depth.
The license is where it gets expensive. The open-source edition is AGPL, and the features most companies need once they're embedding in production — SSO, row-level permissions, sandboxing — sit behind a paid plan. The backend is Clojure, too, so when the question builder can't express something plain SQL could, you're waiting on Metabase to fix it rather than patching it yourself.
Our full take →GitHub ↗
★ 75,242TypeScriptApache-2.0updated Oct 2026
best for data teams who want to own their stack instead of paying for Tableau or Looker
Apache governance and daily commits make this the most actively developed tool on the page, and the database connector breadth shows it — 60-plus adapters, from DuckDB to SAP HANA, all pluggable through SQLAlchemy dialects. Metabase and Redash cover plenty of sources too, but nothing here matches this range.
SQL Lab is the best SQL editor of the group: async queries, result caching, query history, and Jinja templating that lets you parameterize a query without building a full semantic layer around it. The dataset layer, where you define a metric once and reuse it across every chart, beats copy-pasting SQL between dashboards.
Running it is the hard part. The stack is Flask plus Celery plus Redis plus Postgres, heavier than Metabase's single container or Chartbrew's one-image setup, and the permission model is notoriously hard to get right — row-level security means untangling a non-obvious mix of roles, datasets, and RLS filters the docs don't spell out well. Upgrades aren't light either; the changelog is required reading before every version bump.
Our full take →GitHub ↗
★ 28,841PythonBSD-2-Clauseupdated Oct 2026
best for teams who need one query editor across many unrelated data sources
Thirty-five-plus native query runners cover everything from Postgres to Salesforce to Prometheus to JIRA's query language, through a plugin interface clean enough that adding a new source isn't a hack. Queries are first-class objects with shareable URLs, which pushes a team toward one query everyone reuses instead of each person running their own version.
The REST API mirrors the UI completely, so dashboard creation can be automated or seeded from CI — more fully than Metabase's API covers. Scheduled refreshes paired with alerting across Slack, PagerDuty, and webhooks let it double as a lightweight monitoring layer.
Databricks bought the company behind the hosted version, and core investment in the open-source repo has slowed since; betting a production deployment on it means owning more of the maintenance than the star count suggests. There's also no query version history — overwrite a query and it's gone unless you've got database backups, a real gap for a tool where queries are the main artifact.
Our full take →GitHub ↗
★ 77,401TypeScriptAGPL-3.0updated Oct 2026
best for ops and SRE teams visualizing metrics, logs, and traces rather than business data
Grafana sits apart from the rest of this page because it's built for time-series and operational data, not business reporting — if your dashboards track Prometheus, Loki, and a dozen other backends in one panel, nothing else here comes close. Over 150 data sources, mixed-source queries in a single panel, and a plugin SDK with versioned APIs and automated breaking-change detection make it the choice for observability rather than BI in the Metabase or Superset sense.
Alerting has been rewritten twice, and the codebase still carries both the legacy and unified paths behind feature flags — new operators hit this constantly when something behaves differently than the docs describe. Dashboards are stored as JSON with a migration history that's evolved inconsistently, so keeping them in Git means leaning on extra tooling like grafonnet rather than anything built in.
Like Metabase, it's AGPL, and the same pattern applies: SAML, team sync, and audit logs that larger deployments need often push you toward Grafana Enterprise or Cloud.
Our full take →GitHub ↗
★ 24,615JavaGPL-3.0updated Oct 2026
best for teams who want Tableau-style drag-and-drop charts without the Tableau bill
The chart handling is organized well enough that adding a new chart type is a contained change, and datasource coverage spans OLTP, OLAP, data warehouses, Excel, and APIs through a Calcite-based provider layer rather than bolted-on connectors. A one-line install script with an offline package option means an ops team can stand this up without a week of setup — closer to Metabase's ease than Superset's multi-service stack.
GPL v3 is the sharper restriction on this page: Metabase and Grafana's AGPL terms only bite when you embed or offer the software as a service, but GPL v3 forces you to open-source your own code if you build on it, which rules it out for most commercial products outright. Support and most issue discussion run in Mandarin, which slows down getting help if you don't read it, and there's no mention anywhere of row-level security or column masking — a real gap for any deployment where different users shouldn't see the same data.
Our full take →GitHub ↗
★ 2,956GoApache-2.0updated Oct 2026
best for engineers who want dashboards defined as code and reviewed in pull requests
Dimensions, measures, and time grains live in YAML and SQL instead of a database table, so they're version-controlled and diffable in a pull request the way nothing else on this page is. DuckDB handles local iteration fast enough to point at a Parquet file and get a working dashboard in minutes, and ClickHouse takes over for production scale — a sensible two-tier setup rather than forcing one engine to do both jobs.
The 'agent-first' framing is mostly a repackaging of a model that was already friendly to LLMs before an MCP server and some scaffolding got added on top; the underlying design hasn't changed much. Sharing anything beyond your own machine means Rill Cloud, and that paywall arrives fast — local dashboards work, but a team that wants to share one with a colleague is already paying. The self-hosted footprint is also larger than the pitch suggests: close to a hundred migration files and provisioning code for Kubernetes, ClickHouse, billing, and job queues, a lot of surface area for what's sold as a lightweight tool.
Our full take →GitHub ↗
★ 4,061JavaScriptNOASSERTIONupdated Oct 2026
best for small teams or solo developers who want a lighter self-hosted dashboard builder
A single Docker image and a handful of environment variables gets you running, lighter than Superset's four-service stack or even Metabase's one container with a JVM behind it. Connector coverage is solid for a project this size — MySQL, Postgres, MongoDB, Firestore, ClickHouse, and generic REST APIs all ship as proper sources, and the embeddable chart links work without exposing credentials, the right way to share a dashboard outside your team.
That lighter footprint still needs MySQL or Postgres plus Redis just to boot, so it's not quite as self-contained as it first looks. The frontend is mid-migration from Redux to RTK, with reducers and slices doing overlapping work in parallel, which slows down anyone trying to follow how data moves through the app. It also ships under the Functional Source License rather than MIT or Apache — fine for internal use, but it blocks building a competing product on top until the license converts to Apache two years after each release.
Our full take →GitHub ↗
// questions people ask
Before you choose
Which of these has no paid tier gating core features?
Superset is pure Apache 2.0 with nothing held back for a paid plan, and Redash's open-source repo works the same way, though its hosted counterpart was absorbed into Databricks. Metabase, Grafana, and Rill all keep real capabilities — SSO and sandboxing for Metabase, SAML and audit logs for Grafana, cloud sharing for Rill — behind a paid product.
What's the easiest one to self-host for a small team?
Chartbrew and Metabase are the lightest to stand up — a single Docker image each, versus Superset's or Redash's four-service stacks of app, cache, queue, and database. Chartbrew still needs Postgres or MySQL plus Redis to run, so Metabase's single-container setup is the simpler of the two.
Which license blocks embedding in a commercial product outright?
DataEase's GPL v3 is the strictest — building on it forces you to open-source your own code. Metabase and Grafana's AGPL only triggers once you're offering the software as a service or embedding it, and Chartbrew's FSL blocks competing SaaS use until it converts to Apache two years after each release.
Which tool fits an ops team watching infrastructure rather than business metrics?
Grafana. It's built around metrics, logs, and traces from Prometheus, Loki, and similar backends, not the business database querying the rest of this page is built for.
Start with Metabase if your team needs self-serve dashboards today, or Superset if a data team already owns the stack and wants room to grow into it. Everyone else here fits a narrower case — Grafana for infrastructure metrics, Rill for a code-first workflow, Chartbrew for the smallest footprint.