If you want certain Discord channels to remain invisible to new members until they complete an onboarding process, you need to configure server permissions and the onboarding feature correctly. Without proper setup, new members may see all channels immediately, which can overwhelm them or expose internal content. Discord’s onboarding feature allows you to create a structured welcome experience where channels become visible only after a member completes specific steps. This article explains exactly how to hide channels from new members and reveal them only after onboarding is finished.
Key Takeaways: Hiding Channels Until Onboarding Is Complete
- Server Settings > Onboarding > Default Channels: Sets which channels are visible to new members before they finish onboarding.
- Server Settings > Roles > Manage Permissions > View Channel: Disables the View Channel permission for the @everyone role on hidden channels.
- Server Settings > Roles > Onboarding Role Permissions: Grants View Channel permission only to the role members receive after completing onboarding.
How Discord Onboarding Controls Channel Visibility
Discord’s onboarding feature, introduced in 2023, lets server owners design a custom welcome flow. New members see only the channels you designate as “default” until they finish onboarding steps. Once they complete those steps, they receive a special role that unlocks additional channels. This system relies on two permission layers: the @everyone role and the onboarding role.
The @everyone role must have the View Channel permission disabled for any channel you want to hide. If @everyone can see the channel, even unonboarded members will see it. The onboarding role, which members get after finishing the flow, must have View Channel enabled for those same channels. This combination ensures that only onboarded members can see hidden channels.
Prerequisites for Hiding Channels
Before you start, ensure the following are in place:
- You have Manage Server permission on the Discord server.
- The server has fewer than 200 members, or the server is a Community server with onboarding enabled. Onboarding is available only for Community servers with fewer than 200 members or for any Community server that has reached Level 1 verification.
- You know which channels you want to hide and which role will be assigned after onboarding.
Steps to Hide a Discord Channel From New Members Until Onboarding
Follow these steps exactly. The order matters because changing permissions for @everyone first prevents accidental exposure.
- Create an Onboarding Role
Open Server Settings > Roles. Click Create Role. Name it something like “Onboarded” or “Member.” Do not assign any permissions yet. Click Create Role at the bottom. - Disable View Channel for @everyone on the Target Channel
Right-click the channel you want to hide in the channel list. Select Edit Channel. Go to the Permissions tab. Under Roles/Members, find @everyone. Click the red X next to View Channel to deny that permission. Click Save Changes. - Grant View Channel to the Onboarding Role
In the same channel’s Permissions tab, click the + icon next to Roles/Members. Type the name of the onboarding role you created. Click on the role to add it. Set View Channel to the green checkmark to allow it. Click Save Changes. - Set Up Onboarding in Server Settings
Go to Server Settings > Onboarding. If onboarding is not enabled, click Enable Onboarding. Under Default Channels, select only the channels that new members should see immediately. Do NOT include the hidden channel. Under Onboarding Steps, create a step that assigns the onboarding role. For example, create a “Read the Rules” step that requires clicking a button, then assign the onboarding role as the reward. - Test the Onboarding Flow
Log out of your Discord account or use an incognito browser window. Join the server using a new invite link. Verify that you see only the default channels. Complete the onboarding step. Confirm that the hidden channel becomes visible after you receive the onboarding role.
Alternative Method: Using a Custom Bot for Onboarding
If you prefer not to use Discord’s built-in onboarding, you can use a bot like MEE6 or Carl-bot to assign roles after a member reacts to a message or completes a captcha. The permission setup is identical: disable View Channel for @everyone, grant it to the role the bot assigns. The bot handles the role assignment instead of the onboarding flow.
If Hidden Channels Still Appear to New Members
Channel Appears in the Channel List but Is Grayed Out
This happens when @everyone has View Channel allowed but Send Messages denied. Go back to the channel’s Permissions tab and set View Channel to the red X for @everyone. Save and test again.
Onboarding Role Is Not Being Assigned
Check that the onboarding step is properly configured. In Server Settings > Onboarding, click the step you created. Ensure the Role to Assign field is set to the correct onboarding role. Also confirm that the step is not set to “Optional” if you want it to be required.
New Members See the Hidden Channel Before Onboarding
This usually means the @everyone role still has View Channel allowed on that channel. Double-check the channel’s permissions. Also verify that no other roles (like “Member” or “Guest”) have View Channel allowed for that channel. Remove any conflicting permissions.
Discord Channel Visibility Options: Hidden vs Public vs Private
| Item | Hidden (onboarding only) | Public (visible to all) | Private (invite-only) |
|---|---|---|---|
| View Channel for @everyone | Denied | Allowed | Denied |
| View Channel for onboarding role | Allowed | Not needed | Not needed |
| New member sees channel before onboarding | No | Yes | No |
| Channel appears in server list | No (until onboarded) | Yes | No (unless member has role) |
| Best use case | Welcome channels, rules, intro | General chat, announcements | Admin-only, staff channels |
Hiding channels with onboarding gives you a middle ground between fully public and fully private channels. It keeps content invisible until a member completes a specific action, without requiring manual role assignment.
After you hide channels using the steps above, new members will see only the default channels you selected. Once they finish the onboarding flow and receive the onboarding role, the hidden channels appear automatically. For advanced control, consider creating multiple onboarding roles that unlock different channel categories based on member interests or verification levels. Test the flow with a dummy account before announcing the change to your server.