There's no fixed rule for how often a sofa needs reupholstering — it depends far more on how it's used than on the calendar. A sofa in a quiet guest room can go a decade or more untouched, while one that sees daily family use, kids, or pets might need attention within a few years.
The clearest signal is the cushions. Once foam stops springing back after you stand up, or a seat visibly sags in the middle, no amount of fluffing fixes it — the foam has broken down and needs replacing. Worn or split seams, especially along armrests and seat edges, are another sign the cover has reached the end of its life.
A frame that still feels solid, with no creaking or wobble, is the best case for reupholstering rather than replacing. In that scenario, you're only really renewing the cover and cushioning, which is quicker and considerably cheaper than buying a new sofa.
As a rough guide, a well-made sofa in regular household use is often worth a fresh look every 5–8 years, sometimes sooner for high-traffic pieces. When in doubt, it's worth having it assessed before deciding — sometimes a sofa that looks ready for replacement just needs its cover and foam refreshed.