Bed sheets should last from 10 to 12 years.
I usually wash my bed sheets every few weeks and change my sheets that often as well.
After 5 years or so I might decide to get a new set of sheets just because I want to although I do have sheets that are 12 years old and even a couple sheets that are 15 years old.
Some people replace their bed sheets every 6 to 8 years which is okay as well but a good high quality set of bed sheets with proper care should easily last 10 to 12 years.
If the best sheets are getting worn or tore or has stains that won't come out of the bed sheets then it probably is best to get new bed sheets.
Sometimes it's nice to just have a set of new bed sheets anyway.
But bed sheets should easily last at least 10 to 12 years.