Automatic first-round byes with real match counts
The bracket size is the smallest power of two that can hold the roster. Subtract the roster size from that bracket size to find the number of first-round byes. The rounds follow the bracket size, while a completed tournament with n entrants needs n minus one actual matches. Those numbers answer different planning questions. The page shows byes and confirmed matches separately, and exports include the structural bye nodes with explicit status. It does not insert later-round byes or count an automatic advance as a sporting result.
Seed protection that changes actual positions
The single elimination bracket maker uses a folded seed order to place declared seeds. For eight slots that order is one, eight, four, five, two, seven, three, six. With the first two seeds protected, they cannot meet before the final if both keep winning. With four protected seeds, they occupy separate quarters and cannot meet in the opening quarter paths before the semifinals. Undeclared entries remain random. Randomness uses the browser’s secure random source, but constrained draws are not a promise of uniform sampling across every conceivable bracket layout.
Corrections clear the affected advancement path
An organizer can replace a confirmed score. If the winner stays the same, downstream results remain valid and are retained. If the winner changes, every later score on that match’s route to the final is cleared, because its participants may have changed. Other branches keep their confirmed results. Clearing one match result has the same dependency rule. Clear all scores preserves the opening draw and byes; Generate another bracket creates a new draw and discards every score. These actions are intentionally different so a score correction does not accidentally reshuffle the event.