2.1k stars · MIT · no GitHub releases at all, which is a determination and not a gap; the Ruby gem pgdexter is at 0.6.3, released 15 October 2025, read from rubygems.org · Track this in Scout
Reads your slow PostgreSQL queries, tests candidate indexes without building any of them, and prints the ones that would actually help.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A command-line program. You give it your database and either a log file or a list of queries. For each query it creates hypothetical indexes using HypoPG — the extension published in Edition 23, which makes an index that exists only in the planner's head — then asks PostgreSQL to plan the query with and without each one and keeps the indexes that made a real difference.What it is good for. Anyone with a PostgreSQL application that has got slower as it filled up. The problem it removes is the guessing. Most small applications have three slow queries and two missing indexes, and this finds both without you learning how the planner thinks. A short line about Grasppy: its data is in PostgreSQL on one server, and this is the last step of a chain this radar has been building for six editions.
- Nothing is built while it tests. Every index it tries is hypothetical, so the database keeps working normally throughout.
- It can read PostgreSQL's own log file directly, so you point it at real traffic rather than at queries you remembered.
- MIT licence, and it prints its suggestions for you to approve rather than changing your database behind you.
- It needs Ruby on the machine and the HypoPG extension inside the database. A managed database that does not allow extensions cannot run it.
- It has never published a GitHub release at all, so the version to trust is the Ruby package
pgdexter, and the newest of those is 0.6.3 from 15 October 2025. - It suggests. It does not know that an index costs you on every write, so do not create everything it prints.
HypoPG/hypopgPublished in Edition 23, it is the extension Dexter uses underneath, so the two are a pair rather than a choice.
Track this in Scout- powa-team/powa
Collects query statistics over time and draws them in a web page, and it can call HypoPG from inside that page.
Track this in Scout
darold/pgbadgerPublished in Edition 18, it reads the same log file and names which queries are slow, which is the step before this one.
Track this in Scout
```bash
