Tournament bracket generator
Single-elimination bracket with standard seeding, click-to-advance, local save, and PNG export.
Runs in this tab. The file stays here.
Tournament bracket generator
Single-elimination only. Bracket size must be 4, 8, 16, … — if you enter e.g. 5 or 6 names, empty slots become "byes" (the paired team advances automatically). Byes go to higher seeds. Standard sports seeding (1 vs 8, 4 vs 5, …) so seeds 1 and 2 meet in the final.
Runs in your browser. Progress is saved on this device only. To send the bracket to someone else, use Download as image — there is no cloud sync.
About Tournament bracket generator
Build a single-elimination tournament bracket with standard sports seeding, click-to-advance winners, localStorage save, and PNG export — all offline.
Participant counts round up to the next power of 2; leftover slots become byes for top seeds. Seeding uses the recursive sports order (1 vs 8, 4 vs 5, …) so the top two seeds meet in the final, not round one.
Click a name to advance them. Progress saves in this browser under the bracket id in the address bar (so a refresh on the same device can resume). There is no cloud sync — Download as image is how you send the tree to someone else.
Reset bracket clears winners without re-entering names. Random draw uses crypto.getRandomValues. Double-elimination is not in this version.
How to use Tournament bracket generator
- 1Enter a title and participant names (one per line, top = seed 1).
- 2Generate, then click winners through each round.
- 3Download as image when you need to post, print, or send the bracket.
What it won't do
- Single-elimination only; no losers' bracket.
- Persistence is localStorage on this browser, not cross-device sync.
Common questions
Can someone else open my bracket URL?
Not usefully. The link only reloads a bracket that already exists in that browser's localStorage. Send them a PNG via Download as image instead.
How are byes assigned?
After rounding up to a power of 2, missing seeds become BYE slots, which pair with top seeds first via standard seeding.
Is double-elimination supported?
Not yet. Single-elimination only.
Related tools
Why this one doesn't upload your file
There is no server to upload to. This page is a static file, and the work happens in your browser using the same graphics and WebAssembly code that renders every other site you visit. Your file is read from disk into memory, processed, and handed back as a download. Once the page has loaded you can disconnect from the network entirely and it keeps working. The longer explanation