Skip to main content
All Posts
explainer9 March 2026

How to Run a Dota 2 Tournament on Discord — Step by Step

A step-by-step guide to running a Dota 2 tournament entirely through Discord using the Rivals bot. From server setup to automated payouts — no spreadsheets required.

Rivals TeamBy Rivals Team

Step 1: Set Up Your Discord Server

Running a Dota 2 tournament on Discord starts with adding the Rivals bot to your server. The bot handles everything — registration, bracket management, lobby creation, stat tracking, and payouts. You focus on building the community; the bot handles the infrastructure.

  1. 1.Invite the Rivals bot to your Discord server from rivalsapp.com
  2. 2.Grant the bot permissions: Send Messages, Embed Links, Manage Channels, and Add Reactions
  3. 3.The bot automatically creates a #rivals-tournaments channel for event announcements
  4. 4.Run /rivals-setup to configure your server's default region and game settings

The bot needs 'Manage Channels' permission to create temporary voice and text channels for each match lobby. These channels are created when a match starts and cleaned up automatically after the match concludes.

Step 2: Create Your Tournament

Use the /tournament command to create a new event. The bot walks you through each setting with an interactive form — no need to remember syntax or parameters.

  • Tournament name and description — shown to players during registration
  • Format: Single elimination, double elimination, or round robin
  • Team size: 1v1, 2v2, 3v3, or 5v5
  • Entry fee: Set any amount ($5 minimum) or make it free
  • Organizer fee: 0-30% of the prize pool after the 10% platform fee
  • Start date and time with timezone — the bot handles countdown and reminders
  • Max teams: Cap registration to keep the event manageable

Once created, the bot posts an embed in your tournament channel with all details, a registration button, and a live count of registered teams. Players click the button, pay the entry fee (if applicable), and they're in. No Google Forms, no manual tracking.

Step 3: Run the Tournament

When the tournament starts, the Rivals bot takes over. It generates the bracket, creates Dota 2 lobbies for each match, and posts lobby passwords in private channels visible only to the competing teams. Players join the lobby, play their match, and results are recorded automatically from the Dota 2 API.

  1. 1.Bot opens check-in 30 minutes before start — players confirm attendance with a button click
  2. 2.No-shows are automatically replaced by waitlisted teams or removed from the bracket
  3. 3.Match lobbies are created with correct game settings (Captain's Mode, server region, etc.)
  4. 4.Lobby passwords are sent to team captains via private channel
  5. 5.Match results are pulled from the Dota 2 API — no manual score reporting needed
  6. 6.Bracket updates in real time as matches conclude

If there's a dispute — a disconnection, a wrong lobby setting, or a contested result — players can use /dispute to flag the match. You as the organizer review the evidence and make a ruling through the bot's dispute interface.

Step 4: Payouts and Withdrawal

When the tournament concludes, the bot automatically calculates and distributes prizes based on the payout structure you set during creation. Winners see their balance update immediately in the Rivals platform.

  • Prize distribution is automatic — winners, organizer, and platform fees are all calculated instantly
  • Winners use /withdraw in Discord to request a payout at any time
  • Funds are processed within 24 hours — no minimum withdrawal amount
  • Organizer earnings from the organizer fee are also available for immediate withdrawal
  • Transaction history is visible on the Rivals dashboard at rivalsapp.com

The entire flow — from tournament creation to final payout — happens inside Discord. Players never need to visit a separate website, fill out a form, or send money to a stranger. That's what makes Discord-native tournaments work: zero friction, maximum trust.

Ready to compete? Join a tournament