★ 74,332TypeScriptAGPL-3.0updated Jun 2026
best for the default front-end for any stack — plugs into Prometheus, Loki, InfluxDB, or a dozen other sources
It's the default because it talks to nearly everything — Prometheus, Loki, InfluxDB, a plain Postgres table — and most teams end up running it regardless of which backend they pick off this list. If you're using Prometheus or VictoriaMetrics for storage, Grafana is the dashboard layer on top, not a competitor to either.
The catch is dashboards-as-JSON. The schema has shifted enough times that version migrations break, and keeping dashboards in Git means adopting extra tooling (grafonnet, the Terraform provider) that lags behind Grafana's own releases. Alerting carries the scars of being rewritten twice — legacy and Unified Alerting still coexist behind feature flags, and new operators regularly get tripped up figuring out which one they're actually configuring.
And because it's AGPL, the features a production team actually wants — SAML, team sync, audit logs — often push you toward Grafana Cloud or Enterprise anyway, so "it's free" comes with an asterisk the moment you scale past a single team.
Our full take →GitHub ↗
★ 64,464GoApache-2.0updated Jun 2026
best for teams wanting the de facto standard for metrics collection, storage, and alerting
If you're running Kubernetes, you're already using this somewhere in your stack, directly or through an exporter. The pull-based model is the right call for reliability — a target that stops responding is loud, not silently missing — and PromQL rewards the time you put into learning it.
The problem is storage. Retention is bounded by local disk, and scaling past one node means bolting on Thanos, Cortex, or Mimir, or switching to something like VictoriaMetrics that solves the same problem without the extra moving parts. High-cardinality labels will crater a small instance before you notice it's happening, and the built-in UI is barely usable for anything beyond a quick ad-hoc query — in practice you're running Grafana from day one.
Our full take →GitHub ↗
★ 79,110CGPL-3.0updated Jun 2026
best for infra teams who want per-second metrics running within minutes, zero dashboard-building required
Netdata is the fastest to value on this list — plug it into a box and you have per-second metrics with real anomaly detection within minutes, no scrape configs, no dashboard building. The edge-trained ML model is a genuinely different approach from Prometheus's shared-threshold alerting: it learns what's normal for your specific machine instead of applying one rule to all of them.
The dashboard sitting on top of that open-source agent is closed-source, which is an odd position for a project this upfront about everything else — you can audit the collector but not the UI rendering your data. RBAC, SSO, and the alert configuration UI all live behind the paid Cloud tier, so a self-hosted-only team hits a wall the moment more than one person needs to log in. Windows support is listed as full but is noticeably thinner than Linux in practice.
Our full take →GitHub ↗
★ 44,089PythonNOASSERTIONupdated Jun 2026
best for teams whose real priority is catching and triaging application errors, not just server metrics
Sentry answers a different question than the metrics tools on this list: not "is the server healthy" but "what broke, for which user, on which release." The SDK coverage and the unified trace-to-replay-to-profile timeline are ahead of SigNoz's or SkyWalking's error handling, which both feel bolted-on by comparison.
Running it yourself means owning Kafka, Clickhouse, Snuba, and Relay alongside Postgres and Redis — a materially heavier stack than anything else here except maybe SigNoz, and Clickhouse is the piece that bites people at 2am. You're also running behind the curve permanently: the self-hosted version doesn't get Seer AI or whatever new views Sentry ships to Cloud first, so you take on the infrastructure burden without the current product.
Our full take →GitHub ↗
★ 27,310TypeScriptNOASSERTIONupdated Jun 2026
best for teams who want metrics, traces, and logs in one OpenTelemetry-native app instead of stitching Prometheus, Loki, and Jaeger together
SigNoz is the answer if you want what Prometheus plus Loki plus Jaeger gives you, but as one application instead of three you have to wire together yourself. Building on OpenTelemetry means you're not locked into its SDKs the way Sentry locks you into its own — move to another backend later and your instrumentation comes with you.
ClickHouse is the trade: fast on high-cardinality log queries, but it's a column-store database you now own and tune, on top of the OTel collector, the query service, and, if you use the Helm chart, ZooKeeper. Anomaly detection is enterprise-only, so if you need it without paying you're writing your own rules on top of the query builder — and the React frontend is sizable enough that customizing it is not a weekend project.
Our full take →GitHub ↗
★ 88,676JavaScriptMITupdated Jul 2026
best for self-hosters who just want uptime checks and a status page, not a full observability stack
This is the simplest thing on the list by a wide margin — a WebSocket dashboard with 90-plus notification integrations and a one-command Docker setup. If all you need is "tell me when the site is down" and a status page, everything else here is overkill.
That simplicity is also the ceiling. SQLite means no second instance and no real HA; there's no team or org concept, just single-user auth and API keys; and the whole thing runs as one Node process with no separation between the scheduler, the checks, and the WebSocket server, so a crash takes down all of it at once. Twenty seconds is the floor on check intervals — fine for uptime, useless for anything that needs finer resolution.
Our full take →GitHub ↗
★ 17,144GoApache-2.0updated Jun 2026
best for teams whose Prometheus setup is buckling under cardinality or long-term retention
VictoriaMetrics exists to fix the exact thing that breaks Prometheus at scale: storage. Same PromQL-compatible queries, with some useful extensions via MetricsQL, roughly 7x less disk for the same data, and your existing Grafana dashboards keep working after the swap.
The single-binary story holds up until you need the cluster version, at which point vminsert/vmselect/vmstorage bring back some of the operational complexity it was supposed to remove — resharding is still manual. Downsampling and multiple retention periods are enterprise features, which is a rough thing to discover after you've already migrated for the cost savings, and MetricsQL's small behavioral differences from PromQL mean queries don't always port cleanly back the other way.
Our full take →GitHub ↗
★ 24,832JavaApache-2.0updated Jun 2026
best for Java and microservices shops that want APM-style service maps, not just time-series graphs
SkyWalking is built for a specific shape of problem: polyglot, Java-heavy microservices where you want service maps and distributed tracing, not just a time-series graph. The eBPF Rover agent giving you CPU and network profiling with no code changes is a capability none of the metrics-only tools here offer.
The Java agent is clearly first-class; the .NET, Go, and Python agents are community-maintained and visibly behind on features, so a genuinely polyglot shop will feel the gap. BanyanDB, its own storage backend, is explicitly flagged by the project as "production-ready with caveats," which is why most real deployments still lean on Elasticsearch instead. Expect a config file with hundreds of keys and a setup that takes real infrastructure effort before you see a single trace — this isn't something you stand up during a lunch break like Uptime Kuma.
Our full take →GitHub ↗
// questions people ask
Before you choose
Do I need Grafana if I'm already using Prometheus?
Pretty much, yes. Prometheus's built-in UI is fine for one-off queries but not for anything you'd call a dashboard, so almost every real Prometheus deployment runs Grafana on top of it.
Should I pick Prometheus or VictoriaMetrics?
Start with Prometheus if you're small enough that disk and cardinality aren't a problem yet. Move to VictoriaMetrics once storage costs or retention limits actually hurt — it's PromQL-compatible enough that the migration doesn't require rewriting your dashboards.
Is Sentry redundant if I already have a metrics stack?
No — metrics tell you a server is unhealthy, Sentry tells you which line of code and which user caused it. Teams commonly run both Prometheus/Grafana and Sentry side by side because they answer different questions.
What's the easiest one here to just get running today?
Uptime Kuma for basic uptime checks, or Netdata if you want real per-second metrics with zero scrape configuration. Both are running in minutes; Sentry and SigNoz are not.
We put together a version of this comparison every week for whatever category someone's currently stuck choosing in — the finds.dev weekly email is the same honesty, just about repos you haven't thought to compare yet.