How each NBA team assembled their current rosters Visualized

A few months ago I found out that the Timberwolves were able to acquire the draft rights to Jaden McDaniels in part because of the 2007 Trade of Kevin Garnett to the Celtics. It made me wonder, could you visualize how an NBA team assembled their entire roster just by charting out Draft picks, Trades, and Free Agency Signings? This question started a months long journey of compiling the information and then making family tree style visualizations for each team. About a week ago I posted a number of these in the various team subreddits and received a lot of very helpful feedback and a number of people urging me to post all of the trees in the main nba sub. Below is the result of this hobby project that has taken up a majority of my free time in the back half of this season.

Timberwolves

Roster Tree

Roster Tree broken down by GM

I wanted to do my team first. The wolves are still deriving draft value from their 2nd ever pick: Doug West in the 2nd Round of the 1989 Draft. His Trade tree currently feeds into Ayo Dosunmu, Julian Phillips, and Rocco Zikarsky.

Knicks

Roster Tree

Roster Tree broken down by GM

The champions. This was my favorite trade tree outside of the Timberwolves because it contains the only trade involving a Head Coach. In 1995 the Knicks traded Pat Riley to the Heat for a 1996 Atlanta 1st. That pick started a tree that eventually resulted in the Knicks getting Mitchell Robinson.

Spurs

Roster Tree

Roster Tree broken down by GM

The Spurs, have 7 players who have never played anywhere but their team which is one of the highest in the league.

Thunder

Roster Tree

I know Presti has a good reputation but if anything after doing this tree I think he is underrated. The trades he makes are so rarely a net negative. This trade tree has the oldest draft pick still providing a team value. In 1977, the Supersonics drafted Jack Sikma, who’s trade tree started in 1986 when he was traded to the Bucks. That trade started a tree that eventually resulted in the Thunder getting Jared McCain earlier this year.

Pistons

Roster Tree

Roster Tree broken down by GM

The earliest draft pick still providing the Pistons value is their 2019 1st (Sekou Doumbouya) who they traded to the Nets in 2021, which is one of the most shallow trees in the league. Really shows how well they’ve bounced back in the past few years to assemble the team they have.

Celtics

Roster Tree

The celtics tree is crazy for the amount of trades. It’s pretty well known that they received the pick for Jaylen Brown in the trade that sent KG and Paul Pierce to the Nets. But less known is that every player on their roster not signed in free agency or drafted with their own picks is on the Celtics partially as a result of that trade. Insane value.

Nuggets

Roster Tree

The Carmelo Anthony trade involved way more players than I originally thought.

Lakers

Roster Tree

Roster Tree broken down by GM

Very cool that 3 trades done by Jerry West are still proving the Lakers value to this day.

Cavaliers

Roster Tree

This trade tree contains the oldest trade still providing a team value. On June 17, 1986 the Cavs traded a future 2nd for the draft rights to a guy by the name of Mark Price (pretty good value if you ask me). Also kind of cool that Tyrese Proctor is the only guy who is on his team because of a trade involving Lebron James because his move to the Heat was actually a sign and trade.

Rockets

Roster Tree

The KD trade looms large here and the Rockets only have 6 guys on their roster that were acquired by trade.

Hawks

Roster Tree

No real notes, just want to say it’s cool that Jeff Teague is here.

Raptors

Roster Tree

Raptors have one of the more disconnected trade trees, a lot of little trades and they are one of 2 teams that currently controls NO picks other than their own (the other is the lakers)

76ers

Roster Tree

Roster Tree broken down by GM

The most simple trade tree in the league. Really remarkable how few trades are providing the team value, but that pick that became De’Aaron Fox nearly ended in disaster because if you look, it turned into the Jason Tatum pick and then Markelle Fultz. 76ers probably very glad they got off that pick and turned it into Tyrese Maxey.

Magic

Roster Tree

In my first draft of this tree I forgot to list 3 players in the Dwight Howard trade so it looked like the Magic traded Jason Richardson for 10 players, which is a bit of an overpay if you ask me.

Suns

Roster Tree

This tree got sort of bunched up on the right side, so apologies for that. The suns have a lot of trades that really didn’t go their way recently and the fact that the only player on their roster there after the Beal trade being Royce O’Neale is not a fun fact. However, the KD trade is very cool to see with 5 teams involved (there were 7 total but only 5 sent picks or players to the Suns)

Hornets

Roster Tree

Hornets trade a lot

Heat

Roster Tree

This trade tree is pretty uncomplicated but if the Giannis trade rumors are true, it is definitely about to get more complicated.

Trail Blazers

Roster Tree

I did not know that Damian Lillard was a Nets pick originally. Not much else to say about this tree.

Clippers

Roster Tree

