Why you should upgrade to #PostgreSQL v13 (at least). The size of an index on 10m bigints, all the same value:
v10: 214MB
v13: 66MB
Nearly all non-unique indexes will benefit from this.
The Postgres 14 enhancements (see https://postgresql.org/docs/devel/btree-implementation.html#BTREE-DELETION…) control bloat with lots of non-HOT UPDATEs (enhancements aren't useful if index never has any dead tuples, though). "Logically unmodified" indexes typically have *zero* splits now, even with intense version churn.