For example Carmelo Anthony, he played with the Nuggets then Knicks during his prime years, but after that he just switched teams after a season or two.
Usually those stars have spent much of their best years on the team and they don’t want to waste the last few in a situation where they can’t win. On top of that teams also can’t really build with them long term due to age.
You can’t force your way out too fast or you’re losing a ton of money
Why do people not stay at one job forever?
An NBA Superstar sticking with a team for a decade is just as much about the team keeping him as it is about the star staying.
Carmelo started declining and teams didn’t want to keep him.
Money
The only way for a superstar to leave his team earlier than 8-9 years into his career is by giving up a ton of money (draft rights for years 1-4, followed by RFA and a 4-5 yr extension, depending on supermax eligibility). It’s only at that point that players really have agency in where they want to play, short of demanding a trade and hoping to make life uncomfortable enough for the team that they get it.
That’s part of why it was so remarkable when Bron, Wade, and Bosh all negotiated 3yr extensions after their rookie contacts. They gave up two full seasons worth of guaranteed money in order to reach free agency faster and team up.
My guess is that early career you take the fucking money. Always take the money. So a lot of guys stay where they can get the most, which if you’re a good player is generally the team that drafted you.
Later in your career you’re seeing guys who are trying to enjoy it, win a ring, etc. Maybe not as cut and dry since everyone is different and has different motivations once they’ve been paid.
They stop being good. NBA teams are only as loyal to players as their last game and when you’re no longer at your peak teams stop holding space for you on the roster. Once that happens you spend the rest of your career where there’s already a fit for you, and that changes year by year as new talent enters the league and teams shift their priorities and lineups.
Money.
bigger market, money, ring
Easy. Rookie deals are 3 years, max rookie extension is another 2 or 3. Then they are qualified for a 5 years max deal, once they have that, they can then walk anywhere they want for max deals. You get a cakewalk to easy money staying with your drafted team for 8-10yrs then you can walk and make the money anywhere.
It’s either money, rings or both. Sometimes it’s venue - even way back in the70’s Kareem wanted out of Milwaukee to go to a more urban cosmopolitan place, Los Angeles.