checkpoint_timeout
No restart — takes effect on reloadtuned by pgconfiguratortime (s/min)
Maximum time between automatic checkpoints.
What pgconfigurator would set
32 GB · 8 vCPU · NVMe · OLTP
Computing…
Tune for your exact server → /tunecomputed in your browser · nothing uploaded
What it does
checkpoint_timeout caps how long PostgreSQL waits before forcing a checkpoint, even if max_wal_size hasn't been reached. Longer intervals mean fewer checkpoints and less repeated flushing of the same dirty pages, but a longer crash-recovery window.
How to tune it
Defaults to 5 minutes; many busy systems use 15–30 minutes alongside a larger max_wal_size so checkpoints are paced by time rather than by WAL volume. Longer timeouts trade faster steady-state writes for potentially longer recovery after a crash.
FAQ
- What's a good checkpoint_timeout?
- 5 minutes (the default) is conservative. Write-heavy systems commonly raise it to 15–30 minutes together with a larger max_wal_size, smoothing checkpoint I/O at the cost of a longer crash-recovery replay.