The salary cap is probably the only reason people speculate on this. The cap can be manipulated to a point, or else we'd see stacked teams like we had in the 80s and 90s. Teams like the 2013 Seahawks wouldn't have been disbanded. Tyreek Hill would probably still be on the Chiefs. You get the point.
But back to the OP. Yes, these are educated guesses. More often than not, you can get a pretty good idea of when a player will run his course with a team. That is if you're even paying attention to contracts and the cap. Some people don't bother with that.