Skip to main content

Stats & Analytics

RaidBot automatically tracks comprehensive participation data, giving you insights into individual performance, server-wide trends, and identifying inactive members.

User Statistics

View detailed stats for any member with /stats user.
/stats user
/stats user user:@Player

Example Output

PlayerName's Stats

Total Raids: 42
Attendance: 🌟 94.2%
No-Shows: ✅ 0

Favorite Role: Vanguard (18)
Favorite Raid Type: Darkmoor (12)
Most Active Day: Friday

Timezone: EST
Preferred Days: Mon-Fri 7-10pm
Preferred Roles: Vanguard, Support
Notes: Available for impromptu runs

Last active: 2/28/2026

Metrics Explained

Total Raids
number
Count of all raids the user has signed up for (completed or not).
Attendance
percentage
Percentage of raids where the user actually attended (not marked as no-show).Indicators:
  • 🌟 90%+ (Excellent)
  • ✅ 70-89% (Good)
  • ⚠️ 50-69% (Fair)
  • ❌ Below 50% (Poor)
No-Shows
number
Times the user was marked as not attending after signing up.Displayed as: ✅ 0 or ⚠️ 3 (7.1%) if non-zero
Favorite Role
string
The role the user has played most often, with count in parentheses.
Favorite Raid Type
string
The raid template/type the user participates in most, with count.
Most Active Day
string
The day of the week the user raids most frequently.
Availability fields (timezone, preferred days/roles, notes) only appear if the user has set them via /availability set.

Permission Requirements

  • Viewing your own stats: Anyone can run /stats user
  • Viewing others’ stats: Requires one of:
    • Manage Server permission
    • Admin role (configured via /settings)
    • Special stats_others permission role
    • Server owner

Server Statistics

View overall participation across your entire server.
/stats server

Example Output

📊 Server Stats

45 unique participants across 312 total raid signups

Top Participants:
1. @PlayerOne — 42 raids
2. @PlayerTwo — 38 raids
3. @PlayerThree — 35 raids
4. @PlayerFour — 31 raids
5. @PlayerFive — 28 raids
“Total raid signups” counts every instance of a member signing up for a raid. If Player A joins 10 raids, that’s 10 signups.

Weekly Reports

Analyze participation over specific weeks.
/stats weekly
/stats weekly weeks_back:1  # 1 week ago
/stats weekly weeks_back:4  # 4 weeks ago

Example Output

📊 Weekly Report: Feb 24 - Mar 2, 2026

Raids This Week: 18
Active Users: 32
Total Raids (All Time): 312

Top Participants:
1. @PlayerOne — 8 raids
2. @PlayerTwo — 6 raids
3. @PlayerThree — 5 raids
4. @PlayerFour — 5 raids
5. @PlayerFive — 4 raids

Current week

Use Cases

Track Trends

Compare week-over-week participation to spot growth or decline.

Recognize Top Players

Highlight the most active raiders each week.

Plan Events

See which weeks had the most engagement.

Historical Data

Review past weeks (up to 12 weeks back).

Monthly Reports

Broader view of monthly participation with trend analysis.
/stats monthly
/stats monthly months_back:1  # last month
/stats monthly months_back:3  # 3 months ago

Example Output

📊 Monthly Report: February 2026

Raids This Month: 67
Active Users: 48
Total Raids (All Time): 312

Trend: 📈 +15.2% vs last month

Current month

Trend Indicators

  • 📈 Positive growth: More raids than previous month
  • 📉 Decline: Fewer raids than previous month
  • No data: First month or no previous data available
Use monthly reports to identify seasonal patterns in your guild’s activity.

Inactive Members Report

Find members who haven’t participated recently (or ever).
/stats inactive
/stats inactive weeks:2
/stats inactive weeks:4 role:@Raiders
/stats inactive weeks:0  # never participated
/stats inactive refresh:True

Parameters

weeks
number
default:"0"
Show members inactive for at least this many weeks.
  • 0: Never participated (default)
  • 2: No raids in last 2 weeks
  • 4: No raids in last 4 weeks
role
role
Limit results to members with a specific role.Example: Only check @Raiders for inactivity.
refresh
boolean
default:"false"
Force refresh the member list from Discord (slower but more accurate).Use when:
  • You suspect the cached member list is outdated
  • Recently added/removed many members
  • First run in a large server

Example Output

Inactive Members

Members with role "Raiders" inactive for 2+ weeks (7):

• @InactiveMember1 (last: 2/15/2026)
• @InactiveMember2 (last: 2/10/2026)
• @InactiveMember3 (last: 2/08/2026)
• @InactiveMember4 (last: 1/30/2026)
• @InactiveMember5 (last: 1/28/2026)
• @InactiveMember6 (never)
• @InactiveMember7 (never)

(Fetched fresh member list from Discord.)
In very large servers (1000+ members), /stats inactive refresh:True may timeout. Use it sparingly or limit by role.

Use Cases

Guild Cleanup

Identify members to remove during roster trimming.

Re-engagement

Find inactive members to reach out to.

Role Management

Remove raid roles from inactive players.

Audit Compliance

Track participation requirements for guild rules.

Data Export

Export all participation data as CSV for external analysis.
/stats export
Generates a file:
stats_1234567890_1735689600.csv

CSV Format

User ID,Username,Total Raids,Attendance Rate,No-Shows,Favorite Role,Favorite Type,Last Active
123456789,PlayerOne,42,0.942,0,Vanguard,Darkmoor,1709251200
234567890,PlayerTwo,38,0.921,3,Support,Darkmoor,1709164800
345678901,PlayerThree,35,0.971,1,Gates,Museum,1709078400

Analysis Ideas

  • Import into Google Sheets/Excel for custom charts
  • Track long-term trends over multiple exports
  • Build custom leaderboards
  • Cross-reference with guild management tools
  • Create participation requirement dashboards

No-Show Tracking

Record when members sign up but don’t attend raids.

How to Mark No-Shows

1

Close the raid

After the raid completes, open the management panel:
/raid raid_id:abc123
Click “Close” to lock the signup.
2

Mark no-shows

Click “Mark No-Show” button (only appears when closed).
3

Select users

Choose users who didn’t attend from the dropdown (supports multi-select up to 25).
4

Confirm

The bot records each no-show and updates user statistics immediately.

Impact on Stats

No-shows affect:
  1. Attendance Rate: Decreases the user’s overall attendance percentage
  2. No-Show Count: Increments the total no-show counter
  3. User Stats Embed: Shows ⚠️ 3 (7.1%) if above 0
No-show data is permanent and cannot be easily reversed. Mark carefully and consistently.

Best Practices

Be consistent — Only mark no-shows if you’re going to do it for all raids, otherwise data becomes unreliable.
Define your policy — Clarify when a no-show is recorded (late arrivals? early leaves? emergencies?).
Communicate first — Consider reaching out to frequent no-shows before punitive action.

Participation Counting

What Counts as a Raid?

The following actions count toward a user’s total raids:
✓ Signing up via reaction
✓ Being manually assigned via /raidsignup action:assign
✓ Being promoted from waitlist
✓ Roster copying from recurring raids

What Doesn’t Count?

Joining the waitlist alone (not promoted)
Reacting but being full (auto-waitlisted and not promoted)
Being removed before raid closes

Special Cases

Museum Signups: Count as raid type “Museum” Team Events (Challenge/Key): Counted, but no role breakdown (no “Favorite Role” for these) Recurring Raid Roster Copies: Count as new signups when the new instance spawns Practice/Non-Participation Events: You can create custom templates with countsForParticipation: false to exclude from stats

Data Retention

Participation data is stored indefinitely:
  • User totals and breakdowns
  • Role preferences
  • Raid type preferences
  • Weekday patterns
  • Last active timestamps
  • No-show records
Data persists even if:
  • Raid messages are deleted
  • Users leave and rejoin the server
  • Bot is temporarily offline
Admins can manually clear specific user data if needed (contact bot developer for instructions).

Privacy & Permissions

Who Can View What?

CommandPermission Required
/stats user (self)Anyone
/stats user user:@OtherManage Server or admin role
/stats serverAnyone in server
/stats weeklyAnyone in server
/stats monthlyAnyone in server
/stats inactiveManage Server or admin role
/stats exportManage Server or admin role
Server-wide stats (server, weekly, monthly) don’t reveal individual member data — only aggregates and leaderboards.

Integration with Other Features

Find Sub

The Find Sub feature (in raid management panel) uses participation stats:
Ranking Factors:
1. Role experience (times played this specific role)
2. Total participation (overall raid count)
3. Recency (active in last 2 weeks)
4. Availability (if set and matches raid time)

Availability Data

If a user has set /availability, it appears in their stats:
PlayerName's Stats
...
Timezone: EST
Preferred Days: Mon-Fri 7-10pm
Preferred Roles: Vanguard, Support

Leaderboards

Several commands show top participants:
  • /stats server → Top 5 all-time
  • /stats weekly → Top 5 this week
  • /leaderboard → (if implemented) Advanced rankings

Troubleshooting

Stats only count signups that were active when the raid was created or updated. If you joined very early raids before stats were implemented, they won’t appear.
Attendance is calculated as: (Total Raids - No-Shows) / Total RaidsIf no-shows were marked inconsistently, the rate may not reflect reality. Request admin to review your no-show records.
You need Manage Server permission, an admin role, or the stats_others permission role. Contact your server admins.
This means no participation data has been recorded yet. Stats populate as raids are created and closed.

Build docs developers (and LLMs) love