Tournament bracket app: the byes, formats and rules that make it run.
A tournament bracket app has one job on the night: tell a room full of players who is up, on which table, and what happens to the loser. Drawing the sheet is the easy part. The hard part is everything a pen and a poster board do badly: byes when 12 people show up instead of 16, a race length that changes by side, a player who is 11 minutes late, and a final that has to be played twice. That makes a bracket the smallest useful example of community and organisation apps: one shared record that everyone in the room needs to see at once, and that only a few people are allowed to change.
This page covers what any bracket app actually has to model: the formats, how byes work when the field is not a power of two, what a pool tournament adds on top, and where the off-the-shelf bracket apps stop and a custom one starts.
Jump to the bracket calculatorThe short version
A draw, a state machine, and a clock.
A bracket app stores entrants with seeds, generates a draw on the next power of two with the byes going to the top seeds, and then runs every match through a fixed set of states: pending, called, in progress, complete, forfeit. Double elimination adds a one-loss side and a possible second final. Pool adds tables, a race length per match and a lateness clock. Everything else, the live display, the notifications, the payouts, hangs off that one record.
The job
What a tournament bracket app actually has to do.
Whether it is a Friday 9-ball tournament, a club table tennis championship or an esports night, the same six steps happen in the same order. A bracket app earns its place by making each step a record instead of a shout across the room.
- 1
Close entries and seed
Lock the list, assign seeds by rating or ranking, and record who has paid and checked in. Late entries after the draw mean redrawing, so the cutoff is a real rule, not a suggestion.
- 2
Generate the draw
Pick the next power of two, place seeds 1 and 2 on the top and bottom lines, give the byes to the top seeds in order, and fill the rest at random. Mark byes as byes, not as wins.
- 3
Call matches and assign tables
When a table frees up, call the next match, stamp the called-at time, and post it where players can see it. The clock on a late player starts at that stamp.
- 4
Report and confirm results
One person enters the score, the other side or the director confirms it, and the winner and loser move to their next slots automatically. Keep the previous value if a score is corrected.
- 5
Handle forfeits and no-shows
A forfeit is a result with its own reason code. In double elimination it still sends the player to the one-loss side or out, and it must never leave a slot empty.
- 6
Close out
Final standings by round reached, payouts by finishing position if there are any, and a frozen copy of the bracket for the record.
The record
The fields a bracket app has to hold.
Most bracket apps store two things: names and who beat whom. Running a real event needs more, and every item below is one a director has had to answer out loud at some point:
- Tournament: format, draw size, seeding method, default race or match length, venue, number of tables or courts, start time, check-in cutoff
- Entrant: name, seed, club or team, handicap or rating if the format uses one, paid, checked in
- Match: a label like W2-3 or L1-4, round and side, the two slots (an entrant, a bye, or the winner of another match), table, called-at time, start and end time, score, winner, the race length for this match, status
- Advancement: where the winner goes, where the loser goes (only in double elimination), and what a forfeit does to both
- Result reporting: who submitted the score, who confirmed it, when, and the previous value if it was edited
- Display: the full bracket, a next-up list, and a per-table view for the people running the floor
Formats
Single, double, round robin: the formats compared.
The format decides how many matches you are signing up for and how many of them have to happen one after another. The table uses a field of 16 so the numbers are comparable; the arithmetic behind it is simple enough to check by hand. A single elimination field of n plays n minus 1 matches, a double elimination field plays 2n minus 2 or 2n minus 1, and a round robin plays n times n minus 1, divided by two.
| Format | Matches, 16 entrants | Sequential rounds | One loss means | Best for | The catch |
|---|---|---|---|---|---|
| Single elimination | 15 | 4 | You are out | Big fields, one evening, a winner by closing time | Half the field plays once |
| Double elimination | 30, or 31 with a reset | 8, or 9 with a reset | You drop to the one-loss side | Pool, esports, anywhere one bad match should not end the night | The one-loss side finishes long after the winners' side |
| Round robin | 120 | 15 | You lose points, not your place | Small groups, leagues, ranking every entrant | Needs tie-break rules before the first match |
| Swiss | 32 over 4 rounds | 4 | You are paired with other one-loss players | Large fields with a fixed number of rounds | Pairing rules and tie-breaks decide the podium |
| Groups, then knockout | 24 in groups, then 7 | 3 in groups, then 3 | Points in the group, out in the knockout | Everyone gets at least three matches | Group tie-breaks, then a second draw |
A common mix-up
Is a bracket maker app the same as a tournament bracket app?
No, and the search results blur them together. A tournament bracket maker app draws the sheet: you type names, it lays out the lines, and you print it or screenshot it. That is a document. A tournament bracket app runs the event: the sheet is generated from the entrant list, every match has a state, results move players to their next slot, and everyone in the room sees the same version.
The quickest tell is a forfeit. Ask what happens when a one-loss side player does not show. A bracket maker has no answer, because it never knew the match existed. A bracket app records a forfeit with a reason, advances the opponent, and eliminates the absent player, all without a director redrawing a line.
Byes
How byes work when you do not have 8, 16 or 32 entrants.
An elimination draw only works on a power of two, because every round has to halve cleanly down to one final. The United States Tennis Association writes this into its regulations: a main draw is made for 4, 8, 16, 32, 64, 128 or any higher power of two, and when there are not enough players to put one on each line, byes are added. Its own example is 27 players on a 32-line sheet, with five lines marked bye and the five players drawn opposite them moving straight into the second round.
Who gets those byes is a rule, not a favour. Under the standard method the byes go to the seeded players in descending order, seed 1 first; if there are more byes than seeds, the next ones go on the lines where extra seeds would have sat, and whatever is left is balanced across the halves and quarters of the draw so one section of the sheet does not get a free ride. Read USTA Regulation II.B.4 in Friend at Court 2026. A bracket app that hands out byes at random, or to whoever registered last, is ignoring a rule that tennis writes down, and it will be the first thing a seeded player complains about.
Worked example
The 12-player case.
Twelve entrants go onto a 16-line sheet, so there are four byes. Seeds 1 to 4 take them and sit out round one. The other eight players play four first-round matches, the four winners join the four seeds for a full round of eight, and the draw runs quarter-finals, semi-finals and a final: 11 matches over four rounds.
- Draw size 16, byes 4, first-round matches 4
- Round two has 8 players, so 4 matches; then 2; then the final
- 11 matches in total, which is 12 minus 1, as it always is
- A bye is recorded as a bye, not as a 1-0 win, or the stats lie
The other way round
Byes are play-in games seen from the bottom of the draw.
When a field is a little over a power of two instead of a little under, organisers usually describe the same arithmetic as a play-in round. The NCAA men's and women's basketball tournaments expand from 68 to 76 teams for the 2026-27 season, with 12 games played before the 64-team bracket, up from the four First Four games that trimmed 68 to 64. The 24 teams in those games are the 12 lowest-seeded automatic qualifiers and the 12 lowest-seeded at-large selections, and after the opening round the field of 64 runs as a plain single elimination.
Give a few top seeds a bye, or make a few bottom seeds play in: it is the same sheet. What matters for the app is that the rule is written down once and applied automatically. See how the 76-team format works
Try it
How big is this draw, and how long will it take?
Enter the number of entrants and pick a format. The draw size, byes, match count and sequential rounds are exact. The time is a floor: the longer of the rounds that have to happen one after another and the matches your tables can hold, before breaks and late players.
Format
Draw size
16
lines on the sheet
Byes
4
to seeds 1 to 4, 4 first-round matches
Matches
11
in total
Sequential rounds
4
one after another
Floor time on 4 tables at 30 min a match
About 2 h
Limited by rounds that cannot overlap. More tables will not make it faster.
The draw
Billiards
Pool tournament bracket app: what billiards adds.
Pool is where generic bracket apps get found out, because a pool tournament is rarely a plain single elimination. CueSports International, which runs the BCA Pool League championships, uses double elimination to the prize money rounds as stage one and a single elimination final bracket as stage two. Every match carries a label: a W or an L for the winners' or one-loss side, then the round number, then the match number, so W2-3 and L4-1 are unambiguous when someone calls them across a hall. Each match also has a "race to" field, the number of racks needed to win, which is left blank when a division is handicapped or uses group play.
Then there is the clock. CSI's regulations say there is no grace period to show up for a match, and the penalty scale runs from a warning inside the first five minutes to a one-rack penalty at five, a two-rack penalty at ten, and loss of match at 15 minutes late. It is the player's responsibility to know when and where they are scheduled to play, and schedules and table assignments are posted online. None of that works unless the app stores the moment a match was called. Read the CSI tournament regulations
Race length per match
Not per tournament. The race can differ between the winners' side and the one-loss side, and again in the final stage, so it is a field on the match, and the score sheet shows it.
Table assignment and a called-at time
A match is not live until it has a table and a timestamp. Lateness penalties count from that stamp, and the next-up list is built from it.
The cut from double to single
At the money rounds the survivors of both sides are re-drawn into a single elimination bracket. The app has to know when that cut happens and who carries over.
Handicaps and the hot seat
Handicapped divisions change the race per player, not per match. And the winners' side final, the hot seat match, sends its winner to wait while the one-loss side catches up.
Picking an approach
Off-the-shelf bracket apps vs. building your own.
For a standard format the free tools are genuinely good, and the prices below are what the vendor's pricing page showed on 20 September 2026. The row that fits you depends on one question: does your room run any rule the vendor's settings do not have a box for?
| Approach | Formats | Byes and seeding | Live for the room | Your venue's rules | Cost | Who maintains it |
|---|---|---|---|---|---|---|
| Printed sheet or PDF bracket maker | Whatever you can draw | By hand, and you place them | No | Anything, on paper | Free | You, with a pen |
| Free bracket site (Challonge Standard) | The standard ones | Yes | Yes | Only what the vendor's options cover | $0, ad-supported, up to 256 entrants per tournament (20 Sep 2026) | The vendor |
| Paid bracket platform (Challonge Premier) | The standard ones | Yes | Yes | Only what the vendor's options cover | $12 a month, or $6.99 a month billed yearly, up to 512 entrants (20 Sep 2026) | The vendor |
| League or venue management software | The league's formats | Yes | Yes | The league's rules, not always your room's | Varies by vendor | The vendor |
| Custom-built tournament bracket app | The ones you define | Yes | Yes | Yours: race per side, handicaps, penalties, the cut | A build platform subscription, plus your time | You |
Challonge plans and caps from challonge.com/pricing, as displayed on 20 September 2026. Prices change; check the page before you budget.
The bracket is rarely the whole app, which is the other reason venues outgrow the free tools. A pool hall wants the bracket next to its weekly league ladder and its table bookings. A club wants it inside the same app members already open for sign-ups and results, the same shape as a running club app, where a season-ending knockout is one screen among many. Once the bracket has to share a member list, a payment record and a notification channel with everything else, it stops being a standalone tool.
When to build your own
Building a tournament bracket app that fits your room.
The honest reason to build a bracket app instead of using a free one is never that the free one draws a worse bracket. It is that your event has rules the vendor never modelled: a race that changes by side, a handicap system, a lateness scale, a cut from double to single elimination, a payout table, or a member list that already lives somewhere else. Teams in that position end up running the bracket in one tool and the rules on a whiteboard, and that gap is what Newly is for: describe the tournament you actually run, the formats, the fields on a match, who is allowed to report a score and who has to confirm it, and it builds a real native app around your process rather than a vendor's.
Two practical notes before you start. Newly is $25 a month with no free plan, and the iOS build is uploaded to App Store Connect and reaches your testers through TestFlight, so an Apple Developer Program membership is part of the cost. The current version, v2, does not produce Android builds you can install on a phone or upload to Google Play, and a tournament room is always mixed, so plan for the bracket to also live on a screen everyone can see. That is a job for a scoreboard app on the venue TV, fed from the same record the director is updating.
The formats, the fields on a match and the advancement rules are worth writing down on paper first, because they are cheap to change before anything exists. Keeping every phone in the room on the same version of the bracket, and making sure only the director can move a player to the one-loss side, is a backend decision, and using Supabase as your app backend is the guide to read before you describe a single screen.
Sources
Where the specifics came from.
Four things on this page come from a primary source rather than general practice. The match counts and round counts are arithmetic you can check yourself.
FAQ
Tournament bracket apps, answered.
For a standard single elimination, double elimination or round robin event, a free bracket site does the job: Challonge's Standard plan is $0, ad-supported, and allows up to 256 participants per tournament as of 20 September 2026. The best app is the one whose rules match yours. If your event has a race length that changes by side, handicaps, table assignments, a lateness penalty scale or a cut from double to single elimination, a generic bracket app will make you track those parts on paper, and that is usually the point where a venue builds its own.
Write the rules first, then the bracket.
Byes to the top seeds, a state on every match, a clock that starts when a table is called. Get those down, then build the app around them in Newly.