Find why specific API requests are slow by searching traces across multiple microservices.
Store months of distributed trace data cheaply using S3 without a separate index database.
Query and aggregate trace data using the TraceQL language to build dashboards showing error rates.
Connect Tempo to an existing Jaeger or Zipkin setup without changing your app's instrumentation.
| grafana/tempo | kelseyhightower/envconfig | grafana/mimir | |
|---|---|---|---|
| Stars | 5,284 | 5,454 | 5,107 |
| Language | Go | Go | Go |
| Last pushed | — | 2025-06-28 | — |
| Maintenance | — | Stale | — |
| Setup difficulty | moderate | easy | hard |
| Complexity | 4/5 | 2/5 | 4/5 |
| Audience | ops devops | developer | ops devops |
Figures from each repo's GitHub metadata at analysis time.
Requires an object storage bucket such as S3 or GCS and a running Grafana instance to visualize traces.
Grafana Tempo is an open source system for storing and searching distributed traces. A distributed trace is a record of what happened when a user request moved through multiple services in an application, showing exactly how long each step took and where errors occurred. This kind of data is valuable for understanding why an application is slow or why requests are failing. Tempo is designed to handle large volumes of trace data at low cost. It stores all traces in object storage such as Amazon S3, Google Cloud Storage, or Azure Blob Storage, which is inexpensive compared to traditional databases. It does not require a separate index or search database to operate, which keeps its infrastructure simple. The system accepts trace data in several common formats, including OpenTelemetry (a widely adopted open standard), Jaeger, and Zipkin, so it can work with most existing tracing setups. Tempo also includes its own query language called TraceQL, which lets users search for specific traces or patterns across large datasets. An experimental feature allows TraceQL to generate metrics from trace data, so you can aggregate and chart trace information in ways usually reserved for metrics systems. A companion visual interface called Traces Drilldown, built into Grafana, lets users explore trace data through point-and-click navigation without writing queries. It highlights slow requests, high error rates, and unusual patterns automatically. Tempo is maintained by Grafana Labs and integrates with other Grafana products including Prometheus for metrics and Loki for logs. It is released under the AGPL-3.0 open source license.
A low-cost, open source system for storing and searching distributed traces, records of how requests travel through your app's services, using cheap object storage like Amazon S3 instead of a database.
Mainly Go. The stack also includes Go, OpenTelemetry, Grafana.
Open source under AGPL-3.0, free to use and modify, but distributing it or running it as a hosted service requires sharing your changes under the same license.
Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.
Mainly ops devops.
This repo across BitVibe Labs
Verify against the repo before relying on details.