Slowpoke vs the Grafana stack
Nobody was ever fired for choosing Grafana, and you can build almost anything on it. The cost is that you have to. Slowpoke ships one opinion instead of a canvas, and is useful before lunch.
The short answer
Which one you should pick
This is a choice between a toolkit and a tool. Both are free; what differs is how much of the work is already done, and who has to do the rest.
Choose the Grafana stack if
You want a platform you can shape
- You already run Prometheus, and Grafana is where your team looks by habit.
- You need one place for infrastructure metrics, logs and traces across a large estate.
- You have specific dashboards and alerts in mind, and someone with time to build them.
- You want alerting with routing, silences and escalation, which Slowpoke does not have.
Choose Slowpoke if
You want an answer this afternoon
- You have just arrived, and building a dashboard assumes knowledge you do not have yet.
- You want slowness priced in one unit rather than spread across four data sources.
- You want EXPLAIN plans and the line of code, which no exporter provides.
- You want the findings to become work with an owner and a finish line.
- You would rather run one binary than four services and a storage plan.
Side by side
Slowpoke and the Grafana stack, line by line
Written to be fair, including where the Grafana stack is the better tool. If a row here is wrong or out of date, that is a bug: open an issue and it gets corrected.
| Aspect | Slowpoke | the Grafana stack |
|---|---|---|
| What it is | An opinionated answer | A toolkit you assemble |
| Price | €0 | €0 self-hosted |
| Services to run | One, plus a database | Grafana, Prometheus, Loki, Tempo and their storage |
| Before the first answer | About 15 minutes | Exporters, scrape configs, dashboards, instrumentation |
| Discovers the estate for you | Reads sites, pools, databases, caches, apps and frameworks | You configure every target |
| Prioritised for you | One list, in seconds of waiting per day | Whatever you chose to plot |
| Query plans with a fix | Real EXPLAIN, twelve named diagnoses | — |
| Code origin of a query | File and line, via framework packages | — |
| Report for non-engineers | Effort, return per hour, budget, DORA | A dashboard you design |
| Work that verifies itself | Missions closed by measurement | — |
| Flexibility | One opinion, deliberately | Essentially unlimited |
| Alerting and routing | Digests and deploy verdicts only | Alertmanager, routing, silences |
| Logs at scale | Never | Loki |
Assembly is the real price of a free stack
The Grafana stack costs nothing to license and a great deal to put together. Exporters on every host, scrape configuration, retention and storage decisions, a tracing backend if you want traces, instrumentation in the applications to feed it, then the dashboards — and dashboards encode what you already believe matters.
That is a fine investment for a platform team with a long horizon. It is the wrong investment for someone in month one who has been asked, this week, why the checkout is slow and what it would cost to fix. Slowpoke is a single command per machine and a list fifteen minutes later.
A dashboard shows you a shape. It does not rank anything.
Suppose Grafana is up and the graphs are good. You now have request rate and latency per endpoint from one exporter, query statistics from another, PHP-FPM pool metrics from a third, and queue depth from a fourth — four panels, four different units, no way to say which of them is the expensive one.
Slowpoke's whole design starts from that problem. Everything it observes is converted to seconds of waiting per day: duration multiplied by how often the thing actually happens, divided by the period genuinely observed rather than a fixed week. Then it deduplicates — one request seen by nginx and by OpenTelemetry is one request, one statement reported by an ORM and by its driver is one statement — and sorts. What comes out is a ranking, not a wall.
The things exporters structurally cannot give you
No Prometheus exporter will hand you a query plan. Slowpoke runs real EXPLAIN next to the database, in a read-only transaction, only on statements already seen on that machine, and reports twelve named diagnoses in plain words with the fix: the composite index to add, the varchar column being compared with an integer so the index cannot be used, the OFFSET 48,000 that wants a keyset cursor.
No exporter will tell you the file and line either. Slowpoke's framework packages do, at 2.0 µs per query in Laravel.
Can you run both?
Yes, and it is easy: Slowpoke reads Prometheus and StatsD, so your existing counters, gauges and timers land in the same list as everything else, on the same scale. Keep Grafana for infrastructure and alerting; let Slowpoke own the performance backlog.
FAQ
Slowpoke and Grafana, asked plainly
Can Slowpoke replace Grafana?
Can Slowpoke read my Prometheus metrics?
Does Slowpoke need Prometheus?
Does Slowpoke have alerting?
Find out what you inherited
Fifteen minutes on one server, and the first number is yours — it costs nothing to find out.