I wish there was an easier way to show this but that John Wall/Luke Kennard Trade in 2023 provided an insane amount of branches and value to the Clippers.

Warriors

Roster Tree

Outside of Mark Jackson, the oldest draft pick providing the Warriors value isn’t one used in a trade tree but instead is Steph Curry. Also I had no idea that the pick that became Draymond Green was not originally a Warriors pick, but was traded to the Warriors by the Nets

Bucks

Roster Tree

Roster Tree broken down by GM

Another one of the older trade trees, going all the way back to 1992.

Bulls

Roster Tree

Roster Tree broken down by GM

A little sad that none of the active trade trees go back to the MJ days, but it’s nice that Derrick rose’s Tree is still active

Pelicans

Roster Tree

One of the harder trees to organize, the Pelicans love making trades involving a large number of players only to make multiple smaller trades involving players from multiple big packages. They still have 2 picks from the “New Orleans Hornets” days providing value (Anthony Davis and Nerlens Noel)

Mavericks

Roster Tree

Man they really got hosed in the Luka trade. I know that’s not a new take but seeing it laid out like this really drives it home.

Grizzlies

Roster Tree

They still 6 Vancouver picks providing value!

Kings

Roster Tree

Roster Tree broken down by GM

Kings made so many trades in 2025.

Jazz

Roster Tree

Roster Tree broken down by GM

The Rudy Gobert Trade looms large in this tree.

Nets

Roster Tree

Wow that Mikal Bridges trade really involved a lot of picks, huh.

Pacers

Roster Tree

Roster Tree broken down by GM

Definitely not the most a team has gotten from trading Paul George but Haliburton, Siakam, Huff, Zubac, Kobe Brown, Nembahrd, Sheppard, and Furphy is still a pretty good return all things considered.

Wizards

Roster Tree

The Chris Paul/Bradley Beal trade involved soooo many assets and won’t complete for another 4 drafts.

FAQ:

This trade doesn’t show every team that was involved

The trades are presented from the perspective of the team being shown. For example, in the Kevin Durant trade to the Rockets, there were 7 teams involved, but not every team sent a pick or a player to every other team. So from the perspective of the Rockets, the only teams that sent them anything are the hawks and suns, so they are the only teams shown.

I don’t see X trade that I know this team made

These trade trees do not cover every transaction by a team, but instead only the draft picks/free agent signings/trades that are still providing the team value. I also elected not to show how the teams acquired each of their future picks because it was complicated enough already and instead I decided to just show which draft picks the team has in the “Future draft picks” Box

Why isn’t there a version of X Team broken down by GM

I wanted to get this out before the rush of trades at the draft (hopefully the Giannis trade didn’t happen while I was writing this) so I had to cut it short, but I will be editing the album and adding teams as I complete them over the next few weeks

