Skip to content

Leveling & XP

Messages are the primary way to earn XP. Each qualifying message starts with a base amount (default: 5 XP), then bonuses are applied based on message quality factors:

FactorDefault multiplierEffect
Word count 25++0.5×Longer messages earn more
Word count 50++1.0×Replaces the 25+ bonus
Word count 100++1.5×Replaces the 50+ bonus
Attachment (image, file)+0.5×Sharing media is rewarded
Reply+0.5×Engaging with others
Mention+0.5×Directing conversation

Multipliers stack on top of the base 1.0×. The formula is base_xp × (1.0 + sum of applicable multipliers).

Example with defaults: A 60-word reply with an attached image earns 5 × (1.0 + 1.0 + 0.5 + 0.5) = 15 XP. A short message with no bonuses earns the base 5 XP.

When someone reacts to your message, you earn XP as the message author. With defaults: 3 XP base per unique reactor, counting up to 3 unique reactors per message. Additional reactors beyond the cap don’t award more XP.

If your server has quality reactions configured, reactions using those designated emoji carry a higher weight multiplier (default 2.0×), meaning the author earns more XP from them. Some servers also enable reactor XP, which gives a small amount to the person adding the reaction.

Run /quality-reaction list to see if any quality emojis are set up on your server.

Thread XP is an optional feature (disabled by default). When enabled, thread creators earn XP each time someone else posts in their thread. The amount, cooldown, and daily cap are all configurable by admins.

A separate contributor bonus can also be enabled, giving posters a small XP boost for participating in threads they didn’t create.

After a message earns XP, there’s a cooldown before your next message can earn again (default: 60 seconds). Messages sent during cooldown still post normally - they don’t earn XP.

The cooldown is per-user, not per-channel. Posting in a different channel doesn’t reset it.

/level shows your own card. /level @someone shows theirs.

The card is an ANSI-styled embed with several sections:

Header

  • Level and Rank (your leaderboard position, e.g. #3) on the same line
  • Rank title - a label based on your level (see table below)

Progress

  • A visual progress bar showing how far you are toward the next level (percentage)
  • XP counter - current XP within the level / XP needed for the next level

Engagement stats - six metrics showing your server participation:

StatWhat it counts
MessagesTotal messages sent
Avg LengthAverage word count across your messages
ThreadsThreads you’ve created
Thread MsgsMessages you’ve posted in threads
RepliesMessages that were replies to someone
ReactionsTotal reactions received on your messages

Streak - your current streak in days and your all-time best streak. Shows “No streak yet” if you haven’t built one.

Top Reactions - below the card, the emoji reactions you receive most often (with counts). Only appears if you’ve received reactions.

Footer - shows your next rank title and the level needed to reach it.

LevelTitle
0Newcomer
1Initiate
10Novice
20Apprentice
30Journeyman
40Adept
50Elite
60Veteran
70Expert
80Master
90Legend

/leaderboard shows the server’s top members by XP, paginated with up to 10 entries per page.

Each entry shows:

  • Rank position (medals for top 3: gold, silver, bronze)
  • Display name, level, and rank title
  • Total XP
  • Three quick stats: messages sent, reactions received, and current streak days

A “Your Rank” section appears at the bottom if you’re not on the current page, showing your own position, level, XP, and rank title.

Use the navigation buttons to page through the full leaderboard (up to 100 entries).

Default progression is linear. Each level requires more XP than the last, increasing by the step value (the gap between first_level_xp and second_level_xp).

With defaults (first_level_xp=10, second_level_xp=25, step=15):

LevelTotal XP needed
110
235
5200
10775
203,050
5018,875

An exponential progression mode is also available, matching MEE6’s XP curve. Your admin chooses which mode to use.

At certain levels, the bot can automatically assign Discord roles. Run /list-role-rewards to see what’s configured on your server.

Cooldown. You sent another message within the cooldown window. Wait and try again.

Ignored channel. You’re posting in a channel excluded from XP. Run /ignore-channel list to see excluded channels.

Ignored role. You have a role that’s excluded from earning XP. Run /ignore-role list to check.

Bot or command messages. Bot messages and slash command invocations don’t earn XP - only regular member messages do.