Use Self Roles when members should opt into interests, notifications, access roles, or other optional groups. Build the message in Dashboard → Self Roles, then publish it to a channel or bind reactions to an existing message.
Administrators can also manage panels with /selfroles (prefix alias selectionroles).
Start here
Create your first panelDesign the message, role items, and restrictions in one editor.
- Open Dashboard → Self Roles and select Create panel at the top right.
- Choose a panel type: reactions, buttons, or dropdown.
- Add at least one role item on the Roles tab.
- Set any Restrictions, then customize the message on the last tab, Message.
- In the Message tab's right sidebar, use Save panel, pick a channel under Send / bind panel, and use Save and send to publish. On smaller screens these controls appear below the message builder.
Panel types
Use Enable panel to pause role changes. After a tier downgrade, you can disable a panel while keeping entries above your tier's role limit. Reduce those entries to the current limit before enabling it again.
| Type | Best for | Notes |
|---|---|---|
| Reactions | Emoji pickers on an existing post | Can bind to a message link; the message content stays as-is. |
| Buttons | Up to 20 labeled choices | Buttons toggle based on the member’s current roles. |
| Dropdown | Long lists (up to 25 options) | Choose options to toggle Normal/Reverse roles. Replies confirm changes without another menu. |
Assignment modes
Each item has Roles to add and optional Roles to remove. Each entry supports 4 roles total on Public/free or 10 on Prime/Custom, across both lists. Set a default mode for the panel, or override per item.
| Mode | When a member selects | When they deselect |
|---|---|---|
| Normal | Adds the add roles; removes the remove roles | Removes the add roles (remove roles are not given back) |
| Bind | Adds the add roles; removes the remove roles | No change; they keep the add roles |
| Reverse | Removes the add roles; grants the remove roles | Gives the add roles back and removes the remove roles |
| Drop | Removes the add roles | No change; roles are not restored through this panel |
Reactions: adding a reaction selects; removing it deselects.
Buttons: Normal and Reverse toggle between selected and deselected based on current roles; Bind and Drop only apply on select.
Dropdown: chosen Normal/Reverse options toggle based on current roles. Bind/Drop only apply their selection action. Options not chosen are untouched. Replies contain confirmation text without another dropdown.
Maximum roles
Set Maximum roles per member to cap how many Normal and Bind add roles someone can hold at once (0 = unlimited). Reverse and Drop items do not count toward this limit.
When a new pick would exceed the limit, the bot removes add roles from the earliest items in Roles tab order first, never roles granted by that action. Max Roles can replace Bind roles (a capped bind role may be removed for a new pick). The limit counts distinct roles across all entries, not emojis or options. Reactions stay in place when roles are replaced or a pick exceeds Maximum Roles.
Restrictions
On the Restrictions tab you can require whitelist roles, block blacklist roles, or set minimum account age, membership time, level, messages, or voice time. Restrictions apply only when a transaction grants a role; remove-only actions are not blocked.
Role safety
- Discortics must have Manage Roles and sit above every role the panel assigns.
- Managed integration roles and @everyone cannot be used as add/remove targets.
- Roles with Administrator, Manage Server, Manage Roles, Manage Channels, Manage Webhooks, Ban/Kick Members, Manage Messages, Mention Everyone, Manage Threads, Manage Expressions, or Moderate Members are rejected when you save.
- When you add a new role to a panel, anyone saving with Manage Roles must have a highest role above that role. The server owner and members with Administrator are exempt. Roles already on the panel are not re-checked when you edit other fields.
Abuse limits
- Buttons and dropdowns: at most 5 role changes per member per 10 seconds; extra clicks get a private slow-down reply.
- Reactions apply after the member stops reacting on that panel for 1.5 seconds. Only the latest add/remove for each emoji applies, in reaction order.
- Requirement-failure DMs share a cooldown per bot, server, and member. The first is immediate; repeated failures wait 1, 2, 4… minutes, up to 30 minutes. The backoff resets after an hour without a failure DM.
Sending and drafts
Open the Message tab to find Save panel and Send / bind panel in the right sidebar. On smaller screens they appear below the message builder. The shared unsaved-changes bar is available across tabs.
- Save panel stores configuration. If the panel is already published, saving updates the live message when possible.
- Save and send publishes a draft or moves the panel to another channel. Reaction panels can optionally bind to an existing message link.
- If the published message or its channel is deleted, the panel becomes a draft again (it is not deleted from your server). Send it again to publish a new message.
Good design tips
- Give each panel one clear purpose.
- Use short labels and explain what each choice unlocks.
- Test with a member account that does not have staff permissions.
- After changing role permissions in Discord, remove or replace any elevated role on the panel—saves are rejected and the bot will not grant that role at runtime.
Troubleshooting
- Confirm Discortics is above the roles on the role list.
- Check channel permissions (View Channel, Send Messages, Embed Links, and for reactions Add Reactions / Manage Messages when binding).
- If save fails with a hierarchy or permission message, fix the role or your own highest role, then retry.
- If a role gained elevated permissions after the panel was saved, remove or replace it on the panel—the bot refuses to grant it until the panel no longer includes that role.
- If two editors save at once, reload the panel to get the latest revision before saving again.