Pooling op transactieniveau helpt als u apps heeft met inactieve sessies. PgBouncer hoeft sessies niet open en inactief te houden, het grijpt er gewoon een wanneer een nieuwe transactie wordt gestart. Die inactieve sessies kosten je alleen een pgbouncer-verbinding, geen echte inactieve Pg-sessie met een backend die rondhangt en geheugen en synchronisatie-overhead verspilt en niets doet.
De belangrijkste reden waarom u sessiepooling in plaats van transactiepooling wilt, is als u benoemde voorbereide verklaringen, adviesvergrendelingen, luisteren/notificeren of andere functies wilt gebruiken die op sessieniveau werken en niet op transactieniveau.