ArticlesArticle
The longest one-club careers
Brooks Robinson, Carl Yastrzemski, Dirk Nowitzki, Jason Hanson, Steve Yzerman: the players who spent the most seasons without ever changing teams.
By Austin · October 16, 2026
Trades, free agency and salary caps make a one-club career rarer every year. We went through every roster in our data and found the players who played the most seasons without ever wearing another team’s uniform. A franchise that moved or changed its name still counts as one club: the Quebec Nordiques and the Colorado Avalanche are one club here, and so are the Winnipeg Jets of the 1980s and the Arizona Coyotes.
| Sport | Longest one-club career | Seasons |
|---|---|---|
| Baseball | Brooks Robinson (Baltimore Orioles) | 23 |
| Basketball | Dirk Nowitzki (Dallas Mavericks) | 21 |
| Football | Jason Hanson (Detroit Lions) | 21 |
| Hockey | Sidney Crosby (Pittsburgh Penguins) | 22 |
| Soccer | Francesco Totti (AS Roma) | 25 |
Baseball
Most of baseball's longest one-club careers came before free agency (1976), when a club could keep a player for as long as it wanted him. Cal Ripken and George Brett, whose careers came mostly after it, stayed by choice.
Brooks Robinson and Carl Yastrzemski share the record: 23 seasons each, Robinson at third base in Baltimore and Yastrzemski in left field at Fenway, without a single game for anyone else.
| Player | Club | Seasons | Career | |
|---|---|---|---|---|
| 1 | Brooks Robinson | Baltimore Orioles | 23 | 1955–1977 |
| 2 | Carl Yastrzemski | Boston Red Sox | 23 | 1961–1983 |
| 3 | Stan Musial | St. Louis Cardinals | 22 | 1941–1963 |
| 4 | Al Kaline | Detroit Tigers | 22 | 1953–1974 |
| 5 | Mel Ott | New York Giants | 22 | 1926–1947 |
| 6 | Cal Ripken | Baltimore Orioles | 21 | 1981–2001 |
| 7 | George Brett | Kansas City Royals | 21 | 1973–1993 |
| 8 | Willie Stargell | Pittsburgh Pirates | 21 | 1962–1982 |
| 9 | Walter Johnson | Washington Senators | 21 | 1907–1927 |
| 10 | Ted Lyons | Chicago White Sox | 21 | 1923–1946 |
In all, 78 baseball players in our data spent 15 or more seasons with one club and nowhere else.
Basketball
In basketball a one-club career is almost always a franchise's franchise player: the star a team builds around and pays to keep. Below the top of the list are the role players who became part of a team's identity, like Udonis Haslem in Miami.
Dirk Nowitzki's 21 seasons in Dallas are the NBA record for one franchise. Kobe Bryant's 20 with the Lakers are next; he joined them straight out of high school.
| Player | Club | Seasons | Career | |
|---|---|---|---|---|
| 1 | Dirk Nowitzki | Dallas Mavericks | 21 | 1998–2018 |
| 2 | Kobe Bryant | Los Angeles Lakers | 20 | 1996–2015 |
| 3 | Udonis Haslem | Miami Heat | 20 | 2003–2022 |
| 4 | Tim Duncan | San Antonio Spurs | 19 | 1997–2015 |
| 5 | John Stockton | Utah Jazz | 19 | 1984–2002 |
| 6 | Reggie Miller | Indiana Pacers | 18 | 1987–2004 |
| 7 | Stephen Curry * | Golden State Warriors | 17 | 2009–2025 |
| 8 | John Havlicek | Boston Celtics | 16 | 1962–1977 |
| 9 | Manu Ginobili | San Antonio Spurs | 16 | 2002–2017 |
| 10 | Dolph Schayes | Philadelphia 76ers | 15 | 1949–1963 |
In all, 11 basketball players in our data spent 15 or more seasons with one club and nowhere else.
Football
Football careers are short, so the longest one-club careers belong to the positions that last: kickers, offensive linemen and the occasional quarterback.
Jason Hanson kicked for the Detroit Lions for 21 seasons, the NFL record for one team.
| Player | Club | Seasons | Career | |
|---|---|---|---|---|
| 1 | Jason Hanson | Detroit Lions | 21 | 1992–2012 |
| 2 | Darrell Green | Washington Redskins | 20 | 1983–2002 |
| 3 | Jackie Slater | St. Louis Rams | 20 | 1976–1995 |
| 4 | Bruce Matthews | Tennessee Titans | 19 | 1983–2001 |
| 5 | Ben Roethlisberger | Pittsburgh Steelers | 18 | 2004–2021 |
| 6 | J.J. Jansen * | Carolina Panthers | 18 | 2009–2026 |
| 7 | Pat Leahy | New York Jets | 18 | 1974–1991 |
| 8 | Larry Fitzgerald | Arizona Cardinals | 17 | 2004–2020 |
| 9 | Ray Lewis | Baltimore Ravens | 17 | 1996–2012 |
| 10 | Dan Marino | Miami Dolphins | 17 | 1983–1999 |
In all, 36 football players in our data spent 15 or more seasons with one club and nowhere else.
Hockey
Hockey has more long one-club careers than basketball or football, and several of the longest are still going: the salary-cap era's stars who signed long extensions with the team that drafted them.
Steve Yzerman captained Detroit for most of his 22 seasons there. Sidney Crosby and Alex Ovechkin have matched him and are still going, each with the only NHL team he has ever played for.
| Player | Club | Seasons | Career | |
|---|---|---|---|---|
| 1 | Sidney Crosby * | Pittsburgh Penguins | 22 | 2005–2026 |
| 2 | Steve Yzerman | Detroit Red Wings | 22 | 1983–2005 |
| 3 | Alex Ovechkin * | Washington Capitals | 22 | 2005–2026 |
| 4 | Evgeni Malkin * | Pittsburgh Penguins | 21 | 2006–2026 |
| 5 | Shane Doan | Arizona Coyotes | 21 | 1995–2016 |
| 6 | Kris Letang * | Pittsburgh Penguins | 21 | 2006–2026 |
| 7 | Joe Sakic | Colorado Avalanche | 20 | 1988–2008 |
| 8 | Nicklas Lidstrom | Detroit Red Wings | 20 | 1991–2011 |
| 9 | Ken Daneyko | New Jersey Devils | 20 | 1983–2002 |
| 10 | Patrik Elias | New Jersey Devils | 20 | 1995–2015 |
In all, 55 hockey players in our data spent 15 or more seasons with one club and nowhere else.
Soccer
Soccer's one-club players are mostly academy graduates who never left: the Italian tradition of the bandiera, the club captain who embodies a city, is all over the list.
Francesco Totti (Roma) and Paolo Maldini (AC Milan) both played 25 seasons for their boyhood clubs and never left. In Italian football they're known as bandiere: flags.
| Player | Club | Seasons | Career | |
|---|---|---|---|---|
| 1 | Francesco Totti | AS Roma | 25 | 1992–2016 |
| 2 | Paolo Maldini | AC Milan | 25 | 1984–2008 |
| 3 | Ryan Giggs | Manchester United | 24 | 1990–2013 |
| 4 | Alessandro Costacurta | AC Milan | 20 | 1987–2006 |
| 5 | Giuseppe Bergomi | Inter Milan | 20 | 1979–1998 |
| 6 | Paul Scholes | Manchester United | 19 | 1994–2012 |
| 7 | Javier Zanetti | Inter Milan | 19 | 1995–2013 |
| 8 | Gary Neville | Manchester United | 19 | 1992–2010 |
| 9 | Tony Adams | Arsenal FC | 19 | 1983–2001 |
| 10 | Karl-Heinz Körbel | Eintracht Frankfurt | 19 | 1972–1990 |
In all, 61 soccer players in our data spent 15 or more seasons with one club and nowhere else.
More reading
For the opposite kind of career, see the most-traveled players, and for teammates who stayed together, the longest partnerships.
How we counted
A season counts if the player appeared for the club that season. Only players who never appeared for another club in our data qualify. Clubs that relocated or were renamed count as one: in baseball, the franchises as the Lahman Baseball Database defines them; in hockey, each relocation (the North Stars and the Stars, the Whalers and the Hurricanes, and so on).
About the data
These numbers come from the rosters behind Teammate Chain, not from every league a player ever played in. Two players count as teammates only if both are on the same club’s roster for the same season in our data, so a player who spent part of his career somewhere we don’t cover has fewer teammates here than he really had.
- Baseball: every MLB and major-league season since 1871. Every major-league season is included, back to the National Association, so baseball careers are complete.
- Basketball: every NBA season since 1946-47 (BAA included). The ABA isn't included, so ABA seasons (Julius Erving's, Moses Malone's, Spencer Haywood's first) don't count. Some rosters from the 1960s to the 1980s are incomplete.
- Football: every NFL season since the 1970 merger. Nothing before 1970, so the AFL and the pre-merger NFL are missing, along with the USFL, XFL and other leagues. A career like George Blanda's (1949-1975) only counts from 1970.
- Hockey: every NHL season since the 1967 expansion. Nothing before 1967-68, and no WHA, so Gordie Howe and Bobby Hull, for example, only count from 1967.
- Soccer: Europe's top five leagues since 1963-64. Only league matches in the Premier League, La Liga, Serie A, the Bundesliga and Ligue 1. Seasons anywhere else (Portugal, the Netherlands, Turkey, MLS, lower divisions) and cup and international matches aren't included. Teammates count from the club's squad list, even a player who didn't play that season; career lengths count only the seasons he played. A career that starts with a newly promoted club may have begun in a lower division, so those careers are left out of the lists.
“Never played anywhere else” means anywhere else in our data. A player who spent a season or two in a league we don’t cover still counts as one-club here. In football, hockey and soccer, careers that may have begun before our records start are left out.
Careers that are still going count through the latest season in the data, as of October 17, 2026. Players who share a name are kept apart by their league ids and birth dates, and a player listed on a roster for a season he didn’t play (an injured rookie, a draft pick still overseas) isn’t counted for it. Spot a mistake? Let us know.
Try it on today’s board
A new Teammate Chain puzzle lands every day at midnight Pacific. It’s free, and you don’t need an account.
Play Teammate Chain