SoccerMapd

Team generator

Paste your players, one per line, with an optional rating from 1 to 5 after the name. Pick how many teams you want and get a split where every team's total rating is as close as the roster allows, or a plain random shuffle for pickup. Tag keepers with [gk] to spread them one per team, and use [together:Name] or [apart:Name] for pairs that should or should not share a team. Everything runs in your browser; the names are never sent anywhere.

Up to 200 players. A rating after the name is optional; lines without one count as 3.

Names stay in this browser. Nothing is sent to a server.
Mode

Evens out the total rating of each team. Tags are honored in both modes.

How many teams

2 to 12 teams. Sizes stay within one player of each other.

Comma separated. Teams without a name get a color.

How balancing works

Balanced mode starts with a snake draft. Players are lined up from the highest rating to the lowest and dealt to the teams in order, then in reverse order, then forward again, the way captains would pick if the last team to pick got the first pick of the next round. That alone gets the totals close.

Then a swap pass runs. The tool tries moving each player to every other team, and trading each pair of players across teams, and keeps any change that narrows the gap between the highest and lowest team totals. It repeats until a full pass finds nothing better. Ties are broken by the shuffle seed, so Reshuffle can give a different split with the same gap when players share a rating; with no ties it returns the same teams.

Constraints sit above the rating balance. Team sizes stay within one player of each other, together groups move as one unit, apart pairs are kept on different teams, and tagged goalkeepers are spread so no team has two while another has none. With two teams, chains of apart tags are worked out before the draft so each link lands on the opposite side from the last. When the constraints cannot all be met at once, sizes win first, then apart tags, then keepers, and the teams say which tag could not be honored. Random mode skips the draft and the rating swaps but keeps the same constraints.

Lines without a rating count as a 3. If nobody has a rating, Balanced and Random give the same kind of result: even headcounts, tags honored, order decided by the shuffle.

Questions

How do I make fair teams from 20 players?
Paste the 20 names one per line with a rating from 1 to 5 after each, like Sam 4. Set the number of teams to 4, or choose teams of 5, keep Balanced selected and press Generate teams. The tool drafts by rating in a snake order, then keeps swapping players between teams while that narrows the gap between the highest and lowest team totals. The line under the teams tells you the largest gap it ended with. Reshuffle can give a different split with the same gap when players are tied on rating; with no ties it returns the same teams.
Can I keep two players together?
Yes. Add a together tag after one of them, like Ana [together:Bo], and the two are moved as one unit so they always land on the same team. Tags chain, so Ana together with Bo and Bo together with Cy puts all three on one team. If a group is bigger than a team can hold, the tool cuts it into team-sized pieces and says so. The opposite tag, [apart:Name], keeps two players on different teams.
Does it work for pickup?
Yes. Choose Random for a plain shuffle with team sizes within one player of each other, and press Reshuffle as often as you like. Tag your keepers with [gk] and they are spread one per team in Random mode too. Ratings are optional; without them, Balanced splits by headcount and tags alone.
Are the names stored anywhere?
Not on our side. The whole tool runs in your browser. The roster is kept in this browser's local storage so it is still there when you come back, and a share link carries the roster and the shuffle inside the link itself. Nothing is uploaded to a server.

Run a rec league? List it on SoccerMapd

Players looking for adult leagues, pickup games and youth clubs by city find the listings there. Listing is free.

Teams sorted? Schedule them next

The round robin generator turns a list of teams into a full schedule with dates, kickoff times and fields, and the standings calculator keeps the table once games are played.

More tools