Learn

What is a round-robin league?

A round-robin league is a competition format where every team plays every other team the same number of times — no knockout bracket, every game counts, and the final standings reflect overall performance across the full schedule. It is the format used by the Premier League, La Liga, the Champions League group stage, and most rec leagues.

Michael Carter

By Michael Carter

Senior Sports Journalist & Match Analyst · Updated May 31, 2026

ABCD
4 teams, 6 matches — one line per matchup. Every pair plays exactly once.

The basic idea

In a single round-robin with N teams, each pair of teams plays exactly once. That gives you N × (N − 1) ÷ 2 total matches. For 4 teams that's 6 (the diagram above). For 8 teams it's 28; for 12 teams, 66; for 20 teams, 190. Every team plays N − 1 matches over N − 1 rounds (assuming an even count).

ABCD
AA vs BA vs CA vs D
B·B vs CB vs D
C··C vs D
D···
The matchup matrix for 4 teams. The diagonal (a team vs itself) is empty; the lower triangle is a mirror, so only the shaded upper triangle counts — six matches.

A worked example

Say you have four teams: A, B, C, and D. Here is the full single round-robin schedule, ordered by round:

RoundMatch 1Match 2
1A vs DB vs C
2A vs CD vs B
3A vs BC vs D

Three rounds, six matches, every team has played every other team exactly once. The winner is whoever leads the standings table after all six matches are played. Here is exactly what the generator prints when you feed it those four teams:

4-team round-robin schedule printed by the generator
The same 4-team round-robin as the generator exports it — three rounds, two matches per round.

Single vs double round-robin

A double round-robindoubles everything: every pair plays twice, almost always once at each team's home venue. That is the format used by the English Premier League, La Liga, the UEFA Champions League group stage, and most domestic football leagues worldwide. With N teams you get N × (N − 1) matches over 2(N − 1) rounds.

Odd number of teams

With an odd number of teams, perfect pairing isn't possible in a single round. One team sits out each round. That is the rotating bye. The bye moves through every team in the cycle so each team gets exactly one rest. A 5-team round-robin runs over 5 rounds with 2 matches and one bye per round:

Round 1ABCDEA byes
Round 2ABCDEB byes
Round 3ABCDEC byes
Round 4ABCDED byes
Round 5ABCDEE byes
5 teams, 5 rounds — one team byes each round, and the bye cycles cleanly so every team rests exactly once.

Round-robin vs single-elimination

A single-elimination bracket finishes faster: log₂(N) rounds instead of N − 1. But one bad day knocks a team out for good. Round-robin is fairer because performance averages over many matches; it just takes longer and is harder to fit into a single weekend. Many tournaments run a round-robin group stage and then a single-elimination knockout — the World Cup, the Champions League, most pickleball tournaments.

Standings and tiebreakers

The classic round-robin points system is 3 for a win, 1 for a draw, 0 for a loss. When teams are level on points, common tiebreakers are:

  • Goal difference (or points difference) across all matches
  • Goals scored (or points scored)
  • Head-to-head record between the tied teams
  • Wins (some leagues), away goals (some cups)

My Bracket App's standings sort by points → goal difference → goals for → name out of the box, and you can change the points-per-win in the editor.

When to use a round-robin

  • You have enough time for everyone to play everyone
  • You want the final standings to reflect real form, not luck
  • You want every team to get a full season's worth of games
  • You're running a small group stage that feeds into a knockout

What it looks like at scale

The same shape scales straight up. Here is the generator at 8 teams — 7 rounds, 28 matches:

8-team round-robin schedule example
8-team single round-robin — same matrix expanded, same math.

Build your round-robin in My Bracket App

Add your teams, pick single or double round-robin, set a start date, generate. Edit scores as the season runs. The standings update automatically.