Home › Balanced Team Generator
Free · No sign-up · Runs in your browserBalanced Team Generator
Enter names with a skill rating, and get teams whose averages are as close as the generator can make them. It shows the gap for every draw, and it runs entirely in your browser.
Keep together / apart (optional)
Add rules and the generator searches for a split that meets every one. If that is impossible it tells you which rule failed.
Earlier draws on this page
Kept in this tab only until you reload.
How to make balanced teams
- Type or paste your players, one per line, with a rating after a comma:
Dana, 7. Use Load example to see the format. - Choose the number of teams, or the people per team.
- Leave Balance teams by skill rating ticked and press Generate teams.
- Check the balance line under the buttons. It shows the lowest and highest team average and the gap. Re-roll if you want a different, equally balanced arrangement.
What the algorithm does
Balancing people into teams of equal strength is a version of a well-known puzzle called the partition problem, and finding the single perfect answer for large groups is computationally hard. The generator uses a practical method instead. First, it shuffles the people and sorts them from strongest to weakest, so ties are broken randomly. It then deals each person to whichever team currently has the lowest total rating and still has room. Next it looks at every pair of people on different teams, swaps them if that makes the team averages closer together, and repeats until no swap helps. That whole process runs from 150 different random starting points, and the best result wins.
How well does it work?
We tested it by script rather than by eye. For two teams and groups of 6 to 12 people with random ratings from 1 to 10, we checked every possible split and compared. The generator matched the best possible gap in 60 out of 60 groups. For 24 people on four teams, the average gap between the strongest and weakest team average was about 0.1 rating point, compared with about 2.3 for a plain random split. Those numbers describe our test groups. Your own groups, especially small ones with a few very strong players, can have a smaller or larger unavoidable gap, which is why the page shows the gap for every draw.
Good ratings make good teams
The generator can only balance what you tell it. A few habits help:
- Use a short scale. Rating from 1 to 5 or 1 to 10 is easier to keep consistent than a scale of 100.
- Rate the skill that matters for the game. A strong runner is not always a strong goalkeeper.
- Get a second opinion. Two organisers averaging their ratings is fairer than one person guessing.
- Update after a few weeks. People improve, and last season's ratings go stale.
Balanced does not mean identical
Equal averages do not guarantee an equal game. A team of five middling players plays differently from a team of one star and four beginners, even if the averages match. If that matters in your sport, use captains, add keep-apart rules for your two or three best players, or run two lists, one for the strong players and one for the rest, and combine the teams.
Related tools
Prefer a plain random split? Use the random team generator. Once you have your teams, pick names with the team name generator. For common sports setups, see the five-a-side and kickball team generators.
- How does the balanced team generator work?
- It uses the rating you type after each name. It deals the highest-rated people first to the team with the lowest total, then tries swapping people between teams and keeps any swap that narrows the gap between team averages. It repeats from 150 random starting points and keeps the best result.
- Is it the best possible split?
- Not guaranteed. This is a heuristic, not an exhaustive search. In our tests it matched the best two-team split found by checking every combination in all 60 random groups of six to twelve people, but for large groups with many teams it may be a hair away from the perfect answer. The page shows the gap it achieved.
- What rating scale should I use?
- Any positive numbers work, as long as everyone uses the same scale. A 1 to 10 scale is simple, and a 1 to 3 scale (beginner, intermediate, advanced) works well for classes.
- What if I do not rate everyone?
- People without a rating are counted at the average of the people who have one. If nobody has a rating, the result is a plain even split.
- Will I get the same teams every time?
- No. Each draw starts from a new random seed, so re-rolling gives different teams that are all balanced. A share link keeps the seed, so it rebuilds the exact same teams for whoever opens it.
- Can I keep certain people together or apart?
- Yes. Open Keep together / apart, add your rules, and the balancing treats a broken rule as far worse than an uneven average, so it only breaks a rule if no valid split exists.
- Are the teams equal in size?
- They differ by at most one person. With uneven numbers the page compares team averages rather than totals, so a team with an extra person is not penalised.
- Can I paste from a spreadsheet?
- Yes. Paste two columns, name and rating, separated by a comma, semicolon or tab. A header row beginning Name is ignored.