/explain/autovacuum_max_workers

autovacuum_max_workers

At most autovacuum_max_workers tables cluster-wide are vacuumed at once, default 3. A multi-hour vacuum of one big table occupies a worker for the whole run, and with three workers, three big tables starve everything else, and small hot tables silently miss their cadence. The operational rule from production tuning: when workers saturate, raise the worker count; never respond by lowering per-table frequency.

SEE ALSO
autovacuum_naptimeautovacuum_vacuum_cost_limit← back to start
Workers share one cost budget, so more workers each run slower unless the limit rises too. Postgres 18 makes the setting reloadable via autovacuum_worker_slots; before that a change needs a restart.
autovacuum_max_workers — robovac