808Kuro | Knicks
538 | 17 hours ago
Perkinshammer [OP] | Timberwolves
143 | 17 hours ago
0vansTriedge
12 | 15 hours ago
bmdweller
4 | 12 hours ago
Feisty-Boot5408
3 | 6 hours ago
TyposIncoming | Lakers
312 | 17 hours ago
Perkinshammer [OP] | Timberwolves
110 | 17 hours ago
TyposIncoming | Lakers
58 | 17 hours ago
Mg29reaper | Celtics
2 | 15 hours ago
starbardia
2 | 14 hours ago
zayetz | Knicks
2 | 7 hours ago
IcyKape
23 | 17 hours ago
Chav
20 | 16 hours ago
ben_chowd | Knicks
1 | 3 hours ago
Easy_Mode_1234
2 | 3 hours ago
ShayDMoves | Grizzlies
92 | 17 hours ago
Perkinshammer [OP] | Timberwolves
113 | 17 hours ago
ChickenPandaMan
56 | 17 hours ago
tgeraghty_10 | Mavericks
54 | 17 hours ago
Perkinshammer [OP] | Timberwolves
52 | 17 hours ago
sktyrhrtout
12 | 16 hours ago
Perkinshammer [OP] | Timberwolves
75 | 16 hours ago
Stuckatpennstation
16 | 14 hours ago
PortGenz
8 | 13 hours ago
BeefySwan
2 | 3 hours ago
Bill_Sandwich | Pacers
34 | 17 hours ago
drewm916 | Kings
3 | 16 hours ago
Evilsj | Nets
2 | 11 hours ago
BanGy | Supersonics
24 | 17 hours ago
mdvbb | Kings
20 | 17 hours ago
JNerdGaming | Knicks
18 | 17 hours ago
Perkinshammer [OP] | Timberwolves
5 | 17 hours ago
sktyrhrtout
2 | 16 hours ago
Perkinshammer [OP] | Timberwolves
21 | 16 hours ago
sktyrhrtout
9 | 16 hours ago
SoldatJ | OKC
3 | 11 hours ago
TJeffersonsBlackKid
2 | 4 hours ago
Lazarus704 | Knicks
15 | 17 hours ago
Perkinshammer [OP] | Timberwolves
44 | 17 hours ago
dashsmurf
9 | 17 hours ago
Ccool14 | Timberwolves
7 | 17 hours ago
tsmknicks | Knicks
6 | 17 hours ago
Shyam995 | Cavaliers
4 | 17 hours ago
No-Anything2507 | Knicks
5 | 17 hours ago
lion_hammer | Cherokee Parks
5 | 17 hours ago
Perkinshammer [OP] | Timberwolves
6 | 17 hours ago
BlackStarrLine | KnickerBockers
4 | 17 hours ago
MojaveMojito1324 | Wizards
3 | 17 hours ago
Perkinshammer [OP] | Timberwolves
5 | 17 hours ago
MojaveMojito1324 | Wizards
3 | 16 hours ago
drewm916 | Kings
4 | 16 hours ago
mibuwolf23 | Nets
4 | 16 hours ago
jrtasoli
3 | 17 hours ago
JigglyBush | Timberwolves
3 | 17 hours ago
DarreToBe | Raptors
3 | 15 hours ago
Perkinshammer [OP] | Timberwolves
3 | 15 hours ago
Obi-Wen | Cavaliers
3 | 15 hours ago
jutiatle | Lakers
3 | 15 hours ago
idontknow_whatever | CHI
3 | 15 hours ago
HawaiianPunch42 | Timberwolves
2 | 17 hours ago
dirkuscircus | Mavericks
2 | 17 hours ago
Jx____ | Knicks
2 | 16 hours ago
BellamyHoops
3 | 16 hours ago
curva3 | 76ers
2 | 16 hours ago
Perkinshammer [OP] | Timberwolves
3 | 16 hours ago
iHate-Public-Transit
2 | 14 hours ago
Tylerhfield
2 | 16 hours ago
Perkinshammer [OP] | Timberwolves
2 | 16 hours ago
Tylerhfield
2 | 16 hours ago
No_Assignment1857
2 | 15 hours ago
TheSmokedSalmon420 | Cavaliers
2 | 15 hours ago
savetheplastic | Warriors
2 | 15 hours ago
GardenStateKing | Celtics
2 | 15 hours ago
dotcaIm | Timberwolves
2 | 15 hours ago
Fu2-10 | Pistons
2 | 15 hours ago
Inevitable-Stand5137
2 | 15 hours ago
Perkinshammer [OP] | Timberwolves
3 | 14 hours ago
Fun-Variety-5647 | Nuggets
2 | 15 hours ago
Perkinshammer [OP] | Timberwolves
1 | 14 hours ago
The_Assassin_Gower | Pacers
2 | 15 hours ago
0vansTriedge
2 | 15 hours ago
Stuckatpennstation
2 | 14 hours ago
AnkitPancakes | Thunder
2 | 14 hours ago
Portmanteau_that | Hornets
2 | 14 hours ago
Perkinshammer [OP] | Timberwolves
3 | 14 hours ago
Portmanteau_that | Hornets
2 | 14 hours ago
CoffeeonPineapple | Spurs
2 | 14 hours ago
JoanieLovesAdachi | Supersonics
2 | 14 hours ago
KeithClossOfficial | Lakers
2 | 14 hours ago
TyTalksSports | Mavericks
2 | 14 hours ago
immanoel | HOU
2 | 14 hours ago
iHate-Public-Transit
2 | 14 hours ago
Perkinshammer [OP] | Timberwolves
3 | 14 hours ago
iHate-Public-Transit
3 | 14 hours ago
a_brick_canvas | Cavaliers
2 | 14 hours ago
soupdawg | Rockets
2 | 13 hours ago
dcash14 | Timberwolves
2 | 13 hours ago
toastwitheggs
2 | 13 hours ago
shinshikaizer
2 | 13 hours ago
dherps | Mexico
2 | 12 hours ago
frallet | Timberwolves
2 | 12 hours ago
smartkeg | Warriors
2 | 12 hours ago
Evilsj | Nets
2 | 11 hours ago
_Bread-Maker_ | Rockets
2 | 11 hours ago
Dimaaaa | Spurs
2 | 10 hours ago
BigStrongPolarGuy
2 | 10 hours ago
comment0freshmaker | Knicks
2 | 5 hours ago
heartofcoal | Celtics
2 | 5 hours ago
AccomplishedBake8351
2 | 4 hours ago
deeznupz | Wizards
2 | 4 hours ago
sentientbasketball11 | Knicks
1 | 16 hours ago
DecimusRutilius | Knicks
2 | 3 hours ago