We haven't made the jump to 12 yet, we expect overall performance to be lower but disk I/O to be improved.
If performance doesn't matter and you don't need any of the new features you'll have a hard time finding reasons to upgrade. I consider 9.6 to be very stable.
2. The partitioning improvements are tremendous and well worth the change if you're using trigger+constraint based partitioning.
3. Parallelization and the addition of concurrent reindexing
4. Built-In Logical Replication
5. JIT query optimization
There is lots of new stuff regarding declarative partioning and parallel queries. If any of that seems useful to you those are big new features.
There have been lots of small performance improvements that add up, and also the long requested change to CTEs as omptomization fences.
I'd probably just scan the release notes for 10-13 and see if anything particular hits a pain point you're having.
9.6 is old now. I'd upgrade. Get pgadmin4 while you're at it.
Even going from latest 9.6 to latest 12 gives a huge number of fixes and changes and features.
Can't recommend this tool enough :)
What I most waited for was improved replication and table partitioning support. These were must haves for us.
If you can always just practice the upgrade on a new machine, or easily roll back if the upgrade does fail.
On the assumption right now there may be less people using the services and may be the least disruptive if anything goes down. Upgrading now means you have less hassle in the future.
There is one risk for this migration - versioning has changed a bit between 9.6 and 10 and some libraries have an issue with that. (They need to be updated.)