I just replaced my perfectly-functional iPhone 5c with my wife’s old iPhone 8 (she got a new XR).
The ONLY reason why I retired the 5c is because Apple stopped updating the iOS and newer apps that I needed for work wouldn’t run on iOS 10.
I still even had decent battery life after owning the phone for almost 5 years.
I bought my first iPhone an iPhone5 at launch in 2012. Unlike my previous phones, it always worked and I never had any battery issues. Had my wife not been given two new XRs as a 2018 Christmas gift from her employer, Id still be typing this from it. I miss the HOME button but plan on staying with this one for at least the next five years.
For me, that's really the only reason for me to upgrade, if the phone is still working. I replaced my battery about a year ago, so I'll probably keep my iPhone6 for another year or two. I'm not really a huge Apple fan, but they do a darn good job of keeping the phones updated to the latest patches. It doesn't seem like android makers are as concerned about doing regular security updates. That's pretty much what keeps me on the Apple farm for my phone, other than the fact that it has been a pretty reliable device.