How many players have played 20 or more NBA seasons?

Now in its 77th season, the NBA has seen many long careers. But how many players have appeared in at least 20 seasons?
Miami Heat v Dallas Mavericks
Miami Heat v Dallas Mavericks / Ronald Martinez/GettyImages

Longevity in the NBA is a rarity, with the average career lasting just 4.5 years, according to an article from several years ago. But the number holds up under more recent data surveys. There have been outliers, however, with a select group playing 20 seasons or more.

It is a small group, however. According to, 4,862 players have logged time in an official NBA game through games played on Thursday night. Just 0.002 percent if that group has appeared in at least 20 NBA seasons, just 10 players.

Vince Carter is the all-time leader, playing 22 seasons from 1998-2020 for eight different teams. He was an All-NBA level performer early in his career with the Toronto Raptors and New Jersey Nets and eventually transitioned into a role player for several other clubs over the second half of his time in the NBA.

LeBron James became the fifth member of the 21-season club when he appeared in his first game for the Los Angeles Lakers this season. He's been in the league so long that 19 players currently on NBA rosters were born after James' debut on Oct. 29, 2003.

Robert Parish was the first to play in 21 seasons in a career that spanned from 1976-97, including 14 seasons and three titles with the Boston Celtics. Kevin Willis played for eight teams from 1984-2004 and 2007, while Hall of Famer Kevin Garnett played for the Minnesota Timberwolves, Boston Celtics and Brooklyn Nets from 1995-2016.

Dirk Nowitzki, also a Hall of Famer, holds the record for the most seasons with a single franchise, playing his entire 21-year career with the Dallas Mavericks from 1998-2019. That broke the mark set in 2015-16 by the late Kobe Bryant, who played 20 years for the Lakers.

Kareem Abdul-Jabbar played 20 seasons with the Milwaukee Bucks and the Lakers from 1969-89 and Jamal Crawford joined the 20-season club in 2020 when he played six minutes in one game for the Nets in the Orlando bubble.

The final member of the 20-season club entered last season, when Miami Heat veteran Udonis Haslem appeared in seven games in the regular season. He got off the bench once to make an appearance in his sixth NBA Finals before retiring.

There is one other player who could qualify for this list. Moses Malone played 19 seasons in the NBA from 1976-95 but began his career in the old American Basketball Association, spending two seasons in the rival circuit before the league folded and four of its teams were absorbed by the NBA in 1976.

Next. Every NBA team's all-time starting lineup. Every NBA team's all-time starting lineup. dark