Modules
Leveling
Members earn XP for chatting, talking in voice, using commands and reacting. XP adds up to levels, levels can give roles, and everyone can see where they stand with /rank, /leaderboard and a web leaderboard.
Setting it up
- Open Leveling in the dashboard. It's under Community Tools.
- Turn it on with the switch at the top right.
- Pick how members earn XP on the Earning XP tab. Messages are on by default.
- Press Save Changes. Members start earning straight away.
Earning XP
Each way of earning has its own switch, XP amount and cooldown. The cooldown stops spam: a member earns once, then waits.
| Way | How it works |
|---|---|
| Messages | A random amount between two numbers for each message. 15 to 25 XP, once a minute, by default. |
| Voice | XP every minute in a voice channel. By default muted and deafened members don't earn, and members alone in a channel do. You can change each one. The AFK channel never earns. |
| Commands | XP for using slash commands, from Sparrow or any other bot. |
| Reactions | XP for reacting to messages. |
Level speed changes all XP at once: Slower halves it and Faster doubles it. The dashboard shows how many messages level 10 takes at your settings. You can also stop some channels or roles from earning, and choose whether members lose their XP when they leave or are banned.
Voice XP limit stops voice XP once a member has earned a set amount from voice per day, per week or per month, for example 5,000 a day and 20,000 a week. Only voice XP counts toward it: messages, commands and reactions are never limited. A new day starts at midnight in the server's time zone. It's free.
Crowd bonus gives more voice XP when more people are in the channel, counting the member but not bots. Set ranges like 3 to 5 people and 6 to 10, or leave the end empty for "or more", and give each a bonus as a percent (+5% of their voice XP) or as XP (+3 XP a minute). It can count in every voice channel or only the ones (or categories) you pick. A bonus limit per day, week or month stops the bonus once a member has earned that much of it; they still get their normal voice XP. Free servers get 2 ranges, Premium 5.
Levels
Each level takes a bit more XP than the one before. With the default message XP (about 20 a message):
| Level | Total XP | About |
|---|---|---|
| 1 | 100 | 5 messages |
| 5 | 1,150 | 58 messages |
| 10 | 4,675 | 234 messages |
| 20 | 23,850 | 1,193 messages |
| 50 | 268,375 | 13,419 messages |
Level up message
Sparrow can post a message in a channel you pick when someone levels up. Write it as text, an embed or Components V2, with a live preview. Only the member who levelled up is pinged.
| When to post it | What happens |
|---|---|
| Every level | A message each time someone levels up. |
| Every few levels | At levels like 5, 10, 15. You pick the number. |
| Levels I pick | The levels you type, like 5, 10, 25, 50. |
| Reward levels | Levels that give a reward role. |
Tick any mix of the last three, like reward levels and the levels you pick. It posts at all of them.
Want a different message when someone gets a role? Open the With a reward role tab above the message and turn it on. Levels that give a reward role post that one, like "{user} is now {role}!", and every other level posts the normal message.
These placeholders work in the message, along with the usual ones like {server}:
| Placeholder | Becomes |
|---|---|
{user} | Mentions the member. |
{level} | Their new level. |
{nextlevel} | The level after that. |
{xpneeded} | XP they still need for the next level. |
{xp} | Their total XP. |
{role} | The reward role they just got. Empty on levels without one, so use it in the With a reward role message. |
Role rewards
Give a role when members reach a level. Choose whether they keep every reward role they've reached or only the highest one, and whether a role is taken away if their level drops (for example after /xp remove). Members who leave and come back get their reward roles back if they still have their XP.
You can also give roles for a number of messages, hours in voice or reactions. Every message and reaction counts, but only once every few seconds per member (5 by default, you pick), so spam doesn't count. Voice time counts every minute with the same rules as voice XP, even if voice XP is off. Free servers get 5 of each, and Premium has no limit.
Added a reward after members already passed it, or imported XP from another bot? Press Update everyone's roles on the Role rewards tab. Sparrow checks every member and gives the reward roles they've earned, and takes away ones they no longer earn if your settings say so. You can do it once every 10 minutes.
Boosters
Roles or channels can earn more XP, like +50% for Server Boosters. Free servers get 3 role boosters and 3 channel boosters, and Premium has no limit. With Stack role boosters on, a member with two booster roles gets both added up. Off, they only get the biggest one. Channel boosters add on top either way.
Voter boost gives members more XP for 12 hours after they vote for Sparrow on top.gg: pick 5% or 10%. It's on by default, adds on top of boosters, and puts a Vote for boost button on /rank. Turning it off needs Premium.
Double XP events
On the XP events tab, plan a time when members earn more XP: 1.5x, 2x (the usual), 3x, or your own number from 1.1x to 5x, from a start to an end time (up to 14 days, in your own time). Each event counts down to when it starts. Pick where it counts (the whole server, all text channels, all voice channels, or channels and categories you pick) and who gets it (only some roles, and never some roles). Sparrow can post in a channel when it starts and when it ends, and /rank mentions it while it runs. If two events run at once, the biggest counts. Without Premium you can have one event at a time, up to 2x. Premium allows 10 at a time and up to 5x.
Activity streaks
Turn on Activity streaks on the Earning XP tab and members build a streak by earning XP every day. You can ask for a minimum amount of XP in a day for it to count. Streaks can give bonus XP (a set percentage for each day after the first, 2% by default, up to a limit you pick, 20% by default), or just show on /rank. Missing a whole day starts it over. Days change at midnight in the time zone you pick (the same one XP decay uses). The rank card on /rank shows a flame badge with the number of days, unless you turn that off. A member's own /rank also says whether today counts yet, or how much more XP they need today to keep their streak. It's free.
Rank card
/rank shows a card with the member's avatar, level, rank and a progress bar to the next level. Pick its colors on the Rank card tab, or use your own background image. The preview there is exactly what members see.
Members can also style their own card: /rank has an Edit your card button that opens a private editor with color menus and custom colors. With Premium they can upload their own background image too. It only changes their card, and Use the server's cardundoes it. You can turn this off with Let members edit their own card on the Rank card tab.
On a server without Premium, members can change their card for 12 hours after they vote for Sparrow on top.gg (/vote). Their card keeps the colors they picked after that, and editing it again needs another vote. With Premium, members can edit their card any time.
Leaderboard
| Where | What it shows |
|---|---|
/leaderboard | The top 10 in Discord, where you are, and a link to the web leaderboard. Previous and Next buttons go down to place 50. |
| Web leaderboard | A page with everyone's rank, level, XP, messages, voice hours and reactions, with a podium for the top 3 and arrows for who moved. Sort it by XP, messages, voice, reactions or commands, search, and jump to yourself. It also shows how to earn XP and your role rewards. |
| XP calculator | On the web leaderboard. Pick a level to see the XP it takes, and about how many messages, reactions or commands, or how long in voice, from your server's settings. Logged in, it starts from your own XP. There's also one under Resources → XP calculator, where you type in the settings yourself. |
| Auto leaderboard | A top 10 message Sparrow keeps up to date in a channel you pick, with a countdown to the next update. Its Previous and Next buttons show places 11 to 50 to just the person who clicks. |
| Image or Text | /leaderboard and the auto leaderboard are an image by default: a podium for the top 3, avatars and progress bars, in your rank card colors. Text shows a list of names instead. |
| Up and down arrows | Show who moved up or down, and who's new in the list, since the last update. Without an auto leaderboard, since the day before. |
Staff (the owner, and anyone with Administrator or Manage Server) can click a member's name on the web leaderboard to give, remove or set XP, set a level or reset them, with a reason. It works like /xp: reward roles update and it's logged.
The web leaderboard is open to anyone with the link by default. You can make it for server members only (they log in with Discord) or turn it off. Its link uses your server's ID, or a custom name like /leaderboard/your-server with Premium.
Everyone with XP is on the leaderboards by default. With Premium you can hide banned members, members who left, and members who haven't earned XP in 7, 14, 30 or 60 days. Hidden members keep their XP, don't take up a rank, and show again when they come back or earn XP.
XP decay
Members who stop earning XP can slowly lose some. Turn it on in the XP decay tab. It runs once a day at 00:00 in the time zone you pick, and earning any XP stops it straight away.
| Setting | What it does |
|---|---|
| Start after | How many days without earning XP before they start losing it. 30 days, or with Premium 7, 14, 60 or your own number of days or months (up to a year). |
| Minimum XP | Also take XP from members who earn less than a set amount, like 200 XP every 2 weeks. Pick the window in hours, weeks or months. Earning the minimum stops it straight away. |
| How much | A percentage of their XP a day (1% by default), or a set amount of XP a day. |
| How low it can go | Never lose a level (the default, they only lose progress towards the next one), never below a level you pick, or all the way to 0. |
| Reward roles | If they can drop a level, choose whether they lose the reward roles above their new level. If they do, they get back the role their level still earns. |
| Skip these roles | Members with any of these roles never lose XP, like staff. |
| Show it on /rank | While they're losing XP, /rank says why (inactive, or under the minimum), how much XP they had, and how much more they need to earn. |
Members who left the server don't lose XP. It waits for them if they come back.
Import from another bot
Moving from another bot? The Import tab brings your members' levels over. You see who's found before anything changes, and reward roles are given to match. Sparrow keeps its own XP table, and members keep their level.
| Bot | What comes over |
|---|---|
| MEE6 | Everyone on your leaderboard, with their XP and messages. Make your MEE6 leaderboard public first. MEE6 uses the same XP table as Sparrow, so XP carries over as it is. |
| Noctaly | Everyone on your leaderboard, from a saved copy of the page. Log in on noctaly.com, open your server's leaderboard and scroll to the bottom until no more members load, then save it with Ctrl+S (Cmd+S on a Mac) as Webpage, Complete in Chrome, Edge or Firefox, and upload the .html file. Saved before reaching the bottom, only the top 100 come over. Members with Discord's default avatar can't be matched and start at 0. Noctaly's XP table is different, so members keep their level. |
| Lurkr | Everyone on your leaderboard, straight from Lurkr if it's public, or from the file in Lurkr's dashboard (Danger Zone > Download Leveling Data). Its XP table is different, so members keep their level and how far into it they were. |
If someone already has XP in Sparrow, pick what happens: keep the higher, replace it, or add to it. Members who aren't in the server keep their imported XP for when they come back.
To leave quiet members behind, tick Below level, With less XP than, or both, and enter a number. With both, a member below either one isn't imported. Levels and XP are as they'll be in Sparrow, and the preview says how many are left out.
Resetting XP
/xp reset member resets one member, /xp reset role everyone with a role, and /xp reset everyone the whole server. The same is on the dashboard: Reset everyone's XP at the bottom of the Earning XP tab. XP and levels go back to 0, and level reward roles are taken away unless you pick keep_roles.
Resetting a role or everyone shows how many members it hits and asks first. A backup is saved before it runs, and with Premium the Backups tab puts it back. With Logs on, the reset is logged once with who did it and why.
Backups
Sparrow saves a copy of everyone's XP once a day, and before every import or restore. If someone resets members' XP, by mistake or on purpose, open the Backups tab, pick a day and restore it. You see who changes before anything happens.
| Restore | What happens |
|---|---|
| Only give back lost XP | Members who have less XP now get it back. Nobody loses anything. Best after a mass reset. |
| Exactly as it was | Everyone goes back to how they were that day. XP earned since is undone. |
Backups are a Premium feature. They're kept 30 days, the oldest deleted as new ones are saved. A copy is saved just before every restore too, so a restore can be undone.
Commands
| Command | What it does |
|---|---|
/rank | Your rank card, or someone else's. |
/leaderboard | The top 10 and where you are. Sort it by XP, messages, voice, reactions or commands. |
/xp | Give, remove or set XP, move XP from one member to another, or reset a member, a role or everyone (see Resetting XP). |
/level | Put a member at a level, or move them up or down some levels. |
See all commands on the commands page.
Good to know
- Sparrow needs Manage Roles for reward roles, and its role has to be above them.
- Bots never earn XP.
- Levels go up to 1,000. Members keep earning XP after that, so the leaderboard still ranks them.
- Only Administrator, Manage Server or a Sparrow Master Role can use
/xpand/level, even if a server shows them to other roles in its Integrations settings. /xpand/levelalso work on members who left or were banned: use their user ID. No roles are changed for them.- Staff changes with
/xpand/levelnever post a level up message. Add a reason and, with Logs on, every change is logged with who made it. - If something can't be done, like posting in a deleted channel, the Leveling page shows why.
Free servers & Premium
| Free | Premium | |
|---|---|---|
| Role and channel boosters | 3 of each | No limit |
| Roles for messages, voice hours and reactions | 5 of each | No limit |
| Choose who earns in voice | No | Yes |
| Voice crowd bonus ranges | 2 | 5 |
| Hide members from leaderboards | No | Yes |
| Rank card background image | No | Yes |
| Custom leaderboard URL | No | Yes |
| Auto leaderboard updates | Every 24 hours | Every 10 minutes |
| XP decay starts after | 30 days | 7, 14, 30 or 60 days |
| Members' own card background image | No | Yes |
| XP backups | No | Kept 30 days |