Recognize consistency with streaks and reward roles
Recognize returning participation through continuous activity streaks, streak leaderboards, monthly champions, and automated Discord reward roles with built-in grace periods when life gets busy.
@ghostwar
π Reward Role Assigned
The mentioned members earned a new role based on their activity streak.
You reached the activity milestone of 14 days, which grants the role @Vanguard β.
The next milestone is 21 days, which grants @Breacher ββ.
See the full ranking with /leaderboard or get your personal stats with /my_score.
See current holders: /reward_members
Affected members: ghostwar
@Cobra
π New Personal Streak Best!
A new personal record landed: the mentioned member(s) reached an activity streak of 220. Nice progress.
Check your rank with /leaderboard or get your personal stats with /my_score.
Affected members: Cobra
Monthly Champions - September 2026
Top champions: bivvo, Cobra with 28 active days!
bivvo- 28 active daysCobra- 28 active daysJervis- 27 active daysPandaros Faolan Excelsior- 25 active dayslej2- 24 active daysMokuska1020- 24 active daysWulfrik420- 24 active daysBlanco- 22 active daysaccount6- 22 active daysTogerDragon- 21 active days19Azrael90- 18 active daysBleki- 18 active daysShunjo- 17 active daysVegaAnurb- 14 active daysghostwar- 12 active daysSergeant Prince πΎ πͺπ¬- 12 active daysAidan- 10 active daysWastedTime84- 8 active daysChiv25- 8 active daysLittle Lemon- 6 active daysFaith- 5 active daysANKALAEV77- 4 active daysclyde- 3 active daysBilgekdr- 3 active daysShadow- 2 active days
...and 12 more members logged activity that month.
Counts each day when a member kept their streak alive.
Moments like this help communities stick
If this celebration made the server feel more alive, a vote helps another admin discover CLNR.
Example names, roles, milestones, and results for one server, not default settings.
Streaks, Decay Scores, and Aggregate Participation
CLNR keeps engagement recognition strictly separate from cleanup metrics. Streaks celebrate continuous presence without turning your server into an XP grind.
Activity Streaks
Counts consecutive qualifying participation periods. Rewards returning consistency rather than raw message volume or chat flooding.
β’ Optional engagement feature
β’ Evaluated against admin-configured thresholds
β’ Independent from XP leveling systems
Decay Score (Lower = Better)
Measures inactivity risk for server management and cleanup. Lower scores reflect consistent recent activity, while higher scores indicate growing inactivity.
β’ Used for inactivity warnings & inactive roles
β’ Lower score represents healthier presence
β’ Fully separate from positive reward roles
Activity Health Score (AHS)
Calculates server-wide participation health from retained aggregate participation signals without reading message content or exposing individual chat histories.
β’ Aggregate community activity measure
β’ Measures general community activity health
β’ Does not govern individual reward roles
Guided Reward Setup & Custom Milestones
Setting up reward roles is simple with CLNR's interactive wizard. Admins choose which Discord roles to award, set required activity streak thresholds, and define grace periods.
Step-by-step assistant that guides you through enabling activity rewards, mapping roles, and establishing grace periods.
Enabling activity rewards automatically enables streak tracking. If a required role is missing or reaction tracking is disabled, CLNR outputs setup guidance.
Map admin-configured streak thresholds to Discord community roles. Thresholds follow the serverβs configured tracking intervals.
Choose recognition and reminders
Set reward-role thresholds for your community. Configure the server-wide streak grace period in decay intervals.
Control public reward-role announcements separately from role automation and streak/highscore announcements.
Optionally enable private grace-ending reminders. These follow member mute preferences and Discord DM availability.
Grace Periods Protect Reward Roles When Life Gets Busy
How the Streak Grace Buffer Works
A configured streak grace period can protect an earned reward role while a member is quiet, before removal when they no longer qualify.
- Admins configure one server-wide streak grace period in decay intervals.
- Members can receive a quiet DM heads-up when their reward grace is ending (toggleable via
/reward reward_grace_dm). - Qualifying activity within grace can preserve the streak and reward role under the serverβs configured rules.
Fair and Flexible Retention
Community members appreciate knowing that a short weekend away or busy work week won't immediately erase their hard-earned status.
- Prevents unnecessary frustration over minor gaps in participation.
- Keeps role rewards meaningful while maintaining server role accuracy.
- After grace expires, CLNR can remove a reward role if the member no longer qualifies, subject to permissions and automation settings.
Quiet Announcements & Spam Protection
Celebrate milestones without spamming public channels or triggering unwanted mass role mentions.
No Mass Role Pings
Role names in public milestone announcements are formatted as plain text (such as @Vanguard β) rather than Discord role pings. Earning a role never pings all existing role holders.
Flexible Channel Routing
Mute public reward-role announcements using /reward reward_role_announcements without disabling reward role automation or independently controlled streak/highscore announcements.
No Duplicate Announcements
Personal-best highscore tracking suppresses repetitive announcements for the same milestone streak length, keeping channel feeds clean and meaningful.
Personal Bests, Comebacks, and Monthly Champions
CLNR provides positive, engaging community benchmarks that reward consistency over time. Crown top active members automatically on the first of each month.
Personal Best Highscores
Track individual streak highscores and celebrate personal records.
Comeback Streak Celebrations
Recognize returning members who rebuild activity streaks after a quiet period.
Monthly Champion Crown
Ranks the selected monthβs participation. Automated champion wording can recognize first-time or returning winners where history is available.
Discord Permissions & Role Hierarchy
Technical requirements for automated role management
CLNR requires Discord's Manage Roles permission to add or remove reward roles automatically as streak thresholds change.
CLNR's bot role must be placed higher in Server Settings β Roles than any reward roles it manages. Discord blocks bots from assigning roles above their highest role.
Admins can inspect currently assigned reward roles and member streak standings at any time using /reward_members or /leaderboard.
Activity Rewards Command Reference
Click any command chip below to copy it directly to your clipboard for Discord.
Interactive Setup Wizard
Open step-by-step assistant to configure activity rewards, reward roles, thresholds, and grace periods.
Toggle Activity Rewards
Enable or disable activity rewards. Enabling also enables streak tracking.
Add Reward Role Milestone
Map a Discord role to an admin-configured activity streak threshold.
Configure Streak Grace Period
Set the server-wide grace period in decay intervals before a quiet member loses streak-based reward eligibility.
Role Announcement Visibility
Enable or silence public reward-role announcements without disabling rewards or streak/highscore announcements.
Grace Period DM Alerts
Toggle private DM reminders when reward grace is ending.
Streak Leaderboard
View active participation streak rankings across server members.
Monthly Champion History
View monthly champions and monthly active day records.
Inspect Role Holders
Inspect list of members holding reward roles and their current streak status.