Knockout Tournament Brackets
Tournament bracketFollow each round from left to right. On small screens, rounds appear below one another. Round of 32Match 1 Falcons– Tigers– Match 2 Eagles– Sharks– Match 3 Wolves– Bears– Match 4 Hawks– Lions– Match 5 Panthers– Rhinos– Match 6 Cobras– Foxes– Match 7 Ravens– Owls– Match 8 Bulls– Dragons– Match 9 Titans– Giants– Match 10 Knights– Royals– Match 11 Warriors– Rockets– Match 12 Comets– Stars– Match 13 Storm– Thunder– Match 14 Blaze– Phoenix– Match 15 Orcas– Dolphins– Match 16 Stallions– Mustangs– Round of 16Match 1 Winner of Round of 32 / 1– Winner of Round of 32 / 2– Match 2 Winner of Round of 32 / 3– Winner of Round of 32 / 4– Match 3 Winner of Round of 32 / 5– Winner of Round of 32 / 6– Match 4 Winner of Round of 32 / 7– Winner of Round of 32 / 8– Match 5 Winner of Round of 32 / 9– Winner of Round of 32 / 10– Match 6 Winner of Round of 32 / 11– Winner of Round of 32 / 12– Match 7 Winner of Round of 32 / 13– Winner of Round of 32 / 14– Match 8 Winner of Round of 32 / 15– Winner of Round of 32 / 16– QuarterfinalsMatch 1 Winner of Round of 16 / 1– Winner of Round of 16 / 2– Match 2 Winner of Round of 16 / 3– Winner of Round of 16 / 4– Match 3 Winner of Round of 16 / 5– Winner of Round of 16 / 6– Match 4 Winner of Round of 16 / 7– Winner of Round of 16 / 8– SemifinalsMatch 1 Winner of Quarterfinals / 1– Winner of Quarterfinals / 2– Match 2 Winner of Quarterfinals / 3– Winner of Quarterfinals / 4– FinalMatch 1 Winner of Semifinals / 1– Winner of Semifinals / 2– ChampionTo be decided |
Tournament bracketFollow each round from left to right. On small screens, rounds appear below one another. Round of 16Match 1 Falcons — Winner3 Tigers1 Match 2 Eagles — Winner3 Sharks1 Match 3 Wolves — Winner3 Bears1 Match 4 Hawks — Winner3 Lions1 Match 5 Panthers — Winner3 Rhinos1 Match 6 Cobras — Winner3 Foxes1 Match 7 Ravens — Winner3 Owls1 Match 8 Bulls — Winner3 Dragons1 QuarterfinalsMatch 1 Falcons — Winner3 Eagles1 Match 2 Wolves — Winner3 Hawks1 Match 3 Panthers — Winner3 Cobras1 Match 4 Ravens — Winner3 Bulls1 SemifinalsMatch 1 Falcons– Wolves– Match 2 Panthers– Ravens– FinalMatch 1 Winner of Semifinals / 1– Winner of Semifinals / 2– ChampionTo be decided |
Tournament bracketFollow each round from left to right. On small screens, rounds appear below one another. QuarterfinalsMatch 1 Falcons — Winner3 Tigers1 Match 2 Eagles — Winner3 Sharks1 Match 3 Wolves — Winner3 Bears1 Match 4 Hawks — Winner3 Lions1 SemifinalsMatch 1 Falcons — Winner3 Eagles1 Match 2 Wolves — Winner3 Hawks1 FinalMatch 1 Falcons2 Wolves — Winner2 4-5 on penalties ChampionWolves |
Tournament bracketFollow each round from left to right. On small screens, rounds appear below one another. SemifinalsMatch 1 Falcons — Winner3 Tigers1 Match 2 Eagles — Winner3 Sharks1 FinalMatch 1 Falcons — Winner3 Eagles1 ChampionFalcons |
Knockout Tournament Brackets
A single-elimination bracket for 4, 8, 16 or 32 teams or individual competitors. Winners move into the next round automatically. No JavaScript, external fonts or network requests are needed.
Install and try
Import rs_knockout.zip through Tabulizer's ruleset archive import. Select one of the four “Knockout Bracket” rulesets and use its sample data, or import the included sample data sources. The ZIP has the same root directories as the Sports Tables archive: rules, css, modify, language, data, datasources and docs.
The rulesets use zero header rows and the transparent theme. Keep Tabulizer's generic responsive table feature disabled: this modification generates its own responsive layout inside one table cell. Other row/column transformations, sorting, filtering, pagination and table searching are unsuitable after this modification.
Input: one row per match
The first row contains these fixed, untranslated column names. Column order may change. The first four columns are required; the rest are optional. Use consecutive 1-based PHP indexes when supplying arrays directly.
| Column | Meaning |
|---|---|
| round | 1 is the opening round, 2 the next, and so on. An eight-team tournament has three rounds. |
| match | Match number within that round, starting at 1. In the next round, match 1 receives winners of matches 1 and 2; match 2 receives winners of 3 and 4. |
| team1, team2 | Enter names only for round 1. Leave both empty in later rounds. Every opening-round slot needs a unique nonempty name. Use input order to set the draw; no seeding or random shuffle is performed. |
| score1, score2 | Both blank for unplayed matches, or both numeric. Zero is a valid score. The higher score advances automatically. Tied scores remain undecided. Decimals use a dot, with at most three decimal places and six integer digits. |
| winner | Blank, 1 or 2. An explicit winner overrides scores; use for penalties, lower-score sports, withdrawals or walkovers. It can be supplied without scores. Both competitors must be known. |
| note | Optional plain text such as a date, venue or penalty result. Write it in your audience's language. |
All opening matches are required. Later match rows may be omitted; empty cards and translated “Winner of …” labels are generated. Rows can appear in any order. Completely empty rows are ignored. After changing an earlier winner, clear any later results that are no longer valid: those scores belong to match positions, not to stored team identities.
Complete four-team example
round,match,team1,team2,score1,score2,winner,note 1,1,Falcons,Tigers,3,1,, 1,2,Eagles,Sharks,2,2,2,Sharks win on penalties 2,1,,,1,2,,Final
The final becomes Falcons versus Sharks, and Sharks are shown as champions. To start with an unplayed draw, supply only the first two rows and leave their scores, winner and note blank.
Options
Modification rule example: knockout$teams=8;title=Summer Cup. In PHP, call $function->modify($rows, 'teams=8;title=Summer Cup');. Tabulizer receives the modified array by reference.
teams is optional: the default is twice the number of opening-round matches. Allowed sizes are 4, 8, 16 and 32. title is optional and defaults to the translated bracket title. Semicolons separate options, so a custom title cannot contain a semicolon. Equals signs in a title are allowed.
Unknown options, malformed scores, duplicate matches or teams, out-of-range match numbers, missing opening teams, partial scores, or results whose participants are not yet known leave the entire input unchanged. The function never emits output. If you see the raw source table, check these conditions. Byes, double elimination, aggregate legs and third-place matches are outside this ruleset's format.
Translations
English and Greek are included in language/knockout.en.ini and language/knockout.el.ini. Tabulizer initializes the function and loads its language through the inherited text() helper, exactly as for Sports Tables. English is the fallback; the site language overrides it. To add a language, copy the English file to knockout.xx.ini using the language suffix expected by your installation.
Translate every value, preserving keys and %s placeholders. MATCH takes a match number. WINNER_OF takes a translated round name and a match number, in that order (use %2$s and %1$s if reordering is needed). All generated visible labels and accessible score/winner labels are translatable. Team names, custom titles and notes are author content and display exactly as supplied, escaped as plain text. CSV column names and the winner codes 1/2 stay unchanged across languages.
Layout and examples
Wide screens show adjacent rounds. Larger brackets scroll within their own panel when needed. At 640px viewport width (or 600px panel width in browsers with container queries), rounds stack vertically and long names wrap. Match numbers and winner-source labels preserve the progression on phones. The semantic headings and match articles support screen readers; winners have a text label as well as color. Printing uses a compact layout.
- 4 teams: finished competition.
- 8 teams: finished competition with a penalty shootout in the final.
- 16 teams: results through the quarterfinals; semifinals pending.
- 32 teams: complete unplayed draw.