Skip to main content

Command Palette

Search for a command to run...

PostgreSQL Monitoring Tools Compared (2026)

A practical guide for PostgreSQL and TimescaleDB

Published
5 min readView as Markdown
PostgreSQL Monitoring Tools Compared (2026)

PostgreSQL Monitoring Tools Compared (2026)

I spent the last three years running PostgreSQL in production and evaluating every monitoring tool I could find. The landscape is wider than most people realize -- from free CLI utilities to $250+/month SaaS platforms, with open-source self-hosted options in between. The right choice isn't the tool with the most features. It's the one that catches your actual production problems before users notice.

Here's every major option broken down honestly.

What PostgreSQL Gives You for Free

PostgreSQL has extensive built-in monitoring. The system catalogs provide everything:

-- What's happening right now
SELECT state, wait_event_type, wait_event, count(*)
FROM pg_stat_activity WHERE backend_type = 'client backend'
GROUP BY state, wait_event_type, wait_event ORDER BY count(*) DESC;

-- Slowest queries (needs pg_stat_statements extension)
SELECT substring(query, 1, 80) AS query,
    calls, round(mean_exec_time::numeric, 1) AS avg_ms
FROM pg_stat_statements ORDER BY total_exec_time DESC LIMIT 15;

-- Database health
SELECT datname,
    round(100.0 * blks_hit / nullif(blks_hit + blks_read, 0), 1) AS cache_hit_pct,
    deadlocks
FROM pg_stat_database WHERE datname = current_database();

The raw data is there. The problem is turning it into trends, alerts, and recommendations without building a custom stack.

Postgres-Specialized Tools

myDBA.dev

Built exclusively for PostgreSQL. A Go collector runs at 15-second intervals and connects directly to your instance -- no agent on the database server.

Strong points:

  • Health checks across 10 domains with numerical scores and specific fix recommendations
  • Automatic EXPLAIN plan capture + plan regression detection
  • Index advisor
  • Lock chain visualization and replication topology mapping
  • Extension monitoring for TimescaleDB, pgvector, and PostGIS

Limitations: Newer product, smaller community. No infrastructure metrics (CPU, memory, disk).

Cost: Free tier (7-day retention, 1 instance). Pro for more.

pganalyze

The established player in Postgres-specific monitoring. Strong query analysis, index recommendations, and schema tracking.

Strong points: Deep query performance analysis, automated index recommendations, schema evolution tracking, log-based EXPLAIN collection, solid documentation.

Limitations: Ruby collector needs to run on the database host or as a sidecar. Batch processing (not real-time). No health scoring. No extension monitoring.

Cost: $249/month per server. No free tier.

General-Purpose Platforms

Datadog

Monitors PostgreSQL alongside your entire stack -- hosts, applications, containers, logs.

Strong points: Unified observability. Correlate database slowness with application latency. Excellent dashboards and alerting. APM shows which endpoints cause the most database load.

Limitations: PostgreSQL monitoring is a thin integration, not a core focus. No EXPLAIN plans, no index advisor, no vacuum analysis, no health scoring. It tells you that the database is slow, not why.

Cost: $70/host/month for DB monitoring + $15+/host for infrastructure. Scales fast.

Self-Hosted Open Source

Percona Monitoring and Management (PMM)

The most feature-complete free option. Grafana + VictoriaMetrics backend. Supports PostgreSQL, MySQL, MongoDB.

Strong points: Query analytics (QAN), familiar Grafana interface, multi-database, active community.

Limitations: You host and maintain the PMM server (install, upgrade, backup, scale). PostgreSQL support is secondary to MySQL (Percona's heritage). No automated health checks or EXPLAIN regression detection.

Cost: Free. Paid support available.

pgwatch2

Postgres-only, lightweight. SQL-based metric collection stored in InfluxDB or TimescaleDB, visualized with Grafana.

Strong points: Postgres-specific, flexible custom SQL metrics, lightweight collector.

Limitations: Three components to maintain. No built-in alerting. No EXPLAIN analysis. No automated recommendations. Non-trivial setup.

Cost: Free.

pgBadger

Log analysis tool. Parses PostgreSQL log files and generates detailed HTML reports.

Strong points: Incredibly detailed log analysis -- query normalization, hourly patterns, error categorization, checkpoint analysis. Zero database load. Single binary.

Limitations: Not real-time monitoring. Static reports only. Requires specific logging config. No alerting.

Cost: Free.

The DIY Option

Many teams query pg_stat_statements on a schedule, store results in Prometheus/InfluxDB, and build Grafana dashboards.

This gives complete control but costs engineering time. No automated analysis, no EXPLAIN capture, no recommendations. Every PostgreSQL version upgrade might break your custom queries. And the person who built it becomes the permanent maintainer.

Comparison Table

FeaturemyDBA.devpganalyzeDatadogPMMpgwatch2
SetupMinutesHoursHoursHours-DaysHours-Days
Self-hostNoNoNoYesYes
Postgres depthDeepDeepShallowMediumMedium
EXPLAIN plansYesYesNoNoNo
Health scoringYesNoNoNoNo
Index advisorYesYesNoNoNo
Extension monitoringYesNoNoNoNo
AlertingYesYesYesYesVia Grafana
Free optionYesNoNoSelf-hostSelf-host

How to Decide

The framework is simple: evaluate against your actual incidents.

If your last three problems were missing indexes, vacuum backlogs, and replication lag, choose a tool that monitors all three with specific recommendations. A CPU graph won't help you find a missing index.

If you need to correlate database performance with application performance across 50 microservices, you need Datadog's breadth even if its Postgres depth is limited.

If your budget is zero and you can maintain infrastructure, PMM is the most complete free option.

Regardless of tool choice, these are non-negotiable:

  1. Enable pg_stat_statements -- every tool builds on it
  2. Set log_min_duration_statement to capture slow queries
  3. Learn EXPLAIN ANALYZE -- no tool replaces understanding plans
  4. Monitor continuously -- spot trends before users report symptoms

The monitoring tool amplifies these fundamentals. It doesn't replace them.