Tournament bracket shuffler
Turns a list of entrants into a randomly seeded first round. Handles the awkward case where your entrant count is not a power of two by assigning byes at random rather than to whoever signed up first.
Seed the bracket
One entrant per line — player, team or pair.Press Shuffle bracket and the first-round matchups appear here.
Random seeding versus ranked seeding
Professional tournaments seed by rank on purpose: the top two are placed at opposite ends so they cannot meet before the final, and the strongest players face the weakest first. It protects the spectacle, and it rewards the season's results.
Random seeding is for the situation where you have no reliable ranking or do not want one to matter — a casual office tournament, a game night, a first-ever event, a charity knockout where half the entrants have never played. It is also the honest option when you could rank people but any ranking you produced would be an opinion. Random removes the argument entirely: nobody can claim the draw was arranged, because it demonstrably was not.
The consequence to accept up front: the two best entrants might meet in round one, and one of them goes home immediately. That is not a flaw in the shuffle, it is what random means. If that outcome would ruin your event, you want ranked seeding, not this tool.
Why brackets need a power of two, and what a bye is
A single-elimination bracket halves the field every round: 16 becomes 8, then 4, then 2, then a winner. That only works cleanly when you start with a power of two — 2, 4, 8, 16, 32, 64. With ten entrants, some rounds cannot be filled.
The standard fix is a bye: an entrant with no first-round opponent who advances automatically to round two. Ten entrants go into a 16-slot bracket, which means six byes; eleven entrants into 16 means five. The tool tells you the bracket size and how many byes it created, so you are not counting slots yourself.
The important detail is who gets them. In a ranked tournament, byes go to the top seeds as a reward. In a random tournament they must be assigned randomly, because a bye is a genuine advantage — one fewer match to lose, and fresher legs. Handing byes to whoever registered first, or to the organiser's friends, is the most common way a casual bracket quietly stops being fair. Here the byes are shuffled along with everything else.
Running the draw well
- Shuffle once, in public. Do it with entrants watching or on stream. A bracket that appears fully formed invites the question of how many times you pressed the button.
- Screenshot the result immediately. Nothing is stored here, and a bracket you cannot reproduce is a bracket you cannot defend halfway through the event.
- Finalise the entrant list first. Adding one person changes the bracket size and every matchup. Late entries either wait for the next event or go on a substitute list.
- Write down the bye rule beforehand. One line is enough: “byes assigned at random”. Deciding afterwards always looks worse than it is.
Does it show all the rounds?
Only the first round, and that is deliberate. Later rounds depend on who actually wins, so a full bracket diagram would be mostly empty boxes. Once round one is decided, feed the winners back in as a new list to seed round two — or just pair them off in order, since the randomness has already done its work.
Can I keep two entrants apart in round one?
No, for the same reason the team generator does not honour constraints: as soon as the draw respects a rule about who plays whom, it stops being random and becomes an arrangement. If teammates or siblings genuinely must not meet early, you need a seeded bracket with declared groups, and you should publish those groups before drawing.
What about double elimination or round robin?
Not supported. For round robin you do not need a draw at all — everyone plays everyone, and only the order of fixtures is random, which the list randomizer handles. For double elimination, seed the winners' bracket here and build the losers' side from the results.