"Tech refresh" as we call it is a big deal. It's such a big deal that company leadership details their refresh plans from three to five years into the future, or further. And some optimistic projectionists might attempt to extend that crystal ball's (aka spreadsheet's) capability even further. I've seen tech refresh projections as far as ten years into the future and compensation for growth, attrition, and business changes. I think three years, on a rolling basis, is a good start and a good goal for most of us.
[ You might also like: 5 tips for getting started with Linux server security ]
The reason three years rings true for businesses is that lease contracts are typically three years for equipment. I think most enterprises try to refresh every three years, more or less, to meet the terms of those lease contracts, although, for some systems, I've seen that three years stretch to four and five. For those of us on the implementation, decommissioning, and disposal side, our job is never done. Tech refresh for us is continuous mode because systems "age out" on a monthly basis. Sure, there are those times when you have dozens of servers coming up for refresh but it's usually more of a constant trickle rather than a flood. Thank goodness for that.
The question for this poll is, "How often do you refresh your servers?". While for some of you five might be the uppermost limit, I've seen servers sitting around in racks that were more than ten years old, so there might not be such a thing as an uppermost limit at all. Your feedback in the poll will give us all a better idea of what fellow sysadmins are dealing with.