Skip to content
AZ Tools

Round-Robin Pair Scheduler (Tournament & 1-on-1 Rotation)

Generate a full round-robin pairing schedule where every participant meets every other participant exactly once — using the classic circle method.

Order:
View:
Participants
6
Rounds
5
Total pairings
15
Round 1
  • Match 1Eve↔Dave
  • Match 2Bob↔Alice
  • Match 3Frank↔Carol
Round 2
  • Match 1Eve↔Alice
  • Match 2Dave↔Carol
  • Match 3Bob↔Frank
Round 3
  • Match 1Eve↔Carol
  • Match 2Alice↔Frank
  • Match 3Dave↔Bob
Round 4
  • Match 1Eve↔Frank
  • Match 2Carol↔Bob
  • Match 3Alice↔Dave
Round 5
  • Match 1Eve↔Bob
  • Match 2Frank↔Dave
  • Match 3Carol↔Alice
How the schedule is built

Classic circle method: fix one participant, rotate the rest clockwise around them, and pair across the diameter. N (even) participants produce N-1 rounds of N/2 matches, covering all C(N,2) unique pairs exactly once. Computation is local — no participant names leave your browser.

How to use

  1. Paste participant names — one per line, or comma-separated.
  2. Choose alphabetical order (reproducible) or random (seeded — re-roll for new layouts).
  3. Toggle between 'by round' and 'by person' views.
  4. Odd participant counts get a (Bye) slot — that person rests for one round.
  5. Use 'Copy as Markdown' to drop the full schedule into a doc or PR description.

About this tool

Show

When you have N people who all need to pair up across multiple rounds — peer code review buddies, debate tournament matches, sparring partners, 1-on-1 mentoring rotations, hackathon icebreakers, board-game ladders — the question is the same: how do you guarantee everyone meets everyone exactly once, with the fewest rounds possible? The answer is the round-robin schedule, and the classic construction is the circle method: fix one participant, rotate the rest around them, and read off pairs across a diameter. For N participants (N even), this produces N-1 rounds of N/2 simultaneous pairings each, covering all N(N-1)/2 unique pairs exactly once. When N is odd, a phantom Bye slot is added so someone rests each round. This tool runs the construction directly: paste your names, get a complete round-by-round table and a per-person view showing who each participant meets in each round. Initial order can be alphabetical (reproducible) or randomized with a seed (re-roll to see different layouts). Nothing leaves your browser.

Frequently asked questions

What's the circle method?

Lay out N participants around a circle. Fix participant 1 in place. For each round, draw a chord across the diameter — pairs are (1, N), (2, N-1), (3, N-2), and so on. Then rotate everyone except participant 1 clockwise by one position and repeat. After N-1 rounds, every pair has met exactly once. It's the standard construction taught in tournament scheduling and graph theory (decomposition of the complete graph Kn into perfect matchings).

How are odd numbers handled?

When N is odd, a perfect matching is impossible — someone has to sit out each round. The tool adds a phantom '(Bye)' slot to make the count even, then runs the standard circle method. Across N rounds, every real participant gets exactly one bye. The bye rotates fairly — no one sits out twice while another sits out zero times.

How is this different from your Group Maker / Secret Santa tools?

Group Maker splits N people into K disjoint groups in one shot — useful for breakout sessions or team picks. Secret Santa builds a single cyclic gift-giving assignment (A→B→C→A). The round-robin scheduler builds the entire matchup graph over time — N-1 rounds, each round a perfect matching, covering all C(N,2) unordered pairs exactly once. It's the right tool whenever you want a rotation, not a one-shot assignment.

Can I reproduce a specific schedule later?

Yes. The randomized order is seeded — the seed is stored in the URL-shareable state, and re-loading the tool reproduces the same layout. If you want fully deterministic output, switch to alphabetical order; same input always yields the same schedule.

Related tools