Skip to content
Double Counter

How to set up verification on a Discord server

Step-by-step guide to Discord server verification: verification levels, a verified role, channel permissions, rules screening and a verification bot.

By the Double Counter teamUpdated 9 min read

Key takeaways

  • Server verification means new members see one channel and must pass a check before a “verified” role unlocks the rest.
  • It has three parts: Discord's verification level, a role-and-permissions gate, and something that decides who gets the role.
  • The gate only works if @everyone is locked out of your channels. A verified role that unlocks nothing is the most common mistake.
  • Reaction roles and captchas only prove a human clicked. A verification bot can also catch alt accounts, VPNs and raids.
  • Never use @everyone as the verified role, keep the bot's role above the verified role, and test with a second account approved by staff.

Verification is the front door of a Discord server. Done well, real members get in within seconds and spam bots, raiders and banned members do not get in at all. Done badly, it either lets everyone through or loses half your newcomers at a puzzle.

This guide builds a complete verification system from scratch: the settings Discord already gives you, the role and permission structure, and a verification bot for the checks Discord cannot do. It takes about fifteen minutes.

What “verification” means on Discord

The word covers three different things, and people often mix them up:

  • Account verification: a user confirming their email address or phone number with Discord.
  • Verified servers and bots: the checkmark Discord gives to official communities and to bots it has reviewed.
  • Server (member) verification: a gate you build so that new members must pass a check before they can see or post in your channels.

This article is about the third. Every member verification system, whatever tool runs it, has the same shape: newcomers land in a restricted area, pass a check, and receive a role that unlocks the server.

Step 1: set Discord's verification level

Open Server Settings → Safety Setup and choose a verification level. It decides what an account needs before it can send messages:

LevelRequirement
NoneNo restriction.
LowA verified email address on the Discord account.
MediumAlso registered on Discord for more than 5 minutes.
HighAlso a member of your server for more than 10 minutes.
HighestA verified phone number on the Discord account.

Medium suits most communities. High and Highest add real friction for legitimate newcomers and are better kept for periods when the server is under attack. Whatever you choose, treat it as a speed bump: an email address or a phone number costs an attacker very little.

Step 2: build the gate with a verified role

  1. Create a role called Verified (or Member). Give it no special permissions for now.
  2. Create a verification channel, for example #verify. Allow @everyone to view it and read its history. Deny Send Messages so it cannot be flooded.
  3. Lock everything else. On each category, deny View Channel for @everyone and allow it for Verified. Channels synced to their category follow automatically.
  4. Hide the verification channel from verified members by denying View Channel for Verified there. It keeps the member list of that channel short and avoids confusion.
  5. Create a staff-only log channel, for example #verification-logs, where the bot will report what it sees.

Step 3: choose what decides who gets the role

This is the part that determines how much protection you actually get.

MethodWhat it provesWhat it misses
Rules screening or OnboardingThe member clicked through your rules.Everything else. Scripts click too.
Reaction or button roleSomeone pressed a button.Bots, alts, banned members.
Captcha botA human is present.Humans you banned, alt accounts, VPNs.
Verification bot with alt detectionA human, on a real connection, not already known under another account.A small share of determined evaders; staff review covers them.

Rules screening is worth enabling anyway: it is free and makes sure people have seen your rules. Just do not mistake it for security. If your problem is banned members coming back, alt accounts or raids, only the last row addresses it.

Step 4: add a verification bot

The steps below use Double Counter, which is free for most servers. The structure is the same with any verification bot.

  1. Invite the bot and open the dashboard. Check in Server Settings → Roles that its role is above Verified.
  2. Make three choices in the setup: the channel for verifying users (#verify), the role for verified users (Verified), and the channel for logs.
  3. Pick how members receive their link.
    • On join: the bot sends each new member a private verification link by DM. This is the default and the fastest for members.
    • On click: nothing happens until the member presses a Verify button in your verification channel. Run /panel there to post the button. Choose this if many of your members keep their DMs closed, or if you use Discord Onboarding.
  4. Decide what happens on detection. Alerts in the log channel are on by default. You can add auto-ban for detected alts, a kick for members who never finish verifying, and a minimum account age.
  5. Save. Every member who joins from now on is checked: one click on a link made for them, about 3 seconds, with no Discord login and no puzzle.

The setup documentation has screenshots of each screen, and a separate page explains how to combine the bot with Discord Onboarding.

Step 5: test it, then explain it to your members

Test the gate

  • Use View Server as Role (Server Settings → Roles) with @everyone to confirm that an unverified member sees the verification channel and nothing else.
  • If you test with a second account of your own, approve it with /manverify instead of opening its verification link. A real alt checker will, correctly, detect your test account as your alt.

Write a short welcome message

Pin something like this in the verification channel:

  • Press Verify (or check your DMs) and open your personal link.
  • Turn off your VPN or Private Relay while you verify.
  • Never open a link sent to someone else, and never share yours.
  • Our verification never asks for your password, a QR code scan or an app authorisation.

The last line matters. Scammers imitate verification bots to steal accounts, usually by asking members to scan a QR code or log in on a fake page. If your members know what your real verification looks like, they will recognise a fake one.

Common problems and fixes

  • Members verify but get no role. The bot's role is below the verified role, or the link expired before they finished. Move the role up; the member presses Verify again for a fresh link.
  • Members never receive the DM. Their DMs are closed. Switch to the Verify button, or enable the option that reminds them in the verification channel.
  • “VPN detected” for someone without a VPN. Usually iCloud Private Relay, Cloudflare WARP or Discord's in-app browser. See avoiding VPN false positives.
  • A trusted member is flagged as an alt. Check the log entry, then approve them with /manverify if the second account is legitimate.
  • Existing members were not checked. That is expected: only members who verify after setup are screened.

Frequently asked questions

How do I add verification to my Discord server?
Create a verified role, hide your channels from @everyone, leave one verification channel visible, and add a verification bot that grants the role once a new member passes its check. Also set Discord's verification level under Server Settings → Safety Setup.
What is the best verification level for a Discord server?
Medium suits most communities: it requires a verified email and an account older than five minutes. Use High or Highest temporarily during an attack, since they add friction for real newcomers.
Do I need a bot for Discord verification?
Not for the basics: verification levels and rules screening are built in. You need a bot to check anything about the person, such as whether they are an alt of a banned member or connecting through a VPN.
Is a captcha enough to verify Discord members?
A captcha stops simple automated accounts. It does nothing about a banned member who creates a new account, because that person is human and solves it like anyone else.
Does verification work with Discord Onboarding and rules screening?
Yes. Use the Verify button mode, give an intermediate role during Onboarding, and let the verification bot grant the verified role that unlocks your channels. The Double Counter documentation has a step-by-step page for this.
Why do members get verified but receive no role?
Either the bot's role sits below the verified role in the role list, so Discord refuses the assignment, or the member's link expired before they finished. Move the bot's role up and ask the member to request a new link.
Alt accounts9 min read

Discord alt accounts: how to detect and stop them

What an alt account is, the signs that give one away, what Discord's own tools miss, and how an alt checker recognises the person behind a new account.

Read the guide
Double Counter help6 min read

How to unverify an account with Double Counter

The official answer: what “unverifying” means, how to delete your Double Counter data with /privacy, and what to do if you were flagged as an alt.

Read the guide

Add verification to your Discord server today

Three choices in the dashboard, about 3 seconds per member, no login and no captcha. Double Counter is free for most servers.