Skip to content

Kotbo 4 min read

Discord reaction roles: let members pick their own roles

Reaction roles are a message where each member clicks to give themselves a role: pings, games, pronouns, region. Discord covers part of it with Onboarding, and a bot handles the rest in any channel. Kotbo uses buttons, which are more reliable than emoji reactions

Included in every plan, with a 15-day trial and no credit card

What Discord does on its own

On a Community server, Onboarding asks newcomers questions and gives roles based on their answers. Members can change their picks later from Channels & Roles. It’s native and free, with a few limits

  • Community has to be turned on for the server
  • The questions live in Onboarding, not in a message you place where you want
  • No role based on the member’s profile, such as the server tag

Buttons or emoji reactions?

Older reaction role bots read the emojis added under a message. Kotbo posts buttons, and you feel the difference in use. Each click is checked against the saved panel: a button whose role was taken off the panel says it’s no longer active instead of handing out that role

  • A reply on every click

    The member gets a message only they can see, confirming the role was added or removed. With a reaction, they can’t tell whether the bot saw it

  • A readable label

    Each button carries text, an optional emoji and a color, instead of an emoji to decode

  • No reactions to clean up

    The message doesn’t pile up hundreds of reactions, and nobody can add an off-topic emoji to it

Creating a role menu with Kotbo

It’s set up on dash.kotbo.fr, in the Reaction roles page. The Discord preview updates while you build it

  1. Create the roles on Discord

    In server settings, create your roles, then move Kotbo’s role above them: a bot can’t give a role higher than its own

  2. Deploy a panel

    In the Reaction roles page, click Deploy a Panel, give it a title and pick the channel

  3. Add the buttons

    For each button: a label, an optional emoji, the role and its color. Discord allows up to 25 buttons per message

  4. Pick the mode

    Toggle lets a second click remove the role, Grant only keeps it. Each button can also have its own mode

  5. Publish

    The message goes out on Discord. You can edit it later from the dashboard: the message updates in place, unless you move it to another channel

Discord autorole: roles members don’t pick

Not every role is picked by hand. Kotbo also gives roles with no click, from the Welcome and goodbyes page, Auto roles tab

  • On join

    A role given to every new member as soon as they join

  • Server tag

    A role for members who display your server’s official tag next to their name, removed when they take it off. Discord itself reports who wears it

  • Keyword in status

    A role for members whose custom status or activity contains a keyword, such as your invite link

  • On reaching a level

    The Levels module hands out reward roles when a member reaches a milestone

    Read the article on levels

A role menu in the welcome thread

If you want roles picked right on arrival, Kotbo’s welcome thread ends on a menu as buttons or a dropdown. Each page of the menu can add, remove or toggle a role, or make it exclusive: picking one team then removes the others in the same group. In button style, a page can also be a link that opens a channel or a website directly

Giving a role to several members at once

For staff, a slash command does it by hand, on several members in one go

/role add role:<role> membres:<mentions>
Adds the role to every mentioned member. Limited to members with the Manage Roles permission
/role remove role:<role> membres:<mentions>
Removes the role from the mentioned members

Frequently asked questions

How do I set up reaction roles on Discord?

Without a bot, use Onboarding on a Community server. With Kotbo, deploy a panel from the Reaction roles page of the dashboard: each button gives or removes a role

How do I give a role automatically on Discord?

With Kotbo, pick a role in the Auto roles tab of the Welcome and goodbyes page. Every member who joins gets it, and other auto roles follow the server tag or status

Why won’t the bot give the role?

Almost always role hierarchy: the bot’s role must sit above the role it gives in server settings. Roles managed by an integration can’t be given either

How many roles can go on one message?

Up to 25 buttons per message, Discord’s limit. Beyond that, deploy a second panel

Can members remove a role themselves?

Yes in Toggle mode: a second click removes the role. In Grant only mode, the role stays once granted

What’s the difference between reaction roles and autoroles?

A reaction role is picked: the member clicks a button to get it. An autorole is given on its own, on join or based on the member’s profile. Kotbo does both, from two pages of the dashboard

How do I give a role to members wearing the server tag?

Turn on the Server Tag Auto-Role in the Auto roles tab. Kotbo gives the role when the member displays the tag and removes it when they take it off

Try it on your server

15 days free, no credit card. Every plan includes the whole catalog