Make random teams
make_teamsRead-only
Use this when the user wants a random team generator: split a list of names into random teams or groups by number of teams or by team size, for a class, a game, a workshop, or a sports session. Team sizes differ by at most 1. Optional rules keep certain pairs apart or groups together. Returns each team's members. Does not balance by skill or rating (assignment is random), and is not for scheduling or seating charts. For fun, classroom, and team decisions only; not for lotteries, gambling, or prize draws that have legal requirements.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| names | Yes | Everyone to split into teams, 2 to 200 names, e.g. ["Ana", "Ben", "Chloe", "Dev"]. | |
| team_size | No | Target people per team, e.g. 4. Makes as many teams as needed so no team is larger than this; sizes differ by at most 1. | |
| keep_apart | No | Optional pairs who must be on different teams, e.g. [["Ana", "Ben"], ["Chloe", "Dev"]]. | |
| team_count | No | Number of teams to make, a whole number from 2 up to the number of names, e.g. 3. Use this or team_size. Default 2. | |
| team_names | No | Optional team names in order, e.g. ["Red", "Blue", "Green"]. Missing names default to Team 1, Team 2, ... | |
| keep_together | No | Optional groups who must be on the same team, e.g. [["Eli", "Fay"]]. |
Output Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| sizes | Yes | ||
| teams | Yes | ||
| people | Yes | ||
| keep_apart | Yes | ||
| team_count | Yes | ||
| keep_together | Yes | ||
| renamed_duplicates | Yes |