Team Generator

Paste a list of names, one per line, type how many teams you want, and the Team Generator shuffles everyone and deals them out so no team is more than one person bigger than another. 22 people in 4 teams gives 6, 6, 5 and 5. Click again for a new split.

Built by Bob Article by Lace QA by Ben Shipped

Frequently asked questions

Ratings & Reviews

Rate this tool

Sign in to leave a written review.
Loading reviews…

What the Team Generator does

The Team Generator splits a list of names into random teams. Paste the names one per line, type how many teams you want, and click Generate Teams. Everyone is shuffled and dealt out so team sizes never differ by more than one person.

Paste in 20 names, ask for 4 teams, and you get four teams of 5. Click again and you get a fresh split. There's no signup, nothing to install, and the list stays in your browser.

It exists because the usual methods are worse. Counting off "one, two, three, four" works for 12 kids and falls apart at 38. Letting captains pick sides is quick, but it creates the last-picked moment every kid remembers. A spreadsheet with =RAND() works, but it takes longer to set up than the game it's for.

How to split a list of names into teams

  1. Paste your names into the box, one per line. Spaces at the start and end of a line are trimmed, and blank lines are skipped. "María José" and "O'Brien" each count as one name.
  2. Type the number of teams in the Number of teams box.
  3. Click Generate Teams. The teams appear as cards labeled Team 1, Team 2 and so on.
  4. Don't like the split? Click Generate Teams again for a new random one.
  5. To share the result, select the names on screen and copy them, or take a screenshot. There's no export button.

The box comes pre-filled with eight sample names (Alice to Henry) so you can see it work before pasting your own list.

Worked example. A camp counselor has 140 kids and needs 2 teams for a relay race. Paste the 140 names, set teams to 2, and generate: two teams of 70. With 22 people and 4 teams, you get teams of 6, 6, 5 and 5, not 5, 5, 5 and 7.

How the shuffle and the deal work

Splitting a list into fair teams takes two steps: shuffle the names into a random order, then hand them out.

Step 1: the shuffle. The Team Generator uses the Fisher-Yates shuffle, first described by Ronald Fisher and Frank Yates in 1938 and adapted for computers by Richard Durstenfeld in 1964. It works like this:

  1. Start at the last name in the list.
  2. Pick a random position from the start of the list up to and including the current one.
  3. Swap the two names.
  4. Move one place toward the front and repeat until you reach the start.

Done this way, every possible order of the list is equally likely. A common shortcut, sorting the list with a comparison that randomly says "bigger" or "smaller," looks random but favors some orders over others. Fisher-Yates doesn't have that problem.

Step 2: the deal. The shuffled names are dealt out like cards. The first name goes to Team 1, the second to Team 2, and so on, wrapping back to Team 1 after the last team. That's why the first teams get the extra people when the list doesn't divide evenly, and why no team is ever more than one person bigger than another.

Here's 10 names into 3 teams. Say the shuffle produces: Omar, Priya, Liam, Sara, Jin, Eve, Noah, Kate, Ivan, Mei.

  • Team 1 gets names 1, 4, 7 and 10: Omar, Sara, Noah, Mei.
  • Team 2 gets names 2, 5 and 8: Priya, Jin, Kate.
  • Team 3 gets names 3, 6 and 9: Liam, Eve, Ivan.

The randomness comes from the browser's built-in Math.random(). That's plenty for picking teams and seating orders. It isn't meant for prize draws that need an auditable or cryptographic source.

Team sizes for common splits

The tool asks for a number of teams, not a team size. To get teams of a set size, divide your headcount by the size you want and round up. That keeps every team at or under your target. These splits were all worked out with the tool's own dealing rule:

PeopleTeams to enterTeam sizes you get
10 (5v5)25, 5
1729, 8
2045, 5, 5, 5
2246, 6, 5, 5
23, in groups of 464, 4, 4, 4, 4, 3
24, in groups of 464, 4, 4, 4, 4, 4
2547, 6, 6, 6
3065, 5, 5, 5, 5, 5
140270, 70

