Members earn XP for messages, level up, and get a shout-out. Four numbers control the whole system; this page explains what each one actually does to the curve.
| License | Premium |
| Needs | Message Content intent, Send Messages in the announcement channel |
Optional
Where level-up messages are posted. Leave it empty and the message goes to the channel where the member was chatting — usually the better behaviour, because the shout-out lands where the person actually is.
Set it to a dedicated channel if level-ups would be noise in your main chat.
Up to 2000 characters · optional
Empty uses the built-in default in your server's language.
| Placeholder | Becomes |
|---|---|
{user} | A mention |
{level} | The level just reached |
{user.name} | Display name, no ping |
{username} | Discord username |
{server} | Server name |
{server.memberCount} | Member count |
GG {user}, you reached level {level}!
The announcement can also be a full embed via the embed builder.
0–100 · default 2
Awarded per qualifying message. 0 freezes progression without disabling the plugin — existing
levels stay, nobody advances.
0–3600 seconds · default 60
Quiet window after each XP grant. Messages sent inside the window earn nothing. This is the
anti-farming mechanism: without it, aaaa typed twenty times is twenty XP.
0 disables the cooldown entirely — do not do this unless you actively want spam to pay.
0–100 per minute · default 0 (off)
XP for time spent in voice channels, granted once a minute. 0 leaves voice out of the system
entirely, which is where every server starts.
| Setting | Default | Effect |
|---|---|---|
| Requires others | on | Nothing is earned while alone in a channel |
| Ignore muted | on | Muted or deafened members earn nothing |
Both defaults exist to stop the obvious exploit: parking a second client in an empty channel overnight. Turn Requires others off only if you deliberately want to reward AFK presence.
Two lists that remove XP entirely, before any multiplier is applied.
Channels that grant no XP at all. Naming a category covers every channel inside it, so
#bot-commands, spam channels and counting games are one entry each rather than a maintenance
chore.
Members holding one of these roles never earn XP. The usual candidates are a muted role and bot roles.
Make XP worth more — or less — in specific channels or for specific roles.
Multipliers are percentages: 100 is normal, 200 doubles, 50 halves, 0 disables. The
maximum is 1000.
| Type | Matches |
|---|---|
| Channel | That channel, or every channel in it if you pick a category |
| Role | Every member holding the role |
#events 200% Double XP during event nights
@Booster 150% A perk that costs you nothing
#off-topic 50% Active, but not the room you want to reward
Give a role automatically when a member reaches a level. One entry per level-and-role pair; a level can hand out several roles.
| Mode | Behaviour |
|---|---|
| Stack | Every role ever earned is kept |
| Highest only | Only the top role is kept, lower ones are removed |
Stack is the default and what members expect — collecting the set is part of the appeal. Choose Highest only when the reward roles are meant to read as one visible rank rather than a collection.
Rewards are granted on level-up. Adding a reward for a level members already passed applies it the next time they gain a level, not retroactively at the moment you save.
/my-level can answer with a rendered image instead of an embed.
| Setting | Effect |
|---|---|
| Enabled | Off keeps the setup but returns the embed |
| Accent colour | Progress bar, ticks and label. Empty = Cloudy violet |
| Background image | An https image, drawn desaturated and dimmed behind the card |
The card shows avatar, name, level, rank and a progress bar toward the next level. Leaving the whole card unconfigured is the same as off — every server keeps the embed until someone sets one up.
Three numbers decide how much XP each level costs. The rule:
next threshold = previous threshold + max( minimum step, previous threshold × growth rate )
1–10000 · default 100
XP required for the first level-up. Everything after that is derived from it.
0–100 (%) · default 15
How much more expensive each level is than the one before, compounded. 15 % means level 3 costs 15 % more than level 2, level 4 costs 15 % more than level 3, and so on.
| Growth | Feel |
|---|---|
| 0–5 % | Almost linear — high levels stay reachable, the number inflates fast |
| 10–20 % | The sweet spot. Early levels are quick, later ones are an achievement |
| 30 %+ | Brutal. Level 20 becomes effectively unreachable |
0–10000 · default 50
A floor on the jump to the next level. Without it, a small base combined with a low growth rate makes the first few levels almost free — 100 XP, then 105, then 110.
With the default 50, the increase is at least 50 XP no matter what the percentage produces.
| Level | Threshold | Increase applied |
|---|---|---|
| 1 → 2 | 100 | Base |
| 2 → 3 | 150 | max(50, 100 × 15 % = 15) = 50 |
| 3 → 4 | 200 | max(50, 150 × 15 % = 22.5) = 50 |
| 4 → 5 | 250 | max(50, 200 × 15 % = 30) = 50 |
| 5 → 6 | 300 | max(50, 250 × 15 % = 37.5) = 50 |
With these defaults the minimum step is what you feel — the growth rate only takes over once a threshold passes about 333 XP, because that is where 15 % first exceeds 50. Raise the base XP or lower the minimum step if you want the percentage to matter earlier.
The dashboard shows a live preview of the first five levels while you edit — use it.
| Command | Does |
|---|---|
/my-level | Show your own level and XP |
/level-leaderboard | Show the top-leveled members |