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

# Level Rewards

> XP-based leveling system with role rewards, multipliers, and custom level-up messages.

# Level Rewards

> XP-based leveling system with role rewards, multipliers, and custom level-up messages.

## View level

<Tabs>
  <Tab title="Your level">
    ```bash theme={null} theme={null}
    ;level
    ```

    Shows your level card with current XP, progress to next level, and rank.
  </Tab>

  <Tab title="Another member">
    ```bash theme={null} theme={null}
    ;level (@member)
    ```

    View any member's level card.

    ```bash theme={null} theme={null}
    ;level @wanderer
    ```
  </Tab>
</Tabs>

## Setup

<Steps>
  <Step title="Enable leveling">
    ```bash theme={null} theme={null}
    ;level enable
    ```
  </Step>

  <Step title="Set the level-up channel">
    ```bash theme={null} theme={null}
    ;level channel (#channel)
    ```

    Omit `#channel` to reset to the same channel the member is chatting in.

    ```bash theme={null} theme={null}
    ;level channel #level-ups
    ```
  </Step>

  <Step title="Configure the level-up message">
    Set a custom embed or plain-text message sent when a member levels up. See [level-up message](#level-up-message) for full details.

    ```bash theme={null} theme={null}
    ;level message (embed code)
    ```
  </Step>

  <Step title="Set multipliers">
    Boost XP gain globally, for boosters, or per role. See [multipliers](#multipliers) for full details.

    ```bash theme={null} theme={null}
    ;level multiplier 1.5
    ```
  </Step>
</Steps>

## Level-up message

<Tip>
  Use variables like `{user.mention}` and `{level}` in your message, or build a fully custom embed with [embed scripting](/resources/scripting/embeds). Full variable list at [variables](/resources/variables).
</Tip>

<Tabs>
  <Tab title="Set">
    ```bash theme={null} theme={null}
    ;level message (embed code)
    ```

    **Available variables**

    | Variable         | Value                              |
    | ---------------- | ---------------------------------- |
    | `{user.mention}` | Mentions the member who leveled up |
    | `{user.name}`    | Member's username                  |
    | `{level}`        | The new level reached              |
    | `{server.name}`  | Server name                        |

    **Example — plain text**

    ```bash theme={null} theme={null}
    ;level message {user.mention} just reached level {level} in {server.name}!
    ```

    **Example — embed**

    ```bash theme={null} theme={null}
    ;level message {embed}$v{color: #7B68EE}$v{title: Level up!}$v{description: {user.mention} reached **level {level}**!}$v{thumbnail: {user.avatar}}$v{footer: {server.name}}
    ```
  </Tab>

  <Tab title="View">
    ```bash theme={null} theme={null}
    ;level message view
    ```

    Displays the currently configured level-up message.
  </Tab>

  <Tab title="Test">
    ```bash theme={null} theme={null}
    ;level message test
    ```

    Sends a test level-up notification as if you just leveled up.
  </Tab>

  <Tab title="Reset">
    ```bash theme={null} theme={null}
    ;level message reset
    ```

    Resets the level-up message back to the default.
  </Tab>
</Tabs>

## Multipliers

<AccordionGroup>
  <Accordion title="Global multiplier">
    Applies an XP multiplier to every member in the server.

    ```bash theme={null} theme={null}
    ;level multiplier (number)
    ```

    ```bash theme={null} theme={null}
    ;level multiplier 1.5
    ```

    `1.5` = members earn 1.5× the base XP. Set to `1` to remove the multiplier.
  </Accordion>

  <Accordion title="Booster multiplier">
    Extra XP for members who are currently boosting the server.

    ```bash theme={null} theme={null}
    ;level booster (number)
    ```

    ```bash theme={null} theme={null}
    ;level booster 2
    ```

    Stacks with the global multiplier if stack roles is enabled.
  </Accordion>

  <Accordion title="Per-role multiplier">
    Assign a custom XP multiplier to a specific role.

    <Tabs>
      <Tab title="Add">
        ```bash theme={null} theme={null}
        ;level rolemultiplier add (@role) (number)
        ```

        ```bash theme={null} theme={null}
        ;level rolemultiplier add @VIP 2.0
        ```
      </Tab>

      <Tab title="Remove">
        ```bash theme={null} theme={null}
        ;level rolemultiplier remove (@role)
        ```

        ```bash theme={null} theme={null}
        ;level rolemultiplier remove @VIP
        ```
      </Tab>

      <Tab title="List all">
        ```bash theme={null} theme={null}
        ;level multipliers
        ```

        Lists every active multiplier — global, booster, and per-role.
      </Tab>
    </Tabs>
  </Accordion>
</AccordionGroup>

## Ignore list

Channels or roles added to the ignore list do not gain XP.

<Tabs>
  <Tab title="Add">
    ```bash theme={null} theme={null}
    ;level ignore add (#channel or @role)
    ```

    ```bash theme={null} theme={null}
    ;level ignore add #bot-spam
    ;level ignore add @Muted
    ```
  </Tab>

  <Tab title="Remove">
    ```bash theme={null} theme={null}
    ;level ignore remove (#channel or @role)
    ```

    ```bash theme={null} theme={null}
    ;level ignore remove #bot-spam
    ```
  </Tab>

  <Tab title="List">
    ```bash theme={null} theme={null}
    ;level ignore list
    ```
  </Tab>
</Tabs>

## Voice leveling

Award XP to members while they sit in voice channels, on top of message XP. Every interval, active members in qualifying voice channels earn XP.

<Steps>
  <Step title="Enable voice leveling">
    ```bash theme={null} theme={null}
    ;level voice enable
    ```
  </Step>

  <Step title="Tune the XP rate (optional)">
    ```bash theme={null} theme={null}
    ;level voice xp (amount)
    ```

    XP awarded each interval. Defaults to `3`. Accepts `0`–`1000`.

    ```bash theme={null} theme={null}
    ;level voice xp 5
    ```
  </Step>

  <Step title="Tune the interval (optional)">
    ```bash theme={null} theme={null}
    ;level voice interval (seconds)
    ```

    How often XP is granted. Defaults to `60`. Accepts `10`–`3600`.
  </Step>
</Steps>

### Requirements & filters

<AccordionGroup>
  <Accordion title="Minimum members">
    Require a minimum number of members in a voice channel before anyone earns XP — stops solo AFK farming.

    ```bash theme={null} theme={null}
    ;level voice minmembers (number)
    ```

    ```bash theme={null} theme={null}
    ;level voice minmembers 2
    ```

    Defaults to `2`. Accepts `1`–`99`.
  </Accordion>

  <Accordion title="Ignore AFK channel">
    Skip the server's designated AFK voice channel.

    ```bash theme={null} theme={null}
    ;level voice afk (on/off)
    ```
  </Accordion>

  <Accordion title="Ignore self-muted members">
    ```bash theme={null} theme={null}
    ;level voice muted (on/off)
    ```
  </Accordion>

  <Accordion title="Ignore self-deafened members">
    ```bash theme={null} theme={null}
    ;level voice deafened (on/off)
    ```
  </Accordion>

  <Accordion title="Ignore streaming members">
    ```bash theme={null} theme={null}
    ;level voice streaming (on/off)
    ```
  </Accordion>
</AccordionGroup>

### Merge vs separate XP

Decide whether voice XP feeds into the same level as message XP, or is tracked separately.

```bash theme={null} theme={null}
;level merge (on/off)
```

* `on` — voice XP merges into the member's main level.
* `off` — voice XP is tracked on its own, separate from message levels.

### Voice reward roles

Voice leveling has its own reward roles, separate from chat reward roles. Manage them from the [dashboard](https://raze.lat/dashboard) under **Leveling → Voice → Voice Reward Roles**, where you can grant a role at a chosen voice level.

The same section has a **Stack Voice Roles** toggle:

* On — members keep every voice reward role they've earned.
* Off — only the highest earned voice role is kept; lower ones are removed.

### Voice leaderboard

View a leaderboard ranked purely by voice XP.

```bash theme={null} theme={null}
;level voice leaderboard
```

Aliases: `;level voice lb`, `;level voice top`. Only members with voice XP appear.

### Voice level-up message

Voice level-ups can use their own custom embed, independent of the chat level-up message. Set it from the [dashboard](https://raze.lat/dashboard) under **Leveling → Voice → Voice Level-up Embed** — pick a saved template or write a custom embed script. Leave it empty to use the built-in default message.

Supports the same variables as the chat level-up message (`{user.mention}`, `{level}`, `{rank}`, etc.). See [level-up message](#level-up-message).

To turn voice leveling off entirely:

```bash theme={null} theme={null}
;level voice disable
```

## Configuration

View the full leveling setup for your server.

```bash theme={null} theme={null}
;level config
```

Returns a summary of:

| Field              | Description                               |
| ------------------ | ----------------------------------------- |
| Status             | Enabled or disabled                       |
| Channel            | Where level-up notifications are sent     |
| Cooldown           | Seconds between XP gains per member       |
| XP range           | Min and max XP awarded per message        |
| XP multiplier      | Active global multiplier                  |
| Formula multiplier | Curve multiplier used in the XP formula   |
| Booster multiplier | Active booster multiplier                 |
| Stack roles        | Whether multipliers stack                 |
| Ignore commands    | Whether bot commands are excluded from XP |
| Top role           | Highest level role reward configured      |

To disable leveling:

```bash theme={null} theme={null}
;level disable
```