Random pairs and partners

For pairs, enter half your headcount as the number of teams. 16 people with 8 teams gives eight pairs. With an odd number, round down: 15 people with 7 teams gives one trio and six pairs, so nobody works alone.

What happens if you ask for too many teams

If you ask for more teams than you have names, the tool makes one team per name. Ten names and 15 teams gives ten teams of one. It never creates an empty team.

Ideal team sizes by activity

Different activities work best at different sizes. Use this as a starting point when deciding how many teams to enter:

ActivityPlayers per team
Pickleball or tennis doubles2
Beach volleyball2
3-on-3 basketball3
Full-court basketball (5v5)5
Futsal or 5-a-side soccer5
Indoor volleyball6
Ultimate frisbee7
11-a-side soccer11
Trivia night4 to 6
Classroom discussion group3 to 5
Hackathon team3 to 5

Groups smaller than 3 run short on ideas in a discussion. Groups larger than 7 tend to split into side conversations. For most learning and brainstorming, 4 or 5 is the sweet spot. For sports, the rules set the size for you.

When you'll use it

  • PE and sports classes: 30 students into 6 teams for relays or scrimmages, without the captain-pick ritual.
  • Pickup games: 10 players into a fair 5v5 when nobody wants to choose.
  • Classroom group work: 24 students into 6 groups of 4 for a lab or discussion.
  • Work and workshops: breakout rooms and offsite groups that mix people instead of letting cliques form.
  • Hackathons: teams of 3 to 5 strangers when the goal is meeting new people.
  • Game nights and parties: trivia, charades or a backyard tournament.

What the Team Generator doesn't do

It splits people at random, and that's all. It does not:

  • Balance for skill. A random split can put your two best players together. The usual fix: sort players into tiers (strong, middle, new), then run each tier through the generator separately with the same number of teams, and combine Team 1 with Team 1, and so on.
  • Keep people together or apart. It doesn't know about siblings, couples or two managers who shouldn't share a group. Generate, then swap one or two names by hand.
  • Remove duplicates. If a name appears twice in your list, it's dealt twice. Check your paste first.
  • Pick captains or name the teams. Teams are numbered. If you need a captain, use the first name on each card; the order inside each team is random too.
  • Read comma-separated lists. Each line is one entry, so "Ann, Ben, Cal" on one line counts as one name. Put each name on its own line.
  • Save your list. Refresh the page and it's gone. Keep the master list in a doc and paste it in each time.

Need a different kind of random? The List Randomizer shuffles a list without splitting it, good for a presentation or draft order. The Random Name Picker draws one name for a raffle or a cold call. The Coin Flip settles who kicks off. And if you need placeholder names to fill the list, the Random Name Generator makes them up.

Frequently asked questions

How do I split a list of names into random groups?

Paste the names one per line, enter the number of groups, and click Generate Teams. The tool shuffles the list and deals the names out, so every group is within one person of the others.

What happens if my list doesn't divide evenly?

The first teams get one extra person. Twenty-two people in four teams become 6, 6, 5 and 5. The biggest team is never more than one person larger than the smallest.

Can I choose the number of people per team instead?

Not directly; the tool takes a number of teams. Divide your headcount by the team size you want and round up. For 23 people in groups of 4, enter 6 teams and you get five groups of 4 and one group of 3.

How do I make random pairs?

Enter half the number of people as the number of teams. With 16 people, enter 8. With an odd number like 15, enter 7 and you get six pairs and one trio.

Is the split really random?

Yes. The list is shuffled with the Fisher-Yates algorithm, which makes every order equally likely, using the browser's Math.random(). With 10 people in two teams of 5, there are 252 possible Team 1 lineups, so repeats happen now and then by chance on small lists.

Can I balance teams by skill?

Not automatically. Split your players into skill tiers, run each tier through the generator with the same number of teams, and merge the matching team numbers. Each team then gets a share of every tier.

Is my list saved or uploaded?

No. The shuffle runs in your browser and the names aren't sent to a server. Close the tab and they're gone, so keep your own copy if you split the same group every week.