Skip to main content
Auto Prune removes members who join your server and don’t acquire any meaningful role within a configurable timeout. This targets parked bot accounts, abandoned joins, and users who bypass onboarding.
Free for all servers. Disabled by default — enable it from the dashboard or Discord commands.

How It Works

  1. A member joins your server and enters the prune queue
  2. If they receive a real role (not a bypass role), they’re cleared from the queue
  3. If the timeout expires with no real role, they’re automatically kicked
Kicks are logged to your server’s log channel with the member’s name, avatar, and the timeout that expired.
Auto Prune works alongside Verification. If you use both, members must pass the verification challenge and acquire a role within the timeout. This provides two layers of protection against bot accounts.

Setting Up Auto Prune

From the Dashboard

1

Open the Dashboard

Go to dashboard.hashbot.com and select your server.
2

Navigate to Auto Prune

Click Auto Prune in the sidebar under Hashbot.
3

Enable

Toggle the switch or click Enable Auto Prune.
4

Set Timeout

Choose how long new members have to acquire a role. Default is 4 hours. Range: 10 minutes to 24 hours.
5

Add Bypass Roles (optional)

If your server auto-assigns roles on join (e.g., “Unverified” or “New Member”), add them as bypass roles so they don’t count as real roles.

From Discord

/settings auto-prune set-state state:enable
Set the timeout (in minutes):
/settings auto-prune timeout minutes:240
View current configuration:
/settings auto-prune status

Configuration Options

SettingDefaultRangeDescription
EnabledOffToggle auto-prune on or off
Timeout4 hours10 min – 24 hoursHow long before roleless members are kicked
Bypass RolesNoneRoles that don’t count as “having a role”

Bypass Roles

By default, any role assignment clears a member from the prune queue. Bypass roles let you exclude specific roles from this check. When to use bypass roles:
  • Your server auto-assigns a role on join (e.g., via a welcome bot)
  • You have a “New Member” or “Unverified” role that doesn’t indicate real engagement
  • You use reaction roles where the initial role is cosmetic
How it works: If a member only has bypass roles, they’re treated as roleless and will still be pruned. If they have at least one non-bypass role, they’re safe.

Managing Bypass Roles

From the dashboard, use the Add bypass role dropdown on the Auto Prune page. From Discord:
/settings auto-prune bypass-role action:add role:@Unverified
/settings auto-prune bypass-role action:remove role:@Unverified
/settings auto-prune bypass-role action:list

Commands

CommandDescription
/settings auto-prune set-state state:enableEnable auto-prune
/settings auto-prune set-state state:disableDisable auto-prune and clear the queue
/settings auto-prune timeout minutes:Set the kick timeout (10–1440 minutes)
/settings auto-prune bypass-role action:add role:Add a bypass role
/settings auto-prune bypass-role action:remove role:Remove a bypass role
/settings auto-prune bypass-role action:listList all bypass roles
/settings auto-prune statusView current config and pending count

Frequently Asked Questions

Only members who join after you enable auto-prune are tracked. Existing members are not affected.
Yes. Disabling auto-prune immediately clears all pending members from the queue. No one will be kicked.
The prune queue is stored in the database, so it survives bot restarts. Members won’t slip through.
Yes. They complement each other. Verification blocks automated bots at join time, while auto-prune catches accounts that pass verification but never engage further.
Discord shows “Auto Prune: no role acquired within [timeout]” as the kick reason, which is visible in the member’s audit log.