Personally, as a rule, I would not sign anyone past 33-34. Yes, there are exceptions that I would miss out on, but there are many more examples of the cliff diving.....You have to know when to fold, but the Flyers keep doubling down....
Depends on the quality of the player and their career trajectory.
Voracek was signed to a long-term deal at the right age coming off elite seasons, his decline was faster than expected, exacerbated by bad luck with concussions.
Giroux has maintained a high level at 35. He's a combination of talent and dedication to conditioning - the later is a key when giving out long-term deals.
Both Hayes and JVR are a tier below, and that group tends to decline rapidly after age 32.
Players like Read and Raffl tend to decline at 30, the solid but nothing special starters.
Most players peak between 25-29, the better players start from a higher level and decline slower.
The mistake teams make is to sign a player at 27-28, at their peak, and pay them as if that peak will be sustained into their mid-30s.
The Couts contract was fine, it was an underpay for the first few years and an overpay in the out years with an expected rising cap.
Sometimes you're just unlucky.
One of the best ways to add veteran quality is to identify players who are still good, but overpaid in their out years, trade for them with the original team retaining money and accepting a "bargain price" to dump their contract. This is less risky than signing similar players in FA.