Random NBA Team Generator

Draw from all 30 franchises or a pool you build by conference, division, or era. Pair teams into games, or hand each friend a team for a 2K night, with drawn teams pulled from the pool so nobody repeats.

Opening draw: 5 teams from all 30. Pick a mode, trim the pool below, then go.

  1. SAC Sacramento Kings Western · Pacific · NBA since 1948
  2. DET Detroit Pistons Eastern · Central · NBA since 1948
  3. MEM Memphis Grizzlies Western · Southwest · NBA since 1995
  4. BOS Boston Celtics Eastern · Atlantic · NBA since 1946
  5. UTA Utah Jazz Western · Northwest · NBA since 1974
Team pool 30 of 30 in

Eastern Conference

Western Conference

Settings for five common jobs

Most visits come from one of these situations. Each row lists the mode, the pool, and the setting worth changing.

SituationModePoolTip
NBA 2K night, four players, several roundsAssign to playersAll 30Tick Remove drawn teams. Round two draws from the 26 left, so nobody plays the same team twice.
Picking a MyNBA franchise to rebuildDraw teams, 1Untick teams you ran beforeCommit to the first result. Rerolling until a contender shows up defeats the point.
Choosing tonight's League Pass gameDraw teams, 1Only teams on tonight's slateClear the pool, then tick the teams playing. The pool resets on reload, so set the pool each night.
Mock first round for a bracketMatchups, Same conference, 4 gamesEast preset, then WestRun once per conference. Eight teams per side, like the real first round.
Geography warm-up in classDraw teams, 5All 30Students place each city on a map. Toronto, the one team outside the US, trips up most classes.

The odds behind each draw

Every team in the pool carries equal weight. Records, payroll, and 2K ratings play no part, so a 60-win team and a lottery team share the same chance. Here is what equal weight works out to.

Matchups on Any two teams drift away from a real NBA schedule. Each team plays its four division rivals four times and the 15 teams from the other conference twice, across 82 games.

Game typeRandom pairingReal 82-game schedule
Division game4 of 29 opponents, 13.8%16 games, 19.5%
Conference game, other division10 of 29, 34.5%36 games, 43.9%
East vs West15 of 29, 51.7%30 games, 36.6%

For a slate closer to the regular season, switch pairing to Same conference for most rounds. Each result tags the game type, so the mix shows up as you go.

How the shuffle runs

The draw happens on the Toolexe server. The pool goes through a Fisher-Yates shuffle, with each swap drawn from PHP's random_int, a cryptographically secure source. The result takes teams off the top of the shuffled list.

for i from last index down to 1:
    j = random_int(0, i)
    swap pool[i] with pool[j]

An earlier version of this page sorted teams with Math.random() - 0.5 as the comparison. The shortcut shows up in a lot of tutorials and gives a lopsided shuffle, since sort routines expect a comparison to return the same answer every time. Some orders came up far more often than others. Fisher-Yates gives each order of the pool the same chance.

Thirty franchises, four eras

The era buttons above the pool group teams by the first season each franchise played in the BAA or NBA. Use them for a throwback night, or to keep a draw to the newer clubs.

  1. Founders, 1946 to 1949 8 teams

    Celtics, Knicks, and Warriors opened the BAA in 1946. The Pistons, Lakers, and Kings came over from the NBL in 1948, the Hawks and 76ers with the 1949 merger. Only Boston and New York never moved.

  2. Expansion, 1961 to 1980 11 teams

    Wizards (as the Chicago Packers), Bulls, Rockets, Thunder (as the Seattle SuperSonics), Bucks, Suns, Cavaliers, Trail Blazers, Clippers (as the Buffalo Braves), Jazz (in New Orleans), and Mavericks.

  3. ABA merger, 1976 4 teams

    Nets, Nuggets, Pacers, and Spurs. Their ABA seasons sit outside NBA records, so a franchise playing since 1967 shows 1976 here.

  4. Since 1988 7 teams

    Heat and Hornets in 1988, Timberwolves and Magic in 1989, Raptors and Grizzlies (in Vancouver) in 1995, Pelicans in 2002.

The Hornets and Pelicans need a footnote. Charlotte's team left for New Orleans in 2002, and a new Charlotte club arrived in 2004 as the Bobcats. In 2014 the league gave the 1988 to 2002 Hornets records back to Charlotte, so the Pelicans count from 2002 and the Hornets from 1988.

What this picker leaves out

Random NBA team questions

Is every NBA team equally likely?

Yes. With all 30 in the pool, each team has a 1 in 30 chance on a one-team draw. Unticking teams raises the odds for the rest evenly.

How do I stop a team from coming up twice?

One result never repeats a team. To keep teams out of later draws too, tick Remove drawn teams from the pool. Each draw then unticks the teams on screen, and the pool counter drops.

How do I draw only Western Conference teams?

Press the West preset above the pool. Division buttons toggle five teams at a time, and single teams toggle with a click.

What happens with East vs West when the pool is uneven?

Games fill up to the smaller side. Seven East teams against twelve West teams gives seven games at most, and the status line reports any games short of the number you asked for.

Why does Brooklyn show 1976 when the Nets formed in 1967?

The year is the first NBA season. The Nets, Nuggets, Pacers, and Spurs spent their first nine seasons in the ABA before the 1976 merger.

Does the generator weigh team strength?

No. A title favorite and a rebuilding team have the same odds. To lean toward good teams, untick the bottom of the standings before you draw.