- Documentation
- Engagement
- Levels & XP
Levels & XP
Members earn XP for chatting and level up. Learn how to turn the system on, show rank cards and hand out level roles.
Quick look
This is how it looks in Discord – with sample data.
Levels that make people want more.
Everyone who joins the conversation earns experience – and yurna celebrates every level-up with your community.
Mira
Who's joining game night tonight? 🎲
Interactive demo with sample data. Nothing is changed on a real server.
Write a message. Step 1 of 3
With the leveling system, members earn XP (experience points) when they chat on your server. Their XP determines their level. It rewards active members: /rank shows a rank card, the leaderboard shows who is most active, and milestones hand out roles for levels automatically.
How it works#
- Each message is worth a random 1 to 60 XP.
- XP is granted at most once per minute per member and server. Ten messages in one minute still earn XP only once – spamming doesn't pay off.
- Bots don't earn XP.
- The level is calculated from total XP: level n needs 100 × n² XP.
| Level | XP required |
|---|---|
| 1 | 100 |
| 5 | 2,500 |
| 10 | 10,000 |
| 20 | 40,000 |
| 50 | 250,000 |
In the dashboard#
- Open Levels & rewards → Levels & XP. You land on the leaderboard.
- If leveling is still off, you'll see Getting started with Levels & XP at the top. Click Turn on with recommendation – members earn XP from now on.
- Under Level roles & rank card you can continue:
- Set up level roles opens Milestones. Create a rule with the source Level and the action Give role.
- Design rank card opens the Card designer.
- Import levels at the top right brings levels over from another bot (see below).
- To change one member's XP, open their page (Welcome & members → Members) and use Adjust XP & level.
Note
Leveling messages (a congratulation with a rank card on level-up) are turned on by command: /leveling settings levelup-messages:True. They're posted in the channel where the member just chatted. They're off by default.
Level roles#
In yurna, level roles are part of Milestones. A rule like "From level 5 → Give role" assigns the role as soon as someone reaches that level – including everyone who already has it when you create the rule. For a role ladder where everyone keeps only the highest tier, add a second rule such as "From level 10 → Take role A".
Setting XP and levels by hand or moving from another bot#
- One member:
/member xp level <user> <level>sets a level,/member xp set|add|remove <user> <xp>sets, adds or removes XP. In the dashboard, use Adjust XP & level on the member's page. - Whole leaderboard: Under Server & plan → Settings → Export & import a wizard walks you through moving from MEE6 (levels and level roles), Lurkr, Tatsu, Arcane or your own table (CSV/JSON with Discord ID and level or XP). yurna shows how many rows are valid and who will change before anything is saved; you choose "Only take higher values" or "Overwrite".
- Back up and move: There you can also export a yurna backup (settings, level roles, XP, reputation, coins) and import it on this or another server – roles are found again by their name.
- Levels are converted with yurna's curve (level L starts at 100 · L² XP). Other bots count differently – so it's best to import the level, not the XP number.
- Every change is recorded in the change log. You need "Manage Server" or Administrator.
By command#
You set up everything about leveling with /leveling. You need Manage Server. Replies to /leveling are only visible to you.
| Command | What it does | Important options |
|---|---|---|
/leveling settings | Turns Gaining XP and Leveling messages on or off | xp, levelup-messages – leave one out to keep it unchanged |
/leveling status | Shows the state of the leveling system | – |
/leveling level-role add | Adds or updates a level role | level, role, remove-below (take the role away again if the level drops) |
/leveling level-role remove | Removes a level role; roles already given stay | level, role (empty = all roles of this level) |
/leveling level-role list | Lists all level roles | – |
/leveling xp view | Shows the XP settings | – |
/leveling xp change | Switches Gaining XP or Leveling messages | type (Gaining XP / Leveling messages), action (Enable / Disable) |
/leveling reset | Resets a member's XP to 0 | user |
/rank | Shows level and XP as a rank card – visible to everyone in the channel | user (empty = you) |
/leaderboard xp | The 10 members with the most XP | – |
/leaderboard global | Global top 10 across all servers | – |
/member xp set|add|remove | Sets, adds or removes a member's XP | user, xp |
/member xp level | Sets a member's level | user, level |
Everyone can use /rank and /leaderboard. /member xp needs "Manage Server".
Common questions#
Why does someone get little XP even though they chat a lot?#
XP is granted at most once per minute. Steady activity counts for more than bursts of messages.
No level-up messages appear. What now?#
They're off by default. Turn them on with /leveling settings levelup-messages:True and check with /leveling status. yurna also needs permission to send messages and attach files in the channel.
What does "Leveling is disabled in this server" mean?#
Gaining XP is off. Turn it on in the dashboard with Turn on with recommendation or with /leveling settings xp:True.
Why isn't the level role assigned?#
The role must be below yurna's role in the role list, and yurna needs "Manage Roles".
Can I bring my levels over from MEE6?#
Yes. Use Import levels on the leaderboard or Server & plan → Settings → Export & import.
See also#
Last updated on 30 October 2026