View on GitHub


Discord bot to add/remove roles based on user activity

Build status

Discord Activity Monitor

A Discord bot to assign/remove a role from users in your guild based on whether or not they have been active lately.


Use cases

Community instance

A community member, Oliver4888, is kindly offering public hosts of my Discord bots for other community members. If you are interested in using this community-provided instance, you can find more at
Please note that I cannot personally verify or take responsibility for the integrity of a community-provided bot instance.

Getting started

Activity Monitor needs to be deployed before you can invite it to your Discord server. Please see my written deployment guide or video tutorial which can guide you through deployment even if you are a beginner.
Once you have deployed Activity Monitor then return here to follow the Discord setup instructions below.

This button can be used for following the Heroku deployment steps.

Deploy to Heroku

Discord setup

Follow these instructions once you have deployed Activity Monitor and added it to your Discord server. Use @Activity Monitor help to view available commands.

Admin only
The setup command requires administrator permission in the Discord server.

  1. Create a role (or choose an existing one) to use to mark active users
  2. Put the bot’s role higher in the list than your chosen role
  3. Run @Activity Monitor setup in a channel the bot can read and write in
    • If you’ve nicknamed the bot, substitute @Activity Monitor for it’s nickname
  4. Respond with the information the bot asks you for, until setup is complete

You can view your guild settings with @Activity Monitor view-config

Example setup


The bot requires certain permissions, which you are prompted for on the invite screen. Each permission has a reason for being required, explained below.

Permission Reason
Read messages Detect when people are active
Send messages Ask setup questions and respond to commands
Manage roles Assign and remove the active role from users
Embed links Respond to commands


Built With


SemVer is used for versioning. View available versions on the tags page.


This project is licensed under the MIT License. See the LICENSE file for details.