Pooling på transaktionsnivå hjälper om du har appar som håller inaktiva sessioner. PgBouncer behöver inte hålla sessioner öppna och inaktiva, den tar bara tag i en när en ny transaktion startas. Dessa inaktiva sessioner kostar dig bara en pgbouncer-anslutning, inte en riktig inaktiv Pg-session med en backend som sitter och slösar bort minne och synkroniseringskostnader och gör ingenting.
Det främsta skälet till att du vill ha sessionspooling istället för transaktionspoolning är om du vill använda namngivna förberedda uttalanden, rådgivande lås, lyssna/notifiera eller andra funktioner som fungerar på en sessionsnivå och inte på en transaktionsnivå.