Skip to main content

Suggested Default Thresholds

Every workload is different, but most Postgres and Supabase projects can benefit from these starting thresholds.

SignalThresholdDurationWhy?
CPU Sustained> 80%10mPotential for query queuing and slowdowns.
Connections> 85%5mApproaching max_connections limit.
p95 Latency> 50% increase5mSignificant regression in response times.
Lock Wait Spikes> 5sInstantHeavy blocking that will likely lead to timeouts.
IO Latency> 20ms10mDisk is struggling to keep up with reads/writes.

Tuning your Alerts

  • Development: If you're building a new app, you may want lower thresholds to catch inefficient queries early.
  • High Traffic: If you have sustained heavy load, tune your thresholds higher to avoid persistent "warning" states that aren't actually problems.

[!TIP] Use the Alert History in pgpulse to see how often an alert triggers and adjust the thresholds recursively until you reach a balance of high signal and low noise.