YAGPDB Mutually Exclusive Roles and Reaction Roles Setup 2026

Published on

Set up YAGPDB reaction roles with mutually exclusive groups. Step-by-step guide covering role menus, role groups, exclusive selection, and common troubleshooting.

Written by Jochem, Infrastructure Expert, 5-10 years experience in game server hosting, VPS infrastructure, and 24/7 streaming solutions. Read author bio →

YAGPDB Mutually Exclusive Roles and Reaction Roles Setup 2026

YAGPDB (Yet Another General Purpose Discord Bot) has a role menu system that lets users self-assign roles through reactions or buttons. Set role groups to mutually exclusive so users pick only one from a category.

What Are Mutually Exclusive Roles?

Mutually exclusive roles mean a user picks one role from a group and YAGPDB automatically removes any other role from that same group. Common uses:

  • Color roles (pick one color, the previous one gets removed)
  • Region roles (EU, NA, Asia: pick one)
  • Notification tiers (Daily, Weekly, None)

Setup Steps

Step 1: Invite YAGPDB

Go to yagpdb.xyz and click "Add to Server." Open the control panel at yagpdb.xyz/manage.

Step 2: Create roles in Discord

Server Settings > Roles. Create the roles you want users to pick from. Make sure YAGPDB's role is positioned above them in the hierarchy.

Step 3: Configure role groups

In the YAGPDB control panel:

  1. Go to Role Commands in the sidebar
  2. Click Create Role Group
  3. Name it (example: "Color Roles")
  4. Set Mode to Single for mutually exclusive
  5. Add each role to the group

The Single mode is what enforces mutual exclusivity. When a user picks "Blue", YAGPDB removes "Red" or "Green" if they had one.

Mode options:

  • Single: One role at a time (mutually exclusive)
  • Multiple: Users pick as many as they want
  • None: Disables the group

Step 4: Create a role menu message

Type -rolemenu create (group-name) in the target channel. YAGPDB posts a message with reactions for each role.

For a custom design: create an embed with -customembed, then run -rolemenu create (group-name) -m (message-id).

Step 5: Test

React with a second account. Verify the role is assigned, and that picking a different option removes the first role.

Troubleshooting

Bot does not assign roles:

  • Check YAGPDB's role is above target roles in the role hierarchy
  • Verify the bot has "Manage Roles" permission
  • Confirm the role group mode is set to "Single" or "Multiple"

Roles not mutually exclusive:

  • Confirm the mode is set to "Single" in the role group settings
  • All exclusive roles must be in the same group

Hosting a Custom Bot 24/7

YAGPDB is hosted externally. For a fully custom bot with similar features and complete control, host on a VPS. Space-Node VPS plans start at 3.50 EUR/month with SSD storage and 99.9% uptime.

What reaction roles in YAGPDB actually look like in 2026

YAGPDB still ships a reaction roles system, but Discord deprecated message reaction events for new bots in favor of components. YAGPDB now supports both:

ModeUXProsCons
Reactions (legacy)click an emojisimple to set updeprecated, may break long-term
Buttons (recommended)click a buttonfuture-proof, accessiblerequires component setup
Select menudropdownclean for many rolesone click extra

For a new server in 2026, use buttons. Reactions are still functional but on borrowed time.

Setting up button-based role menu

In YAGPDB control panel: Tools & Utilities > Role Commands > New Role Group.

Create the group, e.g. "Pronouns". Then Add Role Command for each role:

FieldExample
NameHe/Him
Role@He/Him (must exist)
GroupPronouns
Require Rolesempty
Ignore Rolesempty

Common setup mistakes

MistakeEffectFix
YAGPDB role above target role"I cannot assign that role" errormove YAGPDB role above target in role list
Manage Roles permission missingnothing happens on clickgrant Manage Roles to YAGPDB
Self-assignable roles also have other permsusers get unintended powersstrip non-cosmetic perms from those roles
Group set to "Single" with too manyonly one role per group; user confuseduse "Multiple" if intended

Verify with the audit log

After setup, click your own button. Discord audit log should show "YAGPDB.xyz added role X". If it doesn't, the bot doesn't have the permission or the role hierarchy is wrong.

Jochem

About the Author

Jochem, Infrastructure Expert, expert in game server hosting, VPS infrastructure, and 24/7 streaming solutions with 5-10 years experience.

Since 2023
500+ servers hosted
4.8/5 avg rating

I specialize in Minecraft, FiveM, Rust, and 24/7 streaming infrastructure, operating enterprise-grade AMD Ryzen 9 hardware in Netherlands datacenters.

View my full bio and credentials →

Keep Your Bot Online 24/7

Reliable Discord bot hosting powered by enterprise AMD Ryzen 9 hardware. Start free, upgrade anytime with guaranteed uptime.