How to Set Up a Discord Server for Esports Teams and Clans: Channels, Roles & Recruitment
A clan or esports team server is built differently from a general gaming community: the internal section is private to the roster, and the structure depends on schedules. Channel categories, roles, application workflow, practice reminders, and moderation.
This article was translated automatically from the Turkish original. Read the Turkish original

In this article
- Divide the server: showcase and roster area
- Roles: a path from visitor to player
- Recruitment: application, tryouts, joining the roster
- Practice and match schedule: reminders or events?
- Searching for scrims: open channel to the outside, closed door to the inside
- VODs, clips, and voice channels
- Community order: rules, moderation, and leaks
- Manager account risk: privilege protection and backups
- Frequently asked questions
At a glance
Set up a clan or esports team server by dividing it into two areas: a public storefront visible to everyone (rules, announcements, applications, scrim searching) and a private internal area open only to the roster (team chat, strategy, match schedule, VODs, voice channels). Roles act as the gatekeepers: Visitor, Applicant, Player, Substitute, Coach, and Manager. Keep recruitment organized with application forms, and maintain practice/match schedules using reminders and events.
A team server differs from a large gaming community in three ways: the roster is limited, strategy info must not leak to opponents, and time is the backbone of the structure (practices, scrims, matches). You build the channel and role skeleton manually in Discord; VeyroBot doesn't build this layout for you, but handles tasks on top of it: assigning roles, collecting applications, sending reminders, and moderation. For a general gaming community, check our gaming community guide, and for basic channel and permission structures, see our server setup guide. Examples are based on 5v5 competitive games like Valorant or CS2, but the logic applies to other games as well.
Divide the server: showcase and roster area
The first decision is who sees what. The showcase area is visible to anyone joining the server. The roster area is open only to specific role holders: disable View Channel permission for @everyone in these categories, enable it for relevant roles, and assign permissions per category rather than per channel.
| Category | Example channels | Who sees it |
|---|---|---|
| Information | rules, announcements, roster | Everyone reads, only management posts |
| Showcase | applications, find-scrim | Everyone |
| Applicant | applicant-chat, Tryout Room | Applicant, Coach, Manager |
| Team | team-chat, match-schedule, practice-notes | Player, Substitute, Coach, Manager |
| Strategy | strategy, map-plans, opponent-notes | Player, Coach, Manager |
| VOD & Clips | vod-review, clips | Roster |
| Voice | Team Room, Coach Room, Scrim Room, Public Room | Varies by room |
| Management | management-chat, app-review, mod-log | Coach and Manager |
Restricting the strategy category to only players and coaches may seem like a small detail, but it's the most critical permission decision. A player from a rival team could fill out an application form and become a candidate. Applicants and visitors must not see tactical notes.
This topic in VeyroBot:Discord Application Form →
Roles: a path from visitor to player
In a team server, roles act as both doors and career steps. Six roles are sufficient for most rosters:
| Role | What they see | How it's assigned |
|---|---|---|
| Visitor | Showcase area only | Auto-role, upon joining |
| Applicant | Showcase, applicant chat, tryout room | When application is accepted |
| Player | Entire roster area | Manually after tryouts |
| Substitute | Roster area, as substitute in schedule | Manually |
| Coach | Roster area, VOD & strategy management | Manually |
| Manager | Roster area and management channels | Manually |
Set the Visitor role as an auto-role using /setautorole; the Applicant role is granted automatically when an application form is accepted. Authorized staff assign the Player, Substitute, and Coach roles manually (via the /role command or the member menu). Pay attention to two points. The bot's role must be positioned above the roles it gives out. Furthermore, even if the "Manager" role is named Manager, do not grant it Discord's Administrator permission; grant each role only the permissions required for its job. For details, see our role and permission reference. VeyroBot itself does not request Administrator permission; we explained why in our bot permissions article.
Let members pick up notification roles themselves for things like scrim announcements or match streams: set up a role panel with buttons or a select menu using /reactionrole. Those who want notifications get pinged, those who don't won't.
Recruitment: application, tryouts, joining the roster
The recruitment workflow consists of five steps:
- Form. Create a form under the Application Forms tab on the dashboard: in-game name and profile link, role played, rank, weekly available days and hours, time zone, previous teams, microphone status. You can ask up to 15 questions; since Discord modals accept 5 questions at a time, the form is split into 5-question pages. Eight to ten questions are usually enough.
- Review. Applications land in the app-review channel with Accept and Reject buttons. Select the Coach role as the review role; the server owner and anyone with Manage Server permission can also make decisions.
- Result. Upon acceptance, the form assigns the Applicant role and sends the result to the user via DM. You can include a reason when rejecting. A user can only have one pending application per form; you can choose the cooldown period for re-applying after a rejection (immediately, 1, 7, 30 days, or never).
- Tryouts. The applicant plays in a few scrims. Outline criteria beforehand: how many scrims, what skills to evaluate. Add observations to the member's case history using /note; notes are not considered punishments and are visible only to staff.
- Decision. Assign the Player role and remove the Applicant role.
The ticket system is not an application form; it's a separate module. Tickets are useful when one-on-one communication is required: applicant interviews, scrim requests from external teams, or appealing a decision. You can define up to 5 ticket types, each with its own category and staff role; for example, "Interview" tickets can go to the Coach, while "Scrim Request" tickets go to the Manager. We explained the step-by-step setup in our ticket guide.
Practice and match schedule: reminders or events?
Time is the core element of a team server. Three tools serve three distinct functions:
- Reminders: recurring weekly practice. In the Reminders tab on the dashboard, select a specific time of day or regular interval, and check which days it runs (e.g., Tuesday and Thursday at 21:00). The message can be plain text or an embed; scheduling works according to the server's time zone.
- Events: one-time scrims and matches. When you create an event, VeyroBot creates an entry in Discord's Events tab and posts a card in the channel with Interested, Maybe, and Not Interested buttons. You can see whether the roster is full on the card before the match. A reminder is sent to the channel between 10 minutes and 1 day before the event, tagging users who indicated they'll attend. The time is entered in your selected time zone, but each member sees their local time on the card; this detail makes things easier if players are in different time zones.
- Scheduled messages: recurring rule and format reminders. Sent at fixed intervals or after a specific number of messages accumulate in a channel.
Reminders and events are managed exclusively from the web dashboard; they do not have slash commands. How many reminders and scheduled messages you can set depends on your plan; current limits are listed on the Premium page. To keep the weekly schedule and roster in a single message, send an embed to the match-schedule channel using the Message Builder; since messages sent from this tab can be edited later, the schedule can be updated every week without creating new posts.
Searching for scrims: open channel to the outside, closed door to the inside
When searching for scrims (practice matches), other teams need to be able to contact you, but this must happen without giving access to internal areas.
- Place the find-scrim channel in the showcase category and allow Visitors to post.
- Keep a template at the bottom of the channel: team name, rank range, date and time, map or format, contact info. The message configured with /sticky set is deleted and re-sent at the bottom every time a new message arrives in the channel. Because of this, it might create noise in highly active channels; it is ideal for moderately active channels like find-scrim.
- Turn on AutoMod's invite filter and add the find-scrim channel to the allowed channels list for invites. Opposing teams can share their server invite here, but not in other channels.
- Move date and voice coordination into a ticket; no one else sees the conversation.
- If a shared voice channel with opponents is needed, grant the opposing player a temporary Guest role with permissions only to join the Scrim Room, then revoke the role with /role once the scrim is over.
VODs, clips, and voice channels
The most organized way to review match recordings (VODs) is to create a separate post for each match. If the Community feature is enabled in Server Settings, set up a Forum channel for vod-review: make each match a post, use tags for map, opponent, and result, and keep discussions tied to that match. If Community features are disabled, creating a thread for each match serves the same purpose. Short clips should go to a separate channel.
Share long recordings as links rather than file uploads; due to Discord's file size limits, long recordings often cannot be uploaded anyway. If you have AutoMod's link filter enabled, add the video platform you use to the allowed domains list, or mark the VOD channel as an allowed channel for links. AutoMod uses the parent channel's settings for forum posts; meaning channel permissions granted to the VOD forum also apply to its posts.
On the voice side, keep official channels fixed: Team Room, Coach Room, Scrim Room; set user limits according to roster size and restrict access by role. For casual chat and LFG, configure a "Create Room" channel using /jtc-setup: a temporary room is created when members join, and it gets deleted when the last person leaves.
Community order: rules, moderation, and leaks
Team server rules should be concise and team-specific: tilting and attacking teammates is prohibited, members missing scrims must notify in advance, strategy channel info must not leave the server, and poaching players from other teams within the server is not allowed.
- AutoMod: The invite filter catches Discord invite links posted in the server, protecting against poaching messages from other clans; spam and mass mention filters keep chat clean. You choose the action (delete message, warn, timeout) per filter. For setup, check our AutoMod guide.
- Graduated sanctions: Warnings accumulate in a single counter; once a member reaches the threshold set on the dashboard, your designated punishment is automatically applied. Manually issued /warn commands trigger the same scale. For an immediate cooldown, /timeout is sufficient.
- Logs: Every moderation action is recorded in the mod-log channel with a case number. When a punishment is disputed, logs keep discussions short and clear.
- Leaks: Revoke a departing player's roles on the same day. Since channel permissions are tied to roles, removing the role instantly blocks access to internal areas.
Manager account risk: privilege protection and backups
In clan servers, authority is concentrated in a few individuals. Mass channel deletions due to a dispute or a compromised staff account are realistic risks. Two measures will safeguard your server.
First is Staff Protection. If a staff member deletes more channels/roles or bans more members than the limit in a short time frame, their elevated permission roles are stripped and an alert is posted in mod-log; the server owner is exempt. Deleted channels and roles can be re-created with permissions from the dashboard, but deleted messages cannot be restored. Second is server backups: you can back up roles, categories, channels, and channel permissions manually or automatically every day. Restoring only adds missing elements; messages and member roles are not backed up. Keeping permission skeletons backed up saves you from re-entering all category permissions manually during a rebuild. Backups are initiated by the server owner or members with Administrator permissions; do not distribute this permission widely, keeping it to the owner is sufficient.
Keep the server owner account strictly in the hands of one person and protect it with two-factor authentication; do not perform daily tasks using the owner account. For a general security check, take a look at our server security audit checklist.
Frequently asked questions
Should a clan Discord server be public?
Both: the showcase area (rules, announcements, applications, scrim searching) should be public, while the roster area should depend on roles. This way, new players can find you while strategic info remains private.
How to set up practice reminders on Discord?
For recurring weekly practices, choose the day and time under the Reminders tab in the VeyroBot dashboard. For one-time scrims or matches, create an event in the Events tab; attendance buttons and reminders sent prior to the event show whether the roster is full.
Which channels should I show to applicant players?
The showcase area, an applicant chat, and a tryout room are enough. Reserve strategy, opponent notes, and VOD channels for the Player role; applicants shouldn't see tactical details until they make the roster.
Is one server enough for multiple games?
Usually, yes. Share a common showcase and announcements section, and create a separate Player role and category for each roster. If roles and categories start getting cluttered, consider moving that roster to a dedicated server.
The VeyroBot modules in this article are configured via the dashboard or slash commands. For the full list of commands, visit our commands page; for module details, see the documentation; and for plan details, check the Premium page.
Last updated: September 22, 2026. VeyroBot descriptions are based on documentation module details and dashboard behavior; Discord interface names reflect standard UI terms and Discord may update them over time.
For these topics in VeyroBot
Discord Application Form
Collect staff and team applications inside Discord: forms of up to 15 questions, a review channel with Accept/Reject buttons, a role on accept and a DM.
Discord Scheduled Messages and Reminders
Post rule reminders on a set interval or as chat picks up, and event announcements on the days and times you choose, automatically in any text channel.
Discord Anti-Nuke Bot
If staff delete many channels or roles fast, VeyroBot removes their dangerous roles and alerts you with evidence; you rebuild deleted items in the dashboard.