Tutorials3 min read

Discord Reaction Roles: Buttons, Dropdowns & Reactions | TeraOne 2026

Self-service roles via emoji reaction, button (up to 25) or string-select (up to 25). WYSIWYG embed editor with live preview, image upload and invert mode.

Reaction Roles: Self-service roles in the form your server needs

Tired of handing out roles manually? Reaction Roles builds embeds your users can use to grant and revoke their own roles — as emoji reactions, buttons, or dropdowns.

What it does

  • Up to 40 reaction-role parts per server — each part is a Discord embed with its own config. Spread them across channels: pronouns picker in #intro, notification opt-ins in #announcements, game roles in #gaming.
  • 3 interaction types — emoji reactions (Unicode + custom guild emoji, up to 20). Buttons (up to 25, 4 styles). String-select dropdown (up to 25 options with label + description).
  • WYSIWYG embed editor — title (256), description (4096), up to 25 fields, image, thumbnail, footer, accent color. Live preview in the dashboard.
  • Image upload with auto-compression — PNG/JPG up to 8 MB → auto-converted to WebP, max 2000 px wide, ~80 % size reduction.
  • Invert mode — default: click grants role, re-click removes. Inverted: role already assigned, click removes. Perfect for opt-out notifications.
  • Draft → Publish → Edit → Re-Publish — work on the part in the dashboard while users see nothing. Edits later update the original message; assignments persist.

How to set it up

  1. Go to Dashboard → Reaction RolesNew Part.
  2. Pick an interaction type:
    • Emoji for classic reactions.
    • Button for modern UI with text labels.
    • Dropdown for long lists (pronouns, languages, countries).
  3. Build the embed — title, description, optional image upload.
  4. Add role options — per option: role, label, emoji, description.
  5. Decide multi vs single: "multiple roles allowed" on = multi-select, off = exactly one.
  6. Pick a channel, click Publish — the bot posts the message and registers the interactions.

More on the feature overview.

Tips for better results

  • Buttons beat emoji reactions on mobile — text labels are clearer than Unicode emojis. Also: buttons (25) > emoji reactions (20).
  • Dropdown for >10 options — buttons get long, reactions get cluttered. Pronouns, countries, languages are classic dropdown cases.
  • Invert for opt-out notifications — "click to unsubscribe from updates". Users keep the role by default and remove it when they're done.

FAQ

Can I convert an existing message into reaction roles? No — the bot must have posted the message itself. Recreate old messages via Draft → Publish.

What happens when I edit an emoji part? Re-publish updates the embed AND reconciles the reaction emojis — new ones added, removed ones deleted. Role assignments persist.

How many reactions per message work well? Discord caps reactions at 20 unique per message. For more options use buttons (25) or dropdowns (25).


Need help? Join our Discord server.