How to Set Discord Server Inactive User Auto-Removal With Bot
🔍 WiseChecker

How to Set Discord Server Inactive User Auto-Removal With Bot

Discord servers with hundreds or thousands of members often accumulate inactive users who never send messages or join voice channels. These idle accounts clutter the member list, make moderation harder, and can slow down server management. Discord does not include a built-in feature to automatically remove inactive users after a set period. This article explains how to configure a bot to automatically kick or prune members who have been inactive for a specified number of days.

Key Takeaways: Automating Inactive User Removal With a Bot

  • MEE6 bot inactivity module: Automatically kicks members who haven’t sent messages or joined voice for a set number of days.
  • Gaius bot auto-prune command: Uses slash commands to remove members inactive for a specified period without requiring bot configuration.
  • Discord server safety settings: Enable Server Member Intent in the Discord Developer Portal to allow bots to see all members for accurate pruning.

ADVERTISEMENT

Why Discord Needs a Bot for Inactive User Removal

Discord’s native prune feature only removes members who have not joined any voice channel and have no roles. It does not consider message activity, and it cannot run automatically. For community servers where membership growth outpaces active participation, manual pruning becomes impractical. Bots fill this gap by tracking user activity and applying removal rules based on criteria you define.

The two most common bots for this task are MEE6 and Gaius. MEE6 offers a built-in inactivity module that kicks members after a configurable number of days. Gaius provides a slash command that prunes users who have been inactive for a specific duration, giving you more control over the removal process. Both bots require the Server Members Intent to be enabled in your Discord application settings.

Prerequisites Before Setting Up the Bot

Before you can configure automatic inactive user removal, you must complete these steps:

  • Server Owner or Administrator role: Only users with the Manage Server permission can add bots and modify server settings.
  • Bot invite link: Obtain the invite link for MEE6 or Gaius from their official websites.
  • Server Members Intent enabled: The bot must have this intent to see all members, including those who have never sent a message. Enable it in the Discord Developer Portal under your bot application’s Bot settings.

ADVERTISEMENT

Method 1: Using MEE6 Bot for Automatic Inactivity Kicks

MEE6’s inactivity module is the most straightforward way to automatically remove inactive users. It tracks message activity and voice channel joins. Users who meet the inactivity threshold are kicked from the server.

  1. Invite MEE6 to your server
    Go to mee6.xyz and click Add to Discord. Select your server from the dropdown and click Continue. Grant the requested permissions, then click Authorize.
  2. Open the MEE6 dashboard
    Visit mee6.xyz/dashboard and select your server from the list. If you do not see the server, ensure you are logged in with the same Discord account that has the Manage Server permission.
  3. Navigate to the Inactivity module
    In the dashboard sidebar, click Inactivity. If you do not see this option, click Moderation and then select Inactivity from the submenu.
  4. Enable the inactivity module
    Toggle the switch at the top of the page to enable it. The default setting kicks members after 30 days of inactivity.
  5. Set the inactivity duration
    Under Kick inactive users after, type the number of days. For example, enter 60 to kick users inactive for 60 days. The minimum value is 1 day, and the maximum is 365 days.
  6. Choose what counts as activity
    Check the boxes for Message and Voice. This ensures that both sending a message and joining a voice channel reset the inactivity timer. You can also check Reactions if desired.
  7. Set the kick message
    In the Kick message field, type a message the user will receive via direct message when they are kicked. For example: You have been removed from the server due to inactivity. You are welcome to rejoin at any time.
  8. Save and activate
    Click Save at the bottom of the page. The bot will now automatically kick members who exceed the inactivity threshold. The check runs once per day.

Method 2: Using Gaius Bot for On-Demand Inactive User Removal

Gaius bot does not run automatically. Instead, it provides a slash command that you can execute to prune inactive users immediately. This gives you manual control over when the removal happens.

  1. Invite Gaius to your server
    Go to gaius.xyz and click Invite. Select your server and authorize the bot. Gaius requires the Kick Members permission to function.
  2. Use the /prune command
    In any text channel where Gaius can read messages, type /prune days:30. Replace 30 with the number of days of inactivity before a member should be removed.
  3. Review the list of affected users
    Gaius will reply with a list of members who meet the inactivity criteria. It will ask you to confirm the action.
  4. Confirm the prune
    Click the Confirm button in the bot’s reply. Gaius will then kick all listed members. The bot sends a direct message to each kicked user with the reason.
  5. Repeat as needed
    Because Gaius does not run automatically, you must run the /prune command manually each time you want to remove inactive users. You can schedule this using a server automation tool or a reminder.

Important Considerations and Limitations

Bot Requires Server Members Intent

If the bot cannot see all members, it will only prune users who have sent a message at least once. To enable this intent, go to the Discord Developer Portal, select your bot application, navigate to Bot > Privileged Gateway Intents, and toggle Server Members Intent ON. Save changes and re-invite the bot if necessary.

Kicked Users Can Rejoin Immediately

Automatic removal does not block re-entry. If you want to prevent rejoin, you must manually ban the user or use a bot that supports temporary bans. MEE6 and Gaius do not offer this feature by default.

Inactivity Detection Is Based on Messages and Voice

Neither bot tracks reactions, profile changes, or channel browsing as activity. If a user only reads messages without typing or joining voice, they will be considered inactive and may be removed. This can cause false positives for lurkers who are still engaged.

Bot May Miss Members With Roles

By default, MEE6 does not kick members with any role. Gaius does not have this restriction. If you want to protect certain members, assign them a role and check MEE6’s Exempt roles setting. In the MEE6 Inactivity module, scroll to Exempt roles and select the roles that should be excluded from pruning.

MEE6 vs Gaius for Inactive User Removal

Feature MEE6 Inactivity Module Gaius /prune Command
Automation Runs daily automatically Manual command only
Activity tracking Messages, voice, reactions Messages and voice only
Custom inactivity period 1 to 365 days Any positive integer
Role exemption Yes, configurable No
Direct message on kick Customizable Fixed message
Free tier limitations Limited to 5 automated actions per day Unlimited commands

Both bots provide reliable inactive user removal. Choose MEE6 if you want a set-and-forget solution. Choose Gaius if you prefer manual control and do not want to rely on a third-party dashboard.

After setting up the bot, monitor the first few pruning cycles to confirm the bot is removing the correct members. Check the audit log in Server Settings > Audit Log to see which users were kicked and by which bot. If the bot removes users you want to keep, adjust the inactivity duration or add exempt roles.

For servers with strict membership standards, consider combining automatic removal with an invitation-only join process. Use a bot like YAGPDB or Carl-bot to require manual approval for new members. This ensures that only vetted users enter the server, and the inactivity bot handles cleanup for those who leave.

Finally, test the bot in a small server or a test channel before applying it to your main community. Invite the bot to a private server, set a short inactivity period such as 1 hour, and verify that it kicks a test account correctly. This prevents accidental mass removal of active members.

ADVERTISEMENT