PostgreSQL EXPLAIN reference

Understand what your query plan is actually telling you.

PlanCheck's reference focuses on evidence, boundaries, and the signals that change diagnosis: estimated vs actual rows, loops, discarded work, scans, joins, memory and I/O.

Common PostgreSQL EXPLAIN questions

What is PostgreSQL EXPLAIN ANALYZE?

EXPLAIN shows the plan PostgreSQL intends to use. EXPLAIN ANALYZE also executes the statement and reports measured values such as actual rows, loops and timing.

Are EXPLAIN costs milliseconds?

No. Startup Cost and Total Cost are planner cost units used to compare candidate plans. Actual Time values from EXPLAIN ANALYZE are measured in milliseconds.

What should I look at first in an EXPLAIN ANALYZE plan?

Start with total Execution Time, then inspect expensive or highly repeated nodes, compare Plan Rows with Actual Rows, check discarded work, memory or disk spills, and buffer activity.

Does PlanCheck upload my SQL or EXPLAIN plan?

PlanCheck analyzes plans in the browser. The production analyzer does not upload SQL text or EXPLAIN plan contents to a PlanCheck analysis server.

Evidence first, recommendations second.

PlanCheck separates what PostgreSQL measured from what the plan merely suggests, so you can investigate the right thing without turning assumptions into facts.