Back when I was pulling together my first online campaign I touched briefly on Discord in Thoughts on a New Campaign. I described opening a Discord server and sorting out roles and channels without really going into any detail. This is me correcting that. If you have never used Discord for gaming before, or if you have been muddling through with a single general channel, I hope this gives you a better map of the territory.
What Discord Is (and Is Not)
Discord began as a voice and chat platform aimed squarely at gamers and has grown into something closer to a community platform. For our purposes it is free to use, runs on every device, handles text, voice, and video, and lets you build a structured collection of channels and assign permissions with real granularity. That last point is what makes it especially useful for running a tabletop community rather than just a group chat.
A Discord server is your community space. Think of it as a virtual clubhouse. Inside it you create channels, which are individual rooms for specific purposes, and you assign roles to members that determine which rooms they can enter and what they can do there.
The Basic Layer: General Social Channels
Every gaming Discord I have run or participated in has a core of general channels. These are the spaces where people drop in for a chat unrelated to any particular game. They fill the same function as arriving at the table thirty minutes early and talking about films, work, or whatever else is on your mind. For my campaign server I keep this layer simple.
- #general — the front room. Everyone who joins lands here. Conversation is anything and everything, gaming or otherwise.
- #introductions — somewhere for new members to say hello. Useful once your server grows beyond close friends.
- #off-topic — a safety valve for discussions that would otherwise clutter #general. Memes, football, the price of miniatures, whatever.
The temptation is to create dozens of general channels. In my experience fewer is better until you have enough members to actually fill them. An empty channel is a depressing thing.
The Notice Board: Announcement Channels
If #general is the front room, an announcement channel is the noticeboard pinned next to the door. I set mine to read-only for most members, meaning only GMs and organisers can post there. Discord makes this straightforward: in the channel permissions you revoke the Send Messages permission for your default member role.
I call mine #announcements and use it for:
- Session dates and times
- Changes to the schedule
- Important rule or setting decisions made between sessions
- Links to shared resources such as maps or character sheets
The read-only nature is important. Members can react with emoji, which gives you a quick sense of who has seen something, but the channel does not get buried in replies. I also enable Discord’s native announcement channel type, which lets members choose to follow it and receive posts directly in their own servers — handy if any of your players are in a lot of servers and want a direct ping.
Game and Campaign Collections
This is where Discord starts earning its place. Most chat apps give you a flat list of channels. Discord gives you categories, which are collapsible groups of channels. I use one category per game or campaign running on the server at any given time.
A typical campaign category for me contains:
- #campaign-announcements — session notes, plot hooks, GM communications specific to this campaign. Read-only for players.
- #out-of-character — rules questions, scheduling discussions, anything players need to discuss without it bleeding into narrative.
- #in-character — optional but fun for players who want to post brief in-character journal entries, letters, or messages between sessions.
- #resources — links to character sheets, campaign wikis, maps, and anything else the players need at hand.
- A voice channel for the actual sessions, usually imaginatively named after the campaign.
If you are running more than one system or campaign at the same time the category structure keeps things tidy. Players in one campaign do not need to wade through channels for another.
Access Controls: Who Sees What
This is the part I wish someone had explained to me before I started. Discord’s permission system is flexible but not obvious until you understand the mental model.
Every server has a default role — often called \@everyone — and any permission not explicitly granted or denied falls back to that role’s settings. My default is fairly locked down: members can read the general social channels and nothing else until they are assigned a specific role.
I typically run with three or four roles.
Member — assigned to anyone who joins and confirms they have read the basic server rules. They can see and post in the general channels and read the announcement board.
Player (Campaign Name) — a role specific to each active campaign. Players assigned this role gain access to that campaign’s category of channels. When the campaign ends or a player leaves the table I simply remove the role. They retain their Member access and stay part of the broader community.
Watcher / Lurker — this is something I have experimented with and genuinely enjoyed. Some people are interested in a campaign but are not playing — perhaps they are on a waiting list, perhaps they are just curious. I give Watchers read access to the in-character channel and the out-of-character channel without the ability to post in either. They can follow the story without disrupting the player space. A small number of people have moved from Watcher to Player when a seat opened up, and they came to the table already knowing the world.
Organiser / GM — full access everywhere, permission to post in read-only channels, and the ability to manage channels and roles within the limits I set. I am cautious about handing this out; co-GMs get it, trusted long-term members do not.
The key Discord concept here is permission inheritance. Channel permissions override category permissions, which override server defaults. I start by setting the category permissions for a campaign correctly, and individual channels inside it inherit those unless I need to override them specifically — for instance, making an #in-character channel visible to Watchers while the rest of the campaign channels remain player-only.
Voice Channels and Watching Live Play
Worth noting separately: voice channels can have their own permission structure. I keep the session voice channel restricted to active players and GMs, but I will sometimes create a separate spectator voice channel connected to a Stage Channel so that Watchers can listen in if the group consents. Discord’s Stage Channels were designed for podcasts and presentations but work perfectly for an audience-friendly game session. The GM or a designated speaker controls who can talk; everyone else is an audience member.
Not every group will want this. Some players feel self-conscious knowing they have an audience. Always ask first.
Linking Your Community to the Wider World
Part of the appeal of Discord for gaming is that it connects you to a much larger ecosystem of communities. The platform hosts servers for publishers, actual-play shows, game systems, and independent creators. A few worth knowing about.
D&D Beyond — the official Dungeons & Dragons community server at discord.gg/dnd. Enormous, sometimes overwhelming, but useful for rules questions and finding players.
Ravenloft and Ravenloft-adjacent campaigns — a community focused on the Curse of Strahd and related gothic horror campaigns at discord.gg/aJvCEf8K2. Good if you are running or playing in that corner of the Forgotten Realms.
D&D Shorts — a community built around the actual-play and content creator space at discord.gg/cuVUJnhBm. More content-creator orientated but useful for inspiration and seeing how other GMs approach problems.
Free League Publishing — Dragonbane — the official community for Dragonbane and other Free League titles at discord.gg/dragonbane-community-1173874944430579733. Free League has been building out its Discord presence across several of its game lines; if you are playing Forbidden Lands, Twilight: 2000, or The One Ring there are dedicated spaces for those too.
There is a broader ecosystem worth exploring. Many publishers, from Pelgrane Press to Chaosium, maintain active Discord communities. Searching for your game system by name will usually surface one within a few results.
A Few Lessons Learned
I will close with things I got wrong so you might not have to.
Do not create channels before you need them. I once built out an elaborate category structure for a campaign before a single session had run. Half the channels sat empty for months. Build the minimum structure, add channels as the community asks for them or as obvious gaps appear.
Announce your channel purpose in the channel description. Discord lets you set a short topic for each channel. Use it. It prevents the inevitable question of “what’s this channel for?” and reduces drift — #off-topic slowly becoming a second #general is a common failure mode.
Review and tidy after a campaign ends. When a campaign finishes I archive its category (Discord lets you make categories and channels read-only rather than deleting them), remove the campaign-specific role from active players, and leave the archive visible to the community as a record. It is a small gesture but people appreciate seeing their adventure preserved somewhere.
Be explicit about your Watcher policy. If you are allowing Watchers make sure everyone knows. I put it in the server rules and mention it at the start of each campaign. Players who object to being observed have a right to say so before sessions begin.
Discord is not magic and it does not replace the work of actually GMing a game, keeping your players engaged, or organising sessions around everyone’s schedules. But as a social and organisational layer for a gaming community I have found nothing better. It sits quietly in the background holding the community together between sessions, which is more than I can say for the group chat I was using before.