Knockouts
Purpose
A knockout is a single-elimination competition: lose once, you're out. The nooQ League app models this as a bracket with named rounds (Round 1, Quarter-finals, Semi-finals, Final), automatic byes for odd team counts, and a draw configuration that pins teams to bracket positions.
When to use this
- Cup competitions (e.g. county cup, club championship).
- Single-elimination tournaments inside a larger competition.
- Any format where the loser is eliminated.
Anatomy of a knockout
| Component | What it is | |---|---| | Rounds | Named stages, e.g. R1, R2, Quarters, Semis, Final. Each round has a date range, a number of matches, and a "match width" (typically 1 match per pair). | | Bracket positions | Slots in the bracket — Match 1 home/away, Match 2 home/away, etc. The draw assigns teams to slots. | | Byes | Walkovers for odd team counts. Pre-determined; assigned to specific positions in R1 so the bracket fills cleanly. | | Progression | Winner of Match N in Round X advances to a specific position in Round X+1. The league app draws SVG connector lines showing this. | | Seedings (optional) | Order in which teams enter the draw — e.g. top seed vs lowest seed in R1. |
Where the data lives
The draw config is JSON stored in Redis under org:{orgName}:competitions:{compId}:seasons:{seasonId}:knockout_draw_config. You don't edit this directly — the league app's bracket editor manages it.
Common tasks
Set up a new knockout season
- Match Admin → competition → Seasons > New → choose Knockout.
- Add the teams you'll draw from.
- Configure rounds: set the number of rounds (e.g. 4 rounds for 16 teams: R1 → Quarters → Semis → Final), date ranges, and bye count if the team total isn't a power of two.
- Draw: either auto-draw (random) or seeded draw (you pin top seeds, the rest are random). See "Drawing the bracket" below.
- Activate the season.
Drawing the bracket
- Open the season → Knockout > Draw.
- Assign teams to positions:
- Auto-draw — system randomises.
- Seeded — you pin seeds 1–N to fixed positions, system randomises the rest.
- Manual — drag each team to a slot yourself.
- Byes are placed first; the system flags which positions are byes so you don't put a real team there.
- Confirm draw. The bracket is locked unless you explicitly re-draw.
Entering results in a knockout
- Same as a league fixture: open the match → Submit Result. See Match reports.
- The winner is detected from the score and automatically advances to the next round's position. No manual progression.
Recovering from a wrong result
- Open the played match → Edit Result. The change cascades: the advancement updates, the next-round fixture flips to the corrected winner. If the next-round match has already been played, it gets flagged for review.
Re-drawing mid-season
- Don't. If you must (e.g. wrong teams entered), close the season, open a new one, redo the draw. Re-drawing a live knockout corrupts already-played matches.
Gotchas
- The Home Team-ID corruption bug — historically the bracket has had two parallel team-id fields (
Home Team-IDlegacy vsHome-Team-IDnew). If a dropdown shows mismatched teams or the wrong advancement, it's that. Ask nooQ Support to sweep identity records. - Byes appear as "BYE" in the bracket — they're not a team you can edit. The position is consumed; the bye's "opponent" advances automatically.
- Match progression is by bracket position, not by team identity. Renaming a team mid-tournament is fine. Re-seating a team to a different bracket position is destructive.
- Knockouts and leagues can co-exist — a club cup (knockout) and a league season can both be Active for the same teams.
Related
Still need help? Open the chat assistant in the corner, or send us a message.
