Skip to content

Kotbo 4 min read

Discord leveling system: give XP and reward your members

A leveling system gives experience to members who chat, and a level at each milestone. Discord has no levels built in, that’s a bot’s job. In Kotbo it’s the Levels module: you pick a preset or tune the gains one by one, hand out roles at certain levels, and the /rank command shows everyone’s card

Included in every plan, with a 15-day trial and no credit card

What levels are for on a Discord server

Levels turn presence into visible progress, and give people a reason to come back

  • Active members see their effort recognized, with a level card and a leaderboard
  • Reward roles unlock channels, colors or permissions over time
  • Staff spot the regulars without digging through history
  • A newcomer quickly sees who keeps the server alive

What Discord offers without a bot

Nothing. Discord doesn’t measure how long a member has been active or how many messages they sent. For levels you need a bot that counts activity and keeps everyone’s XP

Setting up levels with Kotbo

Everything is set on dash.kotbo.fr, in the Levels page. The module starts off, and a switch at the top of the page pauses levels without losing anything

  1. Pick a preset

    Basic, Fast gains, Proportional progression, Marathon or Prestige. A preset sets the XP gains and the curve in one go. You can fine-tune afterwards

  2. Set the XP gains

    By default a message earns between 15 and 25 XP, with a 60-second delay between two gains to discourage spam. Voice earns 5 XP per minute

  3. Choose the announcement channel

    Level-ups show in a dedicated channel, in the channel where the member wrote, or by direct message. The message is editable

  4. Add reward roles

    One level, one role: the member gets it on reaching the level. You can stack them or keep only the highest

  5. Turn the module on

    From then on every message counts. Levels are always computed from total XP

The progression curve

The XP needed to level up comes from a formula: base × level^exponent + linear × level. Two sliders are enough for most servers, and a preview shows the effect right away

  • Progression pace

    From very fast to very slow. A new server wants levels that come quickly, a years-old server wants them earned

  • Gap between levels

    The stronger it is, the more each level costs compared to the previous one

  • Maximum level

    0 means no cap. At the cap XP keeps accumulating but the level stops moving

  • Changing the curve later

    The level is recomputed from total XP: nobody loses XP, but levels get redistributed. The dashboard tells you how many members will change level before you save

Fine-tuning XP gains

Beyond presets, the XP gains tab handles every case

  • Role multipliers

    A role can earn more XP, for example for server supporters or premium members

  • Length bonus

    The longer a message, the more it earns, up to a maximum multiplier. Useful to reward real messages over a bare “ok”

  • Exclusions

    Channels, categories and roles that earn no XP, like #spam or #bots

  • Voice rules

    By default voice earns nothing if the member is muted or deafened, or in the AFK channel

  • Winning clan boost

    If you use clans, members of the last season’s winning clan earn more XP automatically

Importing an old leaderboard

Switching leveling bots and don’t want to start from zero? The Import tab loads a JSON file: a list of members with their XP or level. Kotbo matches each member by username, display name or tag. If only XP is given, the level is derived, and if only the level is given, the minimum XP for that level is assigned. A dry run shows what would change before anything is written

Commands for members

Members follow their progress with two commands

/rank membre:<member>
Shows the level and experience card, yours by default, with a button to customize it
/leaderboard
Shows the server leaderboard. The dashboard also offers a public leaderboard, with a page per server

Frequently asked questions

How do I make a leveling system on Discord?

Discord has no native one. With Kotbo, open the Levels page of the dashboard, pick a preset, the announcement channel and the reward roles, then turn the module on

How much XP does a message give?

By default between 15 and 25 XP, with at least 60 seconds between two gains. You can change both values, or pick a more generous preset

Does voice chat give XP?

Yes, 5 XP per minute by default. Voice earns nothing if the member is muted or deafened, or in the AFK channel, unless you change those rules

Can I give a role at a certain level?

Yes. In Reward roles, pair a level with a role. You choose whether members keep every role they earned or only the highest

What happens if I change the curve?

The level is always recomputed from total XP. Nobody loses XP, but some members change level, and the dashboard tells you how many before you save

Can I exclude channels or roles?

Yes. Excluded channels, categories and roles earn no XP. A shared blacklist can also cut progression across levels, economy, quests and clans at once

How do I bring levels over from another bot?

Export the member list with their XP or level as JSON, then load it in the Import tab. Run the dry run first to check the result

Try it on your server

15 days free, no credit card. Every plan includes the whole catalog