/explain/autovacuum_vacuum_threshold

autovacuum_vacuum_threshold

The fixed part of the vacuum trigger, default 50 rows. On any real table the scale factor dwarfs it, until you set the factor to 0, at which point the threshold alone decides the cadence: dead rows arrive at your write rate, and vacuum fires every threshold ÷ rate. That inversion is the core of cadence-first tuning, and it is why this obscure default matters more than it looks.

DEMO — dead tuples over 60 d, toy table50M rows · 2M dead/day
trigger = 10.00 M dead tuples
day 015304560
autovacuum_vacuum_scale_factor0.20
default 0.2 · 0 decouples the trigger from table size
autovacuum_vacuum_threshold50
default 50 · the fixed floor
VACUUM EVERY
5.0 d
PEAK DEAD ROWS
10.00 M
PEAK BLOAT
20.0%
SEE ALSO
autovacuum_vacuum_scale_factorautovacuum_naptime← back to start
The floor on the real cadence is autovacuum_naptime (default 1 min) and worker availability, not the threshold.
autovacuum_vacuum_threshold — robovac