Features
- Real-time tracking of messages, reactions, joins, leaves, and voice activity
- Per-channel and per-member detailed analytics
- Historical stats stored daily and viewable as shareable web pages
- Role membership tracking — monitor member counts of specific roles over time
- Activity rewards — streak-based and total-stats-based role assignments
- Privacy controls — admin opt-in, user opt-out, no message content collected
- Ignore channels/categories — exclude specific areas from tracking
Getting Started
- Invite the Bot — Add Server Stats Bot with the necessary permissions.
- Run
/setup— Open the configuration panel and enable analytics. - Configure Tracking — Optionally ignore channels or categories you don’t want tracked.
- Track Roles — Select up to 10 roles to monitor daily member counts.
- View Stats — Use
/statscommands to see activity reports.
The /setup Command
Interactive configuration panel (Administrator only):
- Enable/Disable — Toggle analytics tracking on or off
- Ignore Categories — Select categories to exclude from tracking (max 25)
- Ignore Channels — Select text channels to exclude from tracking (max 25)
- Track Roles — Select roles to monitor daily member counts (max 10)
Commands
Stats Commands
All stats commands have a 100-second cooldown per user.
| Command | Description |
|---|---|
/stats summary | Quick overview of today’s stats: messages, reactions, active channels/users, joins, leaves, peak voice |
/stats member <member> <days> | Historical per-member stats (messages, reactions added/received) |
/stats channel <channel> <days> | Historical per-channel stats (messages, reactions, unique senders) |
/stats server <days> | Historical server-wide stats (messages, reactions, joins, leaves, voice, member count, boosts) |
/stats roles <days> | Historical role membership counts for tracked roles |
- Days parameter: 0–500 (0 = all time)
- Stats are generated as shareable web pages on discordlabs.org (links expire after 7 days)
Other Commands
| Command | Description |
|---|---|
/privacy tracking:off | Opt out of personal tracking |
/privacy tracking:on | Re-enable personal tracking |
/help | View bot help and features |
/rewards | Configure activity reward roles (Administrator) |
What Gets Tracked
Messages
- Per-channel message counts and unique senders
- Per-member message counts
- Ignored in excluded channels/categories, from bots, and from opted-out users
Reactions
- Per-channel reaction counts
- Per-member reactions added and reactions received
Joins & Leaves
- Daily join and leave counts per server
- Bot joins/leaves are excluded
Voice Activity
- Current voice user count
- Peak voice users per day
Server Metrics (daily snapshot)
- Total member count
- Online member count
- Boost count
Role Tracking
- Daily member counts for configured tracked roles
Activity Rewards
Configure activity-based reward roles through the /rewards command (Administrator only, analytics must be enabled).
Streak Rewards
Members must meet daily stat requirements for N consecutive days to earn a role.
- Set requirements for: messages, reactions added, reactions received (per day)
- Streak duration: 1–365 days
- Role is awarded when the streak is completed
- Role is removed when the streak is broken
- Max 10 streak rules per server
Total Stats Rewards
Members earn a role permanently when their all-time stats reach a threshold.
- Set thresholds for: total messages, total reactions added, total reactions received
- Once awarded, the role stays permanently
- Max 10 total stats rules per server
Rewards Management
- Add/Edit/Remove rules with pre-filled modals
- View Rules — list all configured rules
- Clear All — remove all rules with confirmation
- Sync on edit — optionally re-check existing members against updated requirements
Privacy & Opt-Out
- Admin opt-in — Analytics are disabled by default; an admin must enable them via
/setup - No message content — Only counts are tracked, never message text
- User opt-out — Use
/privacy tracking:offto stop all personal tracking- Your messages and reactions won’t be counted
- Server-level stats (joins, leaves, voice) still include anonymous counts
- Re-enable — Use
/privacy tracking:onto resume tracking
Limits
| Feature | Limit |
|---|---|
| Ignored Categories | 25 per server |
| Ignored Channels | 25 per server |
| Tracked Roles | 10 per server |
| Streak Reward Rules | 10 per server |
| Total Stats Reward Rules | 10 per server |
| Streak Duration | 1–365 days |
| Stats Days Parameter | 0–500 (0 = all time) |
| Stat Page Expiry | 7 days |
| Stats Cooldown | 100 seconds per user |