League Scheduler

Commander League Scheduler

Click the "Generate" button to get a new solution.
Customize group size, number of groups, and number of rounds with the sliders.
Solutions with more rounds and larger groups take longer to compute.
The maximum suggested number of rounds is in parentheses after the rounds slider.
Number of groups 0
People per group 0
Number of rounds 0
Player Names (X of Y) Too Many Players!
Player names can be provided for convenience.
If player names are omitted, players will be numbered.
Editing player names will update the current solution in real-time; you don't need to click "Generate."

Privacy: Names are never sent to our servers. All processing happens on your own computer.

If two players have the same name, additional constraints (below) will apply to both of them.

Tip: To produce mostly-even groups with an uneven number of players, create players named [Empty] to round out your roster, and add an [Empty],[Empty] constraint in the next box.
Never allow these pairs
Players grouped in this box are never grouped by the solver unless absolutely necessary.
Comma-separate names within a group.
Put groups on separate lines.
Prefer splitting these groups
Similar to above, but lower priority. The solver avoids grouping players if they're already grouped here, but reducing repeat encounters can take priority in later rounds.
Tip: You can encourage the solver to gender-balance groups by listing all players of one gender in a group here.
The conflict score is a representation of how far the solution is from perfect - lower is better.
The Download CSV button provides a pivot view of the solution that makes it easier to see the sequence of groups for a given player.

Close Help
Number of generations
Number of mutations
Number of descendants

The goal of this app is to schedule g x p players into g groups of size p for w weeks such that no two players meet more than once.

Help