Skip to main content
Vanity Roles lets you automatically detect when members add your server’s vanity URL to their custom status and reward them with roles. When a member removes the vanity from their status, the roles are automatically taken away.
Your server must be Boost Level 3 (or Partnered) to use this feature. Discord only provides custom vanity URLs to servers that have reached Level 3 boosting.
Required Permission: Admin Access or higher — Server Owner, Extra Owner, Trusted User, or Administrator with a role above the bot can use these commands.
Premium Feature: This module requires an active Premium subscription. If the server’s premium expires, the vanity roles system will be automatically disabled.

Vanity Client Bot

Due to Discord API limitations, the main bot cannot reliably track custom status changes across all members in real time. To solve this, Vanity Roles uses a separate lightweight bot (the Vanity Client) that runs alongside ZEON specifically to monitor member statuses. You must invite the Vanity Client to your server for this module to function. It requires no extra permissions beyond reading member presences. → Invite Vanity Client Bot
The Vanity Client is a companion bot that works silently in the background. It does not respond to any commands — all configuration is done through the main bot using the .vanityrole commands.

Setting Up

Follow these steps to configure vanity roles for your server.
1

Invite the Vanity Client

Use the invite link above to add the Vanity Client bot to your server. Without it, status tracking will not work.
2

Run the Setup Command

Provide the award role(s), the log channel, and an optional reward message.
.vanityrole setup @Repper #vanity-log Thank you {user} for repping {servername}!
3

Verify the Configuration

Use the show command to confirm everything is set correctly.
.vanityrole show
4

Test It

Send a test message to make sure the output looks right before going live.
.vanityrole test
You can only assign up to 3 award roles. Roles with dangerous permissions (Administrator, Manage Server, etc.) are blocked and cannot be used as award roles.

Commands

Configuration

CommandDescription
.vanityrole channel <channel>Updates the log channel for reward messages
.vanityrole message <text>Sets the reward message
.vanityrole showShows the current configuration
.vanityrole resetDeletes the entire configuration

Role Management

CommandDescription
.vanityrole role add <role>Adds an award role (max 3)
.vanityrole role remove <role>Removes an award role

Controls

CommandDescription
.vanityrole enableEnables the vanity role system
.vanityrole disableDisables the vanity role system
.vanityrole testSends a test reward message to the configured channel
.vanityrole syncManually syncs vanity roles for all members (60s cooldown)

Customizing Messages

The reward message is fully customizable and supports both dynamic variables and custom embeds. When a member puts your vanity in their status, the bot sends the configured message to the log channel with all variables parsed into real data.

Using Variables

You can dynamically insert information like the user’s name, server name, or role count. Refer to the Variables reference for the full list. Available contexts: Server, Channel, User, Author, Target
.vanityrole message Thank you {user} for repping {servername}! You now have {userrolecount} roles.

Using Custom Embeds

Design a rich embed using the interactive embed builder, then attach it to your message with the {embed:name} syntax.
1

Create the Embed

.embed create vanity_card
Use the dropdown menu to customize title, description, color, images, and variables.
2

Attach to Message

.vanityrole message {user} is now a repper! {embed:vanity_card}
The {embed:name} placeholder is invisible in the final output. The bot strips it from the text and attaches the rich embed below the message. Variables placed inside the embed builder (like {user} in the title) will also parse correctly.

Limitations

  • The reward message only sends when a member adds the vanity to their status, not when it is removed.
  • If the configured log channel is deleted, messages will silently fail until a new channel is set.
  • The .vanityrole sync command has a 60 second cooldown per server to prevent abuse.