PostgreSQL uses MVCC: a modification creates a new version of the row, the old one remaining visible to ongoing transactions. Dead versions accumulate and VACUUM reclaims them to reuse the space, while autovacuum does so automatically. Without it, tables bloat and performance degrades.
Example
VACUUM (ANALYZE) commandes;