Caution
3.0 is in beta. The 3.0 betas change often. The stable line is 2.4.
You create the tournament. Auto Tournament starts the servers, loads each match, runs the map veto in the browser, follows the score live and moves the bracket on when a match ends. Games come in as modules: the CS2 module is included and drives servers running Ready Up (or the older MatchZy Enhanced). Formerly MatchZy Auto Tournament.
- Single and double elimination, Swiss, round robin and shuffle tournaments
- Map veto for Bo1, Bo3 and Bo5 in the browser
- Servers started, stopped and created on your machines through CS2 Server Manager
- Live scores and server status
- Player ratings (OpenSkill) and leaderboards
- Demo recording and download
- Sign-in with Steam, Discord, Google, GitHub or Twitch, set up in the admin panel
- Public team pages with connect info, no login needed
- HTTP API with API tokens, webhooks and an OpenAPI spec, plus an example Discord bot
- Game packs: games without a server integration, with results reported by the captains
- Simulation mode for testing a tournament without players
- Matchmaking (in progress, 3.1)
You need Docker with Docker Compose.
-
Get the compose file and the example config:
git clone https://github.com/Auto-Tournament/auto-tournament.git cd auto-tournament cp example.env .env -
Set
SESSION_SECRET,SERVER_TOKENandFRONTEND_BASE_URLin.env. -
Start it:
docker compose --env-file .env -f docker/docker-compose.yml up -d
-
Read the one-time setup code from the log (
docker logs auto-tournament), open/setup, enter it and create the admin account.
Then set up sign-in under Settings → Sign-in, and link a machine running CS2 Server Manager under Servers. Full steps: Getting started.
Back up the database, then pull and restart. Migrations run on startup.
docker compose --env-file .env -f docker/docker-compose.yml exec -T postgres pg_dump -U postgres auto_tournament > "backup-$(date +%F).sql"
docker compose --env-file .env -f docker/docker-compose.yml pull
docker compose --env-file .env -f docker/docker-compose.yml up -dMore in Updating.
Full docs at docs.autotournament.gg.
- API reference and OpenAPI spec, generated from the code
- Webhooks
- Example Discord bot
- Translating
See the contributing guide. Bug reports, fixes, translations and docs changes are all welcome.
Auto Tournament is built by one person. If your organisation runs events with it, a sponsorship pays for development, test servers and hosting: GitHub Sponsors or Ko-fi.
- brackets-manager.js and brackets-viewer.js: the bracket engine and its views
- MatchZy by shobhit-pathak: the plugin MatchZy Enhanced was forked from
Auto Tournament is licensed under the PolyForm Noncommercial License 1.0.0. Copyright (c) 2025-2026 Sivert Gullberg Hansen. Free for non-commercial use; commercial use needs a license, see pricing and LICENSING.md.
