Paste real EXPLAIN output from PostgreSQL and get a plain-English breakdown of what's slow and why, with an interactive node-graph visualization — free, no signup, nothing sent to a server.
PlanReader parses your EXPLAIN output into a normalized plan tree entirely in your browser, runs it through a rule engine that checks for known Postgres performance problems, and renders the result as an interactive node graph you can click through node by node.
EXPLAIN (ANALYZE, BUFFERS, FORMAT JSON) — the full JSON plan output, including buffer and
timing statistics
EXPLAIN ANALYZE (plain text) — the default psql-style text output, including auto_explain capturesA nested loop join estimated 12 rows but actually produced 6,104 — a 500x miss that made it the most expensive step in the query. PlanReader flags this as an exploding join, shows exactly where it happens in the graph, and explains in plain English what usually causes it (stale statistics or a bad selectivity estimate) instead of just showing you a row-count table.
For the JSON format (recommended — includes buffer stats):
EXPLAIN (ANALYZE, BUFFERS, FORMAT JSON) SELECT ...;
For plain text:
EXPLAIN ANALYZE SELECT ...;
No plan handy? Load a real Postgres sample and see PlanReader work immediately — no paste required.
For a comprehensive guide to reading EXPLAIN output beyond what PlanReader's own detections cover: kiransabne.dev