> ## Documentation Index
> Fetch the complete documentation index at: https://docs.prowlbot.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Reward Active Members with Prowl's Leveling System

> Prowl's leveling system awards XP for messages and voice activity, tracks ranks on a live leaderboard, and grants role rewards at configurable thresholds.

Prowl's leveling system turns everyday participation into a rewarding experience. Members earn XP by chatting, climb the server leaderboard, and unlock role rewards as they level up — giving your most active members a visible badge of honour and an extra reason to keep coming back.

## How XP Is Earned

Members accumulate XP by sending messages in your server. Each message awards a random amount of XP within a configurable range (default: 15–25 XP per message). A cooldown between awards (default: 60 seconds) prevents spam-farming.

<Note>
  XP is awarded per message, not per word or character. A one-word reply earns the same base XP as a paragraph — rewarding participation, not padding.
</Note>

The exact XP values and per-message cooldown are all configurable from the dashboard.

### XP Formula

The XP required to reach each level follows this formula:

```text theme={null}
XP required for level N = 100 * N + 50 * (N - 1)
```

For example, reaching level 5 requires 650 total XP, while level 10 requires 1,450 total XP.

### Role XP Multipliers

You can assign XP multipliers to specific roles. When a member holds multiple roles with multipliers, the **highest** multiplier wins. For example, if a member has a role with 1.5x and another with 2x, they receive 2x XP.

## Rank Cards

Any member can run `/level rank` in your server to see their personal rank card. The card displays:

* Their current **level** and **XP** progress toward the next level
* Their **server rank** (position relative to all other members)
* Their **username and avatar**

Rank cards are generated dynamically, so they always reflect up-to-the-minute XP totals.

```text theme={null}
/level rank [member]
```

The optional `member` parameter lets moderators (or any member) look up someone else's rank card directly.

## Leaderboard

The `/level leaderboard` command displays the top members in your server ranked by total XP.

```text theme={null}
/level leaderboard [page]
```

The leaderboard shows the top members along with their level and XP. It updates in real time — there is no cache delay. Use the `page` parameter to navigate through pages of results.

<Tip>
  Pin a weekly leaderboard screenshot in an announcements channel to create friendly competition and give top members recognition in front of the whole community.
</Tip>

## Role Rewards

Role rewards automatically assign a Discord role to any member who reaches a defined level. You can set as many reward tiers as you like.

| Level | Example Role  | Effect                                          |
| ----- | ------------- | ----------------------------------------------- |
| 5     | `🌱 Newcomer` | Granted when a member first reaches level 5     |
| 20    | `🔥 Regular`  | Granted at level 20                             |
| 50    | `⭐ Veteran`   | Highest-tier reward, visible in the member list |

<Note>
  Prowl must have the **Manage Roles** permission and its role must sit above any role it is expected to assign in your server's role hierarchy.
</Note>

## Configuring Leveling

<Steps>
  <Step title="Open Leveling Settings">
    Go to [prowlbot.xyz](https://prowlbot.xyz), select your server, and click **Leveling** in the left sidebar.
  </Step>

  <Step title="Toggle the XP System">
    Use the toggle at the top to enable or disable the leveling system entirely.
  </Step>

  <Step title="Set Base XP Values">
    Under **XP Settings**, configure:

    * **XP Rate** — a multiplier applied to all XP earned (default: 1.0)
    * **Message XP Range** — the minimum and maximum XP awarded per message (default: 15–25)
    * **Message Cooldown** — seconds between XP awards per user (default: 60s)
  </Step>

  <Step title="Set an Announce Channel">
    Optionally choose a channel where level-up messages are sent. If not set, level-up messages appear in the channel where the member is chatting.
  </Step>

  <Step title="Add Role Multipliers">
    Under **Role Multipliers**, select a role and assign a multiplier. For example, give your `Server Booster` role a `1.5x` multiplier as a perk.
  </Step>

  <Step title="Configure Role Rewards">
    Use `/level setrole <level> <role>` or configure role rewards from the dashboard to assign roles at specific levels.
  </Step>

  <Step title="Save">
    Click **Save Changes**. New XP rates apply to all messages going forward — existing XP totals are not affected.
  </Step>
</Steps>

## Level-Up Messages

You can customise the message that's posted when a member levels up. The default is:

```text theme={null}
🎉 {user} reached **level {level}**!
```

You can use a basic auto-styled message or configure a custom embed from the dashboard under **Leveling → Level-Up Message**.

## All Leveling Commands

| Command                         | Description                             | Permission    |
| ------------------------------- | --------------------------------------- | ------------- |
| `/level rank [member]`          | View your or another member's rank card | None          |
| `/level leaderboard [page]`     | View the XP leaderboard                 | None          |
| `/level toggle`                 | Enable or disable the XP system         | Manage Server |
| `/level setxp <member> <xp>`    | Set a member's XP to a specific value   | Manage Server |
| `/level reset <member>`         | Reset a member's XP to zero             | Manage Server |
| `/level config`                 | View the current leveling configuration | Manage Server |
| `/level setrole <level> <role>` | Set a role reward for a specific level  | Manage Server |
