RostaBot

Safe, automated role rosters for Discord

RostaBot makes role management simple and safe. Instead of handing out risky permissions, RostaBot maintains live, self-updating embed rosters that show who holds each role, lets members request roles with one click, and lets designated role contacts approve or decline requests.

Already serving Discord communities worldwide.

What Makes RostaBot Unique?

Most bots solve role management by giving people more permissions. RostaBot solves it by giving the right people just enough control. Here’s how it works.

Demo Videos

See exactly what RostaBot looks like and how it works before adding it to your server.

Final Release Walkthrough

Coming soon

Where it all started (Beta v1)

Where it is today (Beta v2)

Real-Time Roster Updates

Embeds update instantly as roles are assigned, removed, or modified. No more outdated lists.

Contact-Based Management

Assign role contacts who can manage their specific roles without needing server-wide permissions.

Customizable Embeds

Create, rename, delete, and sort embeds with ease. Add emojis, toggle recent changes sections, and more.

Role Request System

Members can request access to open roles, and designated role contacts receive simple Approve or Decline buttons via DM.

Comprehensive Logging

Every change is tracked and logged, ensuring transparency and accountability.

Admin Oversight

Full control for admins: view stats, recent changes, and telemetry to monitor server usage.

Complete Command List

RostaBot offers a robust set of commands to handle every aspect of role management.

/help
Show help and support options (private DM, links to website/support).
/requestrole
Request to be added to a tracked role; notifies the role contact with Approve/Decline buttons.
/cancelrequestrole
Cancel one of your pending role requests (autocomplete of your requests or interactive select).
/serverlimits
Claim/revoke/show server limits via the support server; includes claim, revoke, and status subcommands.
/serverlimits_owner
Owner-only: set or remove custom limit grants for any server (bot owner use).
/newembed
Create a new role-tracking embed in the current channel (optional title, show recent changes).
/delembed
Remove a tracked embed mapping and optionally delete the embed message from the channel.
/renameembed
Rename a tracked embed’s title (for an embed in this channel or specified).
/recentchanges
Toggle the Recent Changes section for an embed (on/off).
/togglerequestbutton
Toggle the "Request Role" button on a specific embed.
/trackrole
Start tracking a role and assign a contact/manager; options for embed, requestable mode, and emoji.
/untrackrole
Stop tracking a role for a specific embed (must specify embed).
/togglerequestrole
Toggle or set whether a tracked role is requestable (open / closed / invite).
/modemoji
Modify the emoji displayed for a tracked role (contact or admin may update).
/sortroles
Set role sort order for an embed (alphabetical, order added, unsorted).
/memadd
Add a member to a tracked role (contact or admin); assigns Discord role if permitted.
/memrem
Remove a member from a tracked role (contact or admin); removes Discord role if permitted.
/requestrole button flow
(UI flow triggered by embed button) opens a select for requestable roles and follows the same DM/approve flow.
/rolechanges
Show a list of recent recorded role changes for the server (admin/manage roles).
/adminstats
Show current usage and telemetry for the server (Administrator only).

Usage and limits

Every server gets a generous free tier. Limits apply per Discord server (guild) and cover how many role-tracking embeds you can run, how many roles can be tracked at once, and how many members can appear per tracked role.

TierEmbedsTracked rolesMembers / roleQualify
Regular (default)128Default
Support Discord Member1312Join support Discord, then /serverlimits claim
Support Discord Booster3615Recurring server boost, then /serverlimits claim
Paid tier (planned)5920Not yet. Price TBD. Stable bot before paid.

Custom limits, sponsorships, and partnerships

Need something that does not fit the table? For custom limits, sponsorships, media or community partnerships, or anything else one-off, use the contact form on ChrisLenga.com or open a Support Ticket in the Support Discord.

Frequently Asked Questions

What is RostaBot?
RostaBot is a free Discord bot, verified on Top.GG and Discord and listed in the Discord App Directory, that automates role management. It maintains live-updating embed rosters showing who holds each role, lets members request roles with one click, and gives designated role contacts the power to approve or deny requests. No risky server-wide permissions needed.
Is RostaBot free to use?
RostaBot is free to use with no features locked behind a paywall. Fair-usage limits apply per server; see the Usage and limits table for embed, tracked-role, and members-per-role caps. You can raise limits for free by joining or boosting the support Discord. A paid tier with higher defaults may come later once the bot is stable. There is no paid option yet.
What are RostaBot’s usage limits?
Defaults are 1 embed, 2 tracked roles, and 8 members per role for each server. Joining the support Discord raises that to 1 / 3 / 12; boosting that server (one recurring boost) raises it to 3 / 6 / 15. The full breakdown is in the Usage and limits section.
How do I add RostaBot to my Discord server?
Click “Add RostaBot To Server” at the top of this page and complete Discord’s authorization flow. You need Manage Roles permission in your server. RostaBot only requests the minimum permissions it needs: View Channels, Send Messages, Embed Links, Read Message History, and Manage Roles.
How does the role request system work?
Members use the /requestrole slash command or click the “Request Role” button on any embed to request access to a role. The designated role contact receives a DM with Approve and Decline buttons. Approved requests are applied instantly and every change is logged automatically.
Is RostaBot safe? What permissions does it need?
Yes. RostaBot is verified on Top.GG and Discord, listed in the Discord App Directory, and requires no administrator permissions. It only needs View Channels, Send Messages, Embed Links, Read Message History, and Manage Roles. The contact-based model means only the designated person for each role can manage it, keeping your server secure.
Can I get custom limits, sponsorships, or partnerships?
Absolutely. Use the contact form on ChrisLenga.com or open a Support Ticket in the Support Discord if you need limits beyond the public tiers, want to sponsor the project, or are interested in a partnership. The planned paid tier is not live yet; custom work and one-off arrangements are handled case by case.
What is a “role contact”?
A role contact is a trusted member you designate to manage a specific role. They can add or remove members and handle role requests via Approve/Decline buttons in their DMs, with no global server management permissions required.
Can I track multiple roles across multiple embeds?
Yes. Within your tier’s caps (see Usage and limits). Higher tiers allow more embeds and more tracked roles per server. Each embed can live in its own channel and track its own set of roles, and every roster updates in real time as memberships change.

About the Developer

I’m Chris Lenga. I built RostaBot because I was frustrated with manual role management draining time and creating security problems. I wanted a system that keeps rosters accurate, puts role control into the hands of trusted contacts, and gives communities a clean, user-friendly way to request roles. RostaBot started as a small experiment during a community event and grew into a full tool after listening to user feedback and iterating on the approval workflow.

Set Up RostaBot in Under a Minute

Free to add, no admin permissions required. Your server’s role management gets better the moment you invite it.

Required permissions
  • View Channels
  • Send Messages
  • Embed Links
  • Read Message History
  • Manage Roles
Extra (optional)
  • Manage Messages
  • Use External Emojis

Support & Community

Support is run by Chris Lenga in his personal Discord, which is also the official RostaBot support hub.

Server
RostaBot Support
Chris Lenga’s personal Discord and the official support hub for RostaBot.
Server Name: Chris Lenga
Server ID: 1415484758116401266
Quick install
  1. Invite RostaBot with the required permissions.
  2. Move the RostaBot role above the highest role you want it to manage.
  3. Run /newembed in your target channel.
  4. Use /trackrole for each role you want to track.
  5. Need more options? View the full command list.