My personal upgrade cycle has been every 4 or so years for the last few iPhones. You really don't need to upgrade more often.
I'm on a 12 Pro and I only want to upgrade to get more memory and faster processors. My current phone easily pages apps out of memory too often these days and it gets a bit tiring. Also, I already replaced the battery once after 1.5 years and the current battery is already back to about the same health/capacity as the first one was in the same amount of time.