Course Community server template
For self-paced courses on Kajabi, Teachable, Thinkific or Podia. Works from 30 to 5,000 members without restructuring.
- Self-paced online courses
- Course creators launching their first community
- 50 to 5,000 students
Channels and categories
START HERE
- # welcome text
What this server is, how to get help, and your first 3 steps.
Access: Everyone can read; only Staff can post
- # rules text
Community rules (required for Community servers).
Access: Everyone can read; only Staff can post
- 📣 announcements announcement
New lessons, live calls and course updates.
Access: Everyone can read; only Staff can post
- # introductions text
Say hi: who you are, what you want from the course.
Access: Members can read and post
COURSE
- 💬 course-questions forum
One post per question. Tag by module. Mark answered posts with the Solved tag.
Access: Members can read and post
- # module-1 text
Discussion for Module 1. Rename per module.
Access: Members can read and post
- # module-2 text
Discussion for Module 2.
Access: Members can read and post
- # module-3 text
Discussion for Module 3.
Access: Members can read and post
- # resources text
Downloads, templates and links mentioned in lessons.
Access: Everyone can read; only Staff can post
COMMUNITY
- # general text
Anything related to the topic of the course.
Access: Members can read and post
- # wins text
Share progress and results. Celebrate others.
Access: Members can read and post
- 💬 accountability forum
One post per person: weekly goals and check-ins.
Access: Members can read and post
- # off-topic text
Everything else.
Access: Members can read and post
LIVE
- 🎙️ live-calls stage
Monthly Q&A and office hours.
Access: Members listen; speakers invited by Staff
- 🔊 study-room voice
Co-working and study sessions.
Access: Members can read and post
- # call-replays text
Links to recordings and notes.
Access: Everyone can read; only Staff can post
STAFF
- # staff-chat text
Private team chat.
Access: Hidden from everyone except Staff
- # mod-log text
AutoMod alerts and bot logs.
Access: Hidden from everyone except Staff
Roles and permissions
| Role (highest first) | Purpose | Key permissions | Assigned by |
|---|---|---|---|
| Admin | Owner and co-owner | Administrator | Owner, manually |
| Staff | Moderators and TAs | Manage Messages, Manage Threads, Timeout Members, Kick Members, Manage Events, View Audit Log | Admin, manually |
| Student | Paying students; unlocks COURSE and LIVE | View course channels, Send Messages, Create Posts in forums, Connect/Speak in voice | Purchase integration or Staff after verifying the order |
| Alumni | Finished the course; keeps community access | Same as Student | Staff or a completion form |
| Beginner / Intermediate / Advanced | Experience level, for tailored help | None (cosmetic + filtering) | Onboarding question |
| Live-call pings | Opt-in notifications for live sessions | None (mentionable by Staff) | Onboarding question |
- @everyone: deny View Channel on COURSE and LIVE categories, so only Student/Alumni see course content.
- Student and Alumni: allow View Channel on COURSE and LIVE at the category level; keep channels synced to the category.
- START HERE channels: @everyone can view; only Staff can Send Messages (except #introductions).
- Keep the Staff role below Admin and above Student; bots that assign roles must sit above Student and Alumni.
- Do not give Administrator to bots or Staff: it bypasses every channel override.
Onboarding questions
Which course are you here for? (required, pick any)
- • I bought the course → Shows how to verify your purchase in #welcome (Student role is granted after verification, not by this answer)
- • Just looking around → Keeps public channels only
What's your experience level? (optional, pick one)
- • Beginner → Beginner role
- • Intermediate → Intermediate role
- • Advanced → Advanced role
Want a ping when we go live? (optional, pick one)
- • Yes, ping me for live calls → Live-call pings role
- • No thanks → Nothing
Onboarding needs Community enabled. Never grant paid roles from an onboarding answer: anyone can pick any answer. See onboarding setup.
AutoMod rules
| Rule | Setting | Response |
|---|---|---|
| Block Mention Spam | On. Start with a low mention limit per message (Discord lets you choose the number) and enable raid protection. | Block message + send alert to #mod-log + timeout member |
| Block Suspected Spam Content | On for all channels. | Block message + send alert to #mod-log |
| Block Commonly Flagged Words | Enable the preset lists (insults and slurs, sexual content, severe profanity) that match your audience. | Block message with a short custom explanation |
| Custom keyword rule: scams | Keywords such as *free nitro*, *steam gift*, *airdrop*, *crypto giveaway*, *dm me for*. Exempt Staff. | Block message + alert #mod-log + timeout member |
| Member profile filter | Block the same scam terms plus impersonation patterns like *admin*, *support team*, *moderator* in usernames and nicknames. | Block member from interacting until they change their name |
| Custom keyword rule: invite links | Block *discord.gg/* and *discord.com/invite* outside staff. Exempt Staff. | Block message + alert #mod-log |
Configure in Server Settings > Safety Setup > AutoMod. AutoMod guide.
Recommended bots and why
Carl-bot recommended
Role menus, logging, tags
Reliable reaction/button role menus for anything Onboarding doesn't cover, detailed mod logs, and saved 'tags' for answers you type every week.
Sesh optional
Events and reminders
Timezone-aware event times and reminders for live calls. Discord's native Scheduled Events cover the basics; Sesh adds calendar sync and polls.
Craig optional
Voice recording
Discord has no built-in call recording. Craig records voice channels (announce it and get consent before recording).
Zapier optional
Purchase-to-Discord automation
Posts new-lesson announcements and can add the Student role when your course platform fires a purchase event (requires the buyer's Discord user ID).
Bot features and premium plans change; check each bot's site. Grant only the permissions a bot asks for, never Administrator.
Welcome messages
#welcome
Welcome to the {Course name} community 👋
This is where students ask questions, share wins and join live calls.
Your first 3 steps:
1. Read #rules (2 minutes).
2. Verify your purchase: {how to verify}. You'll get the Student role and see the COURSE channels.
3. Post in #introductions: your name, where you're from, and one goal for this course.
Stuck? Post in #course-questions and tag the module. A team member answers within {response time}.#introductions (pinned template)
Copy and fill in: **Name:** **Where I'm based:** **Why I took the course:** **One goal for the next 30 days:** **Fun fact:**
Server Guide welcome message
Glad you're here, [@username]. Start with #rules, then introduce yourself. Questions go in #course-questions.
Setup checklist
Before you start
- ☐ Create the server from a fresh account you own (or transfer ownership later)
- ☐ Enable 2FA on the owner account
- ☐ Decide how students prove purchase (invite in course, integration, or manual check)
Structure
- ☐ Create roles in the order listed, highest first
- ☐ Create categories and channels; set permissions on categories, then sync channels
- ☐ Add forum tags: Module 1, Module 2, Module 3, Solved, Bug in course
Community features
- ☐ Server Settings > Enable Community (needs a verification level, content filter, rules and updates channels)
- ☐ Set up Onboarding: questions, default channels, Server Guide
- ☐ Turn on AutoMod rules and point alerts to #mod-log
Bots and automation
- ☐ Invite Carl-bot with the minimum permissions; move its role above Student
- ☐ Optional: connect Sesh for live-call reminders
- ☐ Optional: connect your course platform via Zapier or a paywall tool
Launch
- ☐ Post and pin the welcome and intro template
- ☐ Schedule the first live call as a Scheduled Event
- ☐ Test with an alt account: join, onboard, verify, post
- ☐ Share the invite link inside the course (set it to never expire)
Guides for this setup
Get the Course Community pack
Ready-to-import pack for $49, or we build it in your server for $299.