Levels and role rewards

This page covers how FlaviBot turns XP into levels, the optional level cap, role rewards, editing XP by hand and starting over.

How XP becomes a level

Each level costs more than the one before it. The XP needed to go from a level to the next one is:

5 x level x level + 50 x level + 100

So level 0 to 1 costs 100 XP, level 1 to 2 costs 155, level 2 to 3 costs 220, and it keeps growing. What a member sees on their rank card is the progress inside their current level, not their lifetime total.

Cumulative totals, if you want a sense of the scale:

LevelTotal XP from zero
1100
2255
3475
51,150
104,675
2023,850
50268,375
1001,899,250

At the default 1x rate, level 10 is roughly 230 qualifying messages, or about ten hours in voice. Halving or doubling the XP rate moves those numbers with it.

The curve is the same for the text track and the voice track, so in Separate mode a voice level 10 costs exactly as much as a text level 10.

Maximum level

Max Level, under Additional Settings, stops progression at a level you choose. 0 means no limit, and that is the default.

Once a member is at the cap they keep earning XP inside that level until the bar is full, then stop. They never level up again, so no further announcement is posted and no higher reward role is granted. The cap applies per track, so in Separate mode text and voice each stop at the same number independently.

Role rewards

Role Rewards map a level to a role. When a member reaches that level, the bot gives them the role.

Two rules decide what actually happens:

  • Only one role is granted per level-up: the highest tier the member has now reached. If someone jumps from level 4 to level 12 in one go and you have rewards at 5, 10 and 15, they get the level 10 role, not all three.
  • Remove Old Reward Roles (Additional Settings, off by default) strips every strictly lower reward role when a new one is granted. Leave it off if reward roles are meant to stack visibly, turn it on if they are meant to be a single rank.

For the grant to work, the bot's own highest role must sit above the reward role in your role list, and the role must not be a managed one (a bot role or a booster role). If the bot cannot give a role, the rest of the level-up still happens: the announcement is posted and the member keeps their level.

The dashboard also refuses reward roles you would not be able to assign yourself, so you cannot use the level system to hand out a role above your own.

Rewards and leveling mode

In Separate mode, reward roles are granted by the text track only. A voice level-up never grants a reward role, otherwise every voice level would re-grant whatever role sits at that number. In Combined and Sum mode there is one level being announced, so every level-up can grant.

How many rewards you can set

TierRole rewards
Free3
Silver10
Gold25
Platinum50

Saving more than your tier allows is rejected and the dashboard shows an upgrade prompt rather than silently dropping rows.

Editing XP by hand

/xp lets anyone with Manage Server correct a member's progress. It is slash only.

SubcommandWhat it does
/xp add user amount [kind]Grants XP, levelling the member up if it is enough
/xp remove user amount [kind]Takes XP away
/xp set user level xp [kind]Sets an exact level and an exact XP-within-that-level
/xp reset user [kind]Puts the member back to level 0 with 0 XP

kind picks the track: message (the default) or voice. Amounts go up to 1,000,000,000 and levels up to 1,000.

Three things to know before you use it:

  • /xp never posts a level-up announcement and never grants reward roles, even when the member crosses a reward threshold. Give the role by hand if you want it.
  • It refuses to run if leveling is disabled, and it refuses to run on a bot account.
  • If another bot owns leveling for your server, /xp tells you which one to use instead of writing to the wrong place.

Starting over

Sometimes you want a clean slate — a new season, a fresh start after a spam wave, or a member asking to be taken off the leaderboard. The Danger zone at the bottom of the Levels page does that.

It is limited to members with the Manage Server permission. Dashboard access granted through the Access settings is not enough, even though it is enough to change every other setting on the page.

Resetting one member

Pick the member, confirm, done. Their level, XP, voice level, voice XP, message count and voice minutes all go back to zero.

Resetting the whole server

Every member goes back to level 0. Because a large server can have hundreds of thousands of members, this runs as a background job — you can follow it, and cancel it, from the Jobs page. While it runs, nobody earns XP on the server: messages and voice time are ignored until the reset finishes, so nothing lands half-way through and survives the wipe.

To make an accidental click impossible, the confirmation asks you to type your server's name.

A cancelled reset is not undone. It stops where it is, leaving the server partly reset, and the Jobs page offers to resume it.

What a reset does not do

Reward roles stay. Nothing tracks which level roles a member is currently wearing, so a reset cannot reliably take them back — and even if it did, persistent roles would hand them out again on the member's next rejoin. Remove them yourself in Discord if you want a true restart, ideally before you run the reset.

The XP history

Both resets offer an extra option: also delete the XP history.

Leave it off — the default — and the levels are still reset, but the record of how they were earned stays in your Stats page. Turn it on and those charts start over too.

The history is also the only copy we could rebuild your server's levels from if something ever went wrong on our side, so deleting it is the one part of a reset that cannot be undone. Turn it on when erasing the record is the point; otherwise the default is the safer choice, and it changes nothing a member sees.

Created on · Last updated on