Captcha (Verification)
RaidProtect's captcha asks every new member to type back a code before accessing your Discord server, which blocks selfbots and raids by filtering out accounts that are not human.
It is one of RaidProtect's most popular features, and it remains entirely optional. You choose when to enforce it: on every arrival, only during a raid, or also for suspicious accounts.
❓ How the captcha works
The captcha relies on an @Unverified role and a channel named #verification. When a user joins your server:
- Waiting: we give them the @Unverified role, which limits their access to the #verification channel only.
- Challenge: in Panel mode, they solve a puzzle in the RaidProtect Activity. In Challenge mode, they type back a code shown on an image. See the display modes.
- Success: the @Unverified role is removed and the member gains access to the server. Their auto roles and the welcome message are sent at that moment.
- Failure: when they run out of attempts, they are kicked, put in jail or blocked for a few minutes before they can try again, depending on your setting. They can come back and try the captcha again after a kick.
- Logs: each arrival is noted in the logs channel with the account creation date, as well as successes, failures and expired time limits.
- Diagnosis: RaidProtect automatically spots permission problems, the channel's visibility in Discord's Onboarding Process and leaks of the @Unverified role, and offers to fix them.
No kick by default. A new captcha no longer kicks members who do not solve it: they stay on the server, with no access, until they are verified. You can set a delay before kick.
Permission management: The permissions of the @Unverified role are automatically configured by RaidProtect. You can rename the role and the channel, but do not delete them. RaidProtect needs the KICK_MEMBERS and MANAGE_ROLES permissions, and must be placed above the @Unverified role.
Display modes
| Mode | What the new member sees |
|---|---|
| Panel (Interactive), default | A permanent "Verification System" message with a "Verify" button, which opens the RaidProtect Activity. The member cannot write in #verification. |
| Challenge (Classic) | An image is posted in #verification when they arrive, and they type the code as a message in the channel. |
The panel has a "Translate" button to read it in one's own language, and each newcomer is mentioned in the verification channel, then the message is deleted: this way they find the channel.
Panel mode keeps the channel clean and allows extra settings: choice of the sanction when attempts are used up, captcha frozen during a raid, hold at entry of accounts that are too new. Challenge mode always kicks the member at the end of the allotted time or when their attempts are used up.
Trigger
| Trigger | When the captcha applies |
|---|---|
| Always, default | On every arrival, unconditionally. |
| Automatic | Only during a raid or a high DISCON level. Other newcomers enter directly. |
| Smart | Like Automatic, plus accounts that look suspicious. |
With Automatic, the captcha applies during a raid only if Auto RaidMode is set to "Send to the captcha" or "Captcha frozen during the raid", and during a DISCON alert from level 3.
The Smart trigger evaluates each newcomer's profile. A member approved by hand by your team is never considered suspicious.
🚪 How to configure the captcha?
Setting up the captcha is quick and easy.
- Run the
/settingscommand. - Open the "Arrivals" tab.
- Click "Configure" next to "Captcha".
- Choose the channel where captchas will be completed or use the "Create one for me" button.
- Click "Enable". The @Unverified role is created and its permissions are set in all channels.
The captcha starts in Panel (Interactive) mode, triggered Always, with 3 attempts and no delay before kick. You can then adjust each setting from the same screen.
Display mode and trigger
- Run the
/settingscommand. - Open the "Arrivals" tab.
- Click "Configure" next to "Captcha".
- In "Display Mode", choose "Panel (Interactive)" or "Challenge (Classic)".
- In "Trigger", choose "Always", "Automatic" or "Smart".
Verification in the Activity
In Panel mode, the "Verify" button opens the RaidProtect Activity: the member solves a small puzzle right in Discord, in your server's colors and with the channel links from your Onboarding Process. On a Premium server that has an icon, the server icon is shown in place of the RaidProtect logo. Once verified, they discover their welcome card there.
- Failed puzzle: like a wrong code, it uses up an attempt, and the planned sanction applies when attempts run out. The Activity first announces the outcome to the member, then the sanction is applied.
- Success: the member is verified when they leave the success screen. If they click "Verify" in the meantime, their validation applies right away instead of relaunching the Activity.
- Bot: a captcha solved by an automated tool is sanctioned right away, as when attempts run out: kick, jail or block depending on your setting.
- Review by your team: when in doubt, the member stays blocked at the entrance, with no countdown running, and your team receives an automatic captcha report. It arrives in the captcha logs, otherwise in the reports channel, otherwise in the server logs. Once the report is taken over, it offers "Let in", "Link to another member" (with the Identity Update) and "Refuse", which applies your captcha failure action (kick, jail or block): the sanctions menu is not shown there.
- Jail after attempts run out: this jail has no duration and also opens a review report. "Let in" lifts the jail and verifies the member; otherwise, sanction them.
- Device check refused: the Activity asks the member for their consent before checking their device. If they refuse, they get the failure action as after attempts run out (kick, jail or block).
- Activity that does not open: the member can click "Enter a code". A correct code then goes to review by your team.
- Data erasure: a member can request the erasure of their verification data at [email protected]. They then take the captcha again, and their sanctions remain.
Alt accounts spotted by the captcha Experiment
With the Identity Update, the Activity also spots newcomers who are probably run by the same person as a member of your server:
- Certain link: the accounts are linked automatically in
/alt. The captcha logs flag it, with an "Unlink" button. If the group is sanctioned, or if One account per person holds back its secondary accounts, the newcomer receives the group's sanction or goes into quarantine. - Probable link: if One account per person is on, the member goes to review. "Link to another member" links them in
/altand lets them in; if no account was spotted, a window asks you to choose the member ("Account already on the server"). Otherwise, the member gets in, and the captcha logs flag the probable link with a "Link" button. - Certain link not applied: nothing is linked automatically if an account in the group is on the server team, if the newcomer is linked to several
/altgroups, or if both accounts already have their own group (two groups are never merged automatically). The link is then suggested to you in the same way.
Only accounts from your server are shown to you: nothing is said about other servers.
Alt account detection is part of the Identity Update, planned for version 3.7.0. Until its release, it is an experiment, in public beta for Premium servers.
Testing the captcha
There is nothing to enable: in Panel mode, an already verified team member (the owner, or a member with the Administrator or Manage Server permission) can always click "Verify" to redo the captcha. Attempts and solving time apply as for a newcomer. Nothing is applied: the captcha log ("Team test") says what would have been done.
Difficulty
- Run the
/settingscommand. - Open the "Arrivals" tab.
- Click "Configure" next to "Captcha".
- Click "Edit" next to "Difficulty".
- Set the fields in the window, then confirm.
3 essais
Attempts exhausted: Kick| Setting | Values | Default |
|---|---|---|
| "Attempts" | 1 to 10 attempts | 3 attempts |
| "Action when attempts run out" (Panel) | "Attempts exhausted: Kick", "Attempts exhausted: Jail" or "Attempts exhausted: Block 10 min" | Kick |
| "Resolution Time" (Panel) | Disabled, 15, 30 or 45 seconds, 1, 2, 3 or 5 minutes: the time given to solve the puzzle, counted from the first challenge (after the member's consent). An image code keeps at least 2 minutes | 30 seconds |
| "Resolution time (before expulsion)" (Challenge) | 3, 5, 10 or 15 minutes, or a value from 30 seconds to 15 minutes: after this time, the member is kicked | 5 minutes |
The "Attempts exhausted: Jail" choice puts the member in jail instead of kicking them. This requires a Jail Role configured in the "Moderation" tab > "Sanctions". The "Attempts exhausted: Block 10 min" choice keeps the member on the server: they wait 10 minutes, then start over with fresh attempts.
Delay before kick
In Panel mode, this delay is counted from the member's arrival: if they are not verified in time, they get your failure action (kick, jail or block).
- Run the
/settingscommand. - Open the "Arrivals" tab.
- Click "Configure" next to "Captcha".
- In "Delay before kick", choose "Disabled", 5, 15 or 30 minutes, or a "Custom value" from 30 seconds to 30 minutes.
With the delay disabled, unverified accounts stay on the server and can DM your members. Set a delay, or close DMs with the DM Lock.
Captcha screen alerts
The captcha screen displays boxes when something prevents verification from working properly:
- Channel invisible on arrival: the verification channel is not in any default channel of Discord's Onboarding Process. Click "Move into category" or "Create a new category" so that we fix it, or follow the Onboarding Process guide.
- @Unverified role leaks: roles given by Discord's Onboarding Process at the same time as @Unverified bypass verification, the @Unverified role carries permissions, @everyone has the
ADMINISTRATORpermission, or channels remain visible to members being verified (or in jail). The "Fix" button closes the channels concerned. - High verification level: this Discord level makes members wait 10 minutes before they can write. The captcha already filters entry: the recommended level with the captcha is Medium.
- Missing permissions: RaidProtect needs
KICK_MEMBERSandMANAGE_ROLES.
Once the problem is fixed, click "Refresh".
Disable or delete the captcha
- Run the
/settingscommand. - Open the "Arrivals" tab.
- Click "Configure" next to "Captcha".
- In "Display Mode", choose:
- "Disabled" to suspend verification without losing any of your configuration;
- "Delete" to erase the configuration and the verification role. RaidProtect asks you for confirmation.
To make the captcha discreet outside raids, set its trigger to Automatic rather than disabling it.
✨ Additional features
Separate logs
If your server is popular, captcha-related logs can clutter your main logs channel. You can move them to another channel.
- Run the
/settingscommand. - Open the "Arrivals" tab.
- Click "Configure" next to "Captcha".
- Click "Edit" next to "Logs".
- Choose the channel where captcha logs will be sent.
You can also find this setting in the "Moderation" tab > "Logs", on the "Captcha" line.
Automatic role
The automatic role is no longer set in the captcha: it has joined the Auto roles of the "Arrivals" tab, which accept several roles. Your previous setting was carried over there automatically. When the captcha is active, these roles are given after the captcha is passed.
Captcha bypass
Use the command: /bypass captcha [user]
Replace [user] with the desired identifier; that user will have 10 minutes to join the server without needing to solve the captcha. If the user is already present, the captcha will be resolved automatically. You can also use the command without specifying a user to see the current list of bypassed users.
🤝 Captcha and anti-raid, better together
The captcha works with the other arrival protections:
- Auto RaidMode: with the "Send to the captcha" action, a wave's newcomers pass the captcha instead of being kicked. With "Captcha frozen during the raid", they wait behind the captcha and pass it after the wave.
- Minimum account age: the "Hold at the gate" action blocks an account that is too new on a captcha it can only solve once the age is reached.
- DISCON: from level 4, the captcha is enabled if it is configured, even if you had disabled it. From level 3, it applies to all newcomers, whatever its trigger.
Frequently asked questions
How long do members have to solve the captcha?
In Panel mode, the member has 3 attempts by default (1 to 10) and 30 seconds by default to solve the puzzle (can be disabled, up to 5 minutes), counted from the first challenge. No kick delay is applied by default, but you can set one of up to 30 minutes. In Challenge mode, they have 5 minutes by default (from 30 seconds to 15 minutes) before being kicked.
What happens if a member fails the captcha?
When they use up their attempts, they are kicked from the server or, in Panel mode, put in jail or blocked for 10 minutes before they can try again if you chose that. After a kick, they can come back and try the captcha again.
Are unverified members kicked automatically?
Not on a new captcha: in Panel mode, the delay before kick is disabled by default. Unverified members stay on the server without access to channels. Set a delay before kick, or close the server's DMs, to prevent them from writing privately to your members.
Can the captcha be enabled only during a raid?
Yes. Set its trigger to Automatic and the Auto RaidMode action to "Send to the captcha" or "Captcha frozen during the raid". The rest of the time, newcomers enter directly.
Does Discord Community need to be enabled to use the captcha?
No, the captcha works without Community. If it is enabled, check that the verification channel is among the default channels of the Onboarding Process.
Can I exempt a member from the captcha?
Yes, with the /bypass captcha [user] command. The member has 10 minutes to join without solving the captcha, and if they are already present, the captcha is resolved automatically.
Can I rename the @Unverified role and the #verification channel?
Yes, you can rename them freely. Do not delete them, as RaidProtect needs them to run the captcha and configures their permissions automatically.
Captcha configuration
Display Mode
Panel (Interactive)
Trigger
Always
Verification channel
Role for members in verification
Difficulty
Test mode
Delay before kick
5 minutes
Logs
Support Server
Documentation
Documentation