pgconfigurator
pgconfigurator

autovacuum_vacuum_cost_limit

No restart — takes effect on reloadtuned by pgconfiguratorcost units (accumulated before sleeping)

How much I/O work autovacuum does before pausing — its throttle.

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

Autovacuum is deliberately throttled so it doesn't swamp the disk: it accumulates 'cost' as it reads and writes pages, and once it hits this limit it sleeps for autovacuum_vacuum_cost_delay. A higher limit lets it do more work before each pause, so it runs faster.

How to tune it

The default (-1, inheriting vacuum_cost_limit = 200) is conservative and a common reason autovacuum 'can't keep up' on busy systems with fast storage. Raising it substantially (e.g. 2000+) lets autovacuum move much faster; on modern SSD/NVMe the extra I/O is easily absorbed.

FAQ

Autovacuum is too slow — what do I change?
Raise autovacuum_vacuum_cost_limit (or lower autovacuum_vacuum_cost_delay). The defaults throttle autovacuum for slow disks; on SSD/NVMe they leave most of your I/O budget unused while tables bloat.

Related parameters