How to run weekly or monthly Discord XP seasons
XP Seasons takes the message and voice XP that the Leveling module already awards and keeps a separate, time-boxed score for a weekly or monthly season. When a season ends, its scores are saved and a new season starts at zero, while lifetime XP, levels and level roles stay exactly as they are. It is an opt-in Pro module that works alongside Leveling, not a second currency or a reset switch.
Start freeStart free. Free includes 1 bot and the Free modules; Pro is $9.99/month and adds more bots, every module and custom modules.
Before you start
- A running bot with Leveling enabled and already earning message or voice XP, unlocked by Pro. XP Seasons has no XP of its own: it only counts what Leveling awards while both modules are enabled for that server.
- Manage Server access, or whichever role you use for dashboard settings, to turn on XP Seasons and pick Weekly or Monthly for the server.
- Patience for the first real test: a season boundary is only checked the next time someone earns XP or runs a /season command, not on a background timer, so do not expect an instant rollover at the exact UTC second.
Understand what XP Seasons actually counts
XP Seasons does not add a new way to earn XP. It reads the same message and voice XP that Leveling already awards while both modules are enabled for the server, and keeps a separate seasonal score alongside Leveling’s own lifetime total. Lifetime XP, levels and level roles are completely unaffected: XP Seasons never grants, removes or resets any of them, and it has no reset command of its own.
It is off by default for every server, even one where Leveling is already running. It adds no new privileged Discord intent and needs no third-party API key, because it only reads XP values the bot already has. XP earned while XP Seasons is off for a server is not added retroactively once you turn it on; only Leveling’s lifetime total already counted that time.
Turn on XP Seasons and choose a cadence
On your bot’s page, open XP Seasons under Modules, click its gear button titled Settings, and pick the intended server from the Server selector, the same way you would for Leveling. Switch on Seasonal XP, then choose Weekly or Monthly under Season length; Monthly is the default. Click Save Settings and wait for the Saved confirmation, restarting the bot from its page if the dialog reports that live sync to the bot runtime failed.
XP Seasons only has an effect where Leveling is also enabled for that exact server: it hooks into Leveling’s own award path rather than tracking anything independently. Enable Leveling first if you have not already, and keep it enabled for XP Seasons to keep counting.
Know when a season actually ends
Weekly seasons end at 00:00 UTC on Monday; monthly seasons end at 00:00 UTC on the first of the month. There is no background timer: the boundary is only checked, and a finished season only saved, the next time someone earns XP or runs a /season command in that server. A quiet server simply carries the previous season a little longer past the boundary, with no XP lost.
Changing the cadence takes effect only after the current season ends. Switching from Weekly to Monthly, or back, mid-season does not shorten, extend, split or merge the season already in progress.
Check standings with /season commands
Run /season status to see the current season’s ID and its start and end, which Discord shows in your own time zone. Run /season leaderboard for a private top-ten reply that only you can see; it never pings anyone and shows "No XP earned in this season yet" for a season with no scores. Add a saved season id to view a past leaderboard instead of the current one, for example /season leaderboard season:weekly-2026-09-28.
Run /season history to list the IDs and end dates of the last twelve completed seasons in this server. Asking for a season ID that /season history does not list, because it is too old or was never saved, returns a not-found reply rather than inventing a result.
Test it with a real award
Save your settings, then send a message or spend a minute together in voice exactly as you would to test Leveling itself. Run /season status to confirm a season is active, then /season leaderboard to confirm the XP you just earned shows up. If nothing changed, re-check that both Leveling and XP Seasons are switched on for this exact server, since a toggle left off on either module means nothing is recorded.
Plans and what happens on Free
XP Seasons needs Pro, the same as Leveling. If the account moves from Pro to Free, Pro modules including Leveling and XP Seasons are switched off on that bot, so no new seasonal XP is counted. They are restored when you upgrade to Pro.
Frequently asked questions
Does XP Seasons reset lifetime XP, levels or level roles?
No. Seasonal scores are a separate running total. XP Seasons does not grant, remove or reset lifetime XP, levels or level roles, and it has no reset command.
Why does /season leaderboard show nothing?
Check that both Leveling and XP Seasons are switched on for this exact server, and that at least one message or voice XP award has happened since the current season started. A new season starts empty.
Can I switch between Weekly and Monthly without losing data?
Yes. A cadence change never deletes saved past seasons. It only applies after the current season ends; it does not shorten, extend, split or merge the season already in progress.
Is Faction XP the same as a season?
No. Faction XP is a separate role-based competition with its own leaderboard and reset command. XP Seasons only counts the XP that Leveling awards for messages and voice time.
Related modules
Related guides
Ready to configure your bot?
Start freeStart free. Free includes 1 bot and the Free modules; Pro is $9.99/month and adds more bots, every module and custom modules.
