🔍 Query Plan Visualizer
Interactive EXPLAIN plan visualizer for PostgreSQL, MySQL, and SQLite — tree view, cost hotspots, and node analysis
About this tool
The Query Plan Visualizer turns raw EXPLAIN output into an interactive tree so you can quickly pinpoint slow scans, expensive joins, and cost hotspots. It supports PostgreSQL EXPLAIN (ANALYZE), MySQL EXPLAIN (tabular or FORMAT=JSON), and SQLite EXPLAIN QUERY PLAN — the formats developers encounter daily when tuning queries.
Each plan node gets a color-coded badge (Seq Scan, Index Scan, Join…) and an expandable details row. Nodes that consume over 50% of the total query cost or execution time are flagged with a ⚠ hotspot marker so you see at a glance where to focus your optimization effort.
Example: paste a PostgreSQL EXPLAIN ANALYZE output showing a Nested Loop join with two Seq Scans — the tree reveals both scans as hotspots and highlights the join cost. Collapse sub-branches you've already analyzed or expand everything with one click.
FAQ
Which databases are supported? ›
PostgreSQL (EXPLAIN / EXPLAIN ANALYZE text output), MySQL (tabular EXPLAIN and EXPLAIN FORMAT=JSON), and SQLite (EXPLAIN QUERY PLAN). Auto-detect usually picks the right format, or you can select it manually from the dropdown.
What does the hotspot marker mean? ›
A ⚠ hotspot means the node accounts for more than 50% of the total estimated cost or actual execution time across the whole plan. These are the nodes to investigate first when tuning a slow query.
Why are some nodes missing actual time values? ›
Actual times only appear when you use EXPLAIN ANALYZE (PostgreSQL) — plain EXPLAIN shows only estimated costs and rows. MySQL tabular format also does not include timing information.
Can I compare two query plans side by side? ›
This tool shows one plan at a time. To compare two plans, open the tool in a second browser tab and arrange them side by side — the tree views and hotspot flags make differences easy to spot.