We compare the top open-source observability stacks for developers: SigNoz (unified, OTel-native), Grafana/LGTM (best-of-breed modular), and ELK Stack (log-centric search). With comparisons of storage engines, TCO, and cardinality handling.
For years, the "three pillars" of observability — logs, metrics, and traces — were treated as separate domains requiring separate tools. Developers ended up swivel-chairing between dashboards, trying to correlate a spike in error rates with a specific log line and a trace. That model is breaking down.1
The shift today is toward unified, open-source stacks that ingest all three signals into a single platform — or at least make them trivially cross-referenceable. The best open-source observability stacks for 2025 don't just collect data; they let you ask questions across it without context-switching.2
Here are the three stacks we recommend, ranked by how well they solve that unification problem.
Best for: Teams that want a single-pane-of-glass experience without stitching together five different tools.
SigNoz is a modern, OpenTelemetry-native observability platform that combines logs, metrics, and traces in one UI. It's built on ClickHouse, a columnar storage engine that handles high-cardinality data efficiently — meaning you can query across millions of unique dimension values without your database grinding to a halt.1
What makes SigNoz stand out is its native OpenTelemetry (OTel) support. OTel is the industry standard for instrumenting applications in a vendor-neutral way. With SigNoz, you instrument once and your data flows into a unified backend — no proprietary agents, no vendor lock-in. This is the same architecture that powers Datadog, but fully open-source and self-hostable.
Storage engine: Columnar (ClickHouse) — excellent for high-cardinality metrics and correlated queries across signals.
Trade-off: Newer ecosystem. Fewer community integrations than Grafana or Elastic, but growing fast.
Best for: Teams that already use Prometheus and want to add logs and traces incrementally.
The LGTM stack — Loki (logs), Grafana (dashboards), Tempo (traces), Mimir (metrics) — is the modular alternative. Instead of one unified backend, you get specialized tools that share a common dashboard layer (Grafana) and query language.2
Loki uses a label-based indexing approach for logs: instead of full-text indexing every log line (like Elasticsearch), it indexes only labels (e.g., service=api, env=prod) and stores the raw log content compressed. This makes Loki dramatically cheaper for high-volume log ingestion — but it also means you can't do arbitrary full-text search without streaming the logs through a filter.2
Storage engine: Label-based (Loki) + columnar (Mimir for metrics) — great for cost-efficient log storage, less flexible for ad-hoc search.
Trade-off: You're assembling a stack from multiple projects. Each component is best-in-class individually, but you own the integration work.
Best for: Teams with heavy log-analysis workloads, compliance, or security monitoring.
The ELK Stack — Elasticsearch, Logstash, Kibana — is the veteran of open-source observability. Its superpower is full-text search via Elasticsearch's inverted index. If you need to find every occurrence of "OOMKilled" across a year of logs in milliseconds, ELK is still the benchmark.1
However, Elasticsearch struggles with high-cardinality metrics — the inverted index doesn't compress well when every unique value creates a new term. For metrics-heavy workloads, you'd need to add Prometheus alongside it, which brings you back to the multi-tool problem.
Storage engine: Inverted index (Elasticsearch) — unmatched for text search, expensive for high-cardinality metric data.
Trade-off: Excellent for log search and SIEM use cases, but not a unified observability platform out of the box. Licensing changes (SSPL) have also pushed some teams toward OpenSearch forks.
| Dimension | SigNoz (ClickHouse) | Grafana/LGTM (Loki+Mimir) | ELK Stack (Elasticsearch) |
|---|---|---|---|
| Engine type | Columnar | Label-based + Columnar | Inverted index |
| Cardinality handling | Excellent | Good (metrics) / Limited (logs) | Poor at high cardinality |
| Full-text search | Good | Limited (label-only) | Best-in-class |
| TCO at scale | Low | Very low (logs) | High |
| Correlation | Native (unified) | Via Grafana dashboards | Manual / multi-tool |
The columnar approach (ClickHouse, used by SigNoz) is generally the most efficient for mixed workloads — it compresses well, handles high cardinality, and supports fast aggregations across metrics, logs, and traces in a single query.1
All three stacks are fully open-source (with caveats around Elastic's SSPL licensing). All three support or are adding OpenTelemetry integration. And all three are proven at scale in production environments.
The real choice comes down to:
Disclosure: Some of the links on this page are affiliate links. We only recommend tools we've evaluated and believe in — and using these links helps support our independent research.
Bottom line: If you're starting fresh today, SigNoz gives you the most modern, unified experience with the best storage engine for mixed signals. If you're already invested in the Grafana ecosystem, LGTM is a natural extension. And if logs are your primary concern, ELK remains the gold standard for search.
This page was written by the engine and the engine is still on the line. The conversation below picks up where the article stops.
Yes — the picks above are the engine's current verdicts. Ask a sharper version of this question below and you'll get a custom answer with the latest pricing.