Ruination Bots

Discord Reaction Roles With Buttons

Reaction roles let members choose their own roles, for games, notifications or pronouns. One click gives the role and a second click takes it away. This page shows the three styles, what you can set and how to build a panel with Ruination Bots without writing code.

Last updated:

Watch: reaction roles step by step

How to Make Reaction Roles on Discord with Buttons (2026)Watch on YouTube

Buttons, a dropdown or emoji reactions

StyleHow the member picksGood for
ButtonsA click on a button under the message, confirmed in a reply only they can seeA few roles that should be visible at a glance
DropdownA choice in a menu, with a description for each roleMany roles that would otherwise fill the message
Emoji reactionsA reaction with an emoji. Removing the reaction removes the roleServers used to the classic style

Discord Onboarding asks new members about their interests when they join. A panel stays in a channel for everyone, including members who are already there, and you design the message yourself. Many servers use both.

What you can set

SettingOptions
Roles per panelUp to 20, each role once
Panels per botUp to 25, each in a channel of your choice
ModeSeveral roles at once, or only one, where a new pick replaces the old one
ButtonsLabel up to 80 characters, emoji, colour blue, grey, green or red
DropdownPlaceholder text, a name and a description of up to 100 characters per role, emoji
Panel messageDesigned in the message builder, images included
The one-role mode suits colours, teams or pronouns. When a member picks again, the bot takes away their other roles from that panel. It never touches roles outside the panel.

Which roles the bot can give

  • Discord lets a bot give only roles below its own highest role. In Server Settings, drag your bot's role above the roles on the panel.
  • The bot never gives a role with dangerous permissions, such as Kick Members or Manage Server, through a panel. It checks on every click, even if the role gains those permissions later.
  • A member can only change their own roles through a panel.

How to make reaction roles

  1. Create your botIn the Discord Developer Portal, with your server's name and avatar. The setup guide shows every click.
  2. Connect it to Ruination BotsPaste the token into the dashboard and invite the bot to your server.
  3. Create a panelUnder Reaction Roles, choose New Panel, the channel, and whether members pick with buttons, a dropdown or reactions.
  4. Add the rolesGive each role a label and an emoji, and a colour for buttons.
  5. Create and testThe bot posts the panel. Test it with a second account that has no admin rights.

Try it on your server

You get the whole product for 14 days without a card, once per account and once per Discord server. Afterwards the bot stops, nothing is charged and your setup is kept.

Questions

How do I make reaction roles on Discord?

With a bot that posts a message with buttons, a dropdown or emoji reactions and gives the matching role on a click. In Ruination Bots you create a panel in the dashboard, without code.

Why doesn't a member get the role?

Usually the role sits above your bot's role. Discord only lets bots give roles below their own highest role. The bot also refuses roles with dangerous permissions on a panel.

Can members remove a role again?

Yes. A second click on the same button removes it. With reactions, removing the reaction is enough, and in a dropdown they deselect it.

Can I allow only one role per member?

Yes, with the one-role mode. When a member picks again, they lose their other roles from that panel.

What does it cost?

You get the whole product for 14 days without a card, once per account and once per Discord server. Afterwards the bot stops, nothing is charged and your setup is kept. Prices are on the home page.

Read next

Questions?Ask in the support server or write to support@ruination-bots.com.
Join the Support Server