🎉 Launch offer: the next 5 servers get 30 days free. Claim a spot →
All topics & search

Guide/Protect your server/Verification

Discord Verification Bot: Captcha & Button Setup

Button, captcha, web and suspicious-only verification, and the role setup that actually gates people.

Quick answer

Web verification with an unverified role

!verification setup web @Verified #verify unverified_role:@Unverified
!verification message "Welcome {user.mention}!"
!security set verification.kickAfterHours 24     # remove members who never verify
!verification status

Ask the guide

Step by step

Two modes. Button: one click in the verification channel. Web: the member opens a personal link, signs in with Discord on this website, passes a Cloudflare Turnstile check, and the bot verifies only if the signed-in account is the one that pressed Verify. Web mode stops scripted mass-verification: links are single-use and expire, the page requires a real Discord session, and the check is rate-limited per account and per IP.

!verification setup button @Verified #verify
!verification setup web @Verified #verify unverified_role:@Unverified embed:verify-card
!verification message "Welcome {user.mention}! You now have access to everything."
!verification post · !verification status · !verification disable

Role setup that actually gates people

  • Remove View Channel from @everyone on your normal channels (or the categories) and grant it to @Verified.
  • Keep #verify visible to @everyone (and not to @Verified, so it disappears once verified).
  • Optional unverified role: given on join and removed on success; useful when your permissions are built around an explicit "Unverified" role instead.
  • Put the bot's role above @Verified.

The dashboard page Security → Verification shows verified / failed counts for 24 h, lets you switch mode, roles, channel and success message, and re-post the message. Verification creates a member.verify event, so autoroles with the verify trigger and custom embeds bound to verification fire on it.

Copy and try

Web verification with an unverified role

!verification setup web @Verified #verify unverified_role:@Unverified
!verification message "Welcome {user.mention}!"
!security set verification.kickAfterHours 24     # remove members who never verify
!verification status

Good to know

  • The verified role must not carry moderation permissions; the bot refuses such a role.
  • The bot role must sit above @Verified.

If it does not work

  • Button does nothing. !verification status — usually the role is above the bot or verification is disabled.

Still stuck? Ask in the support server.

Discord Verification Bot: Captcha & Button Setup · Sweet