/dashboard. It aggregates server activity into charts and KPIs that update automatically every 30 seconds.
Key performance indicators
Five KPI cards appear at the top of the page:| Metric | Description |
|---|---|
| Total messages | All messages recorded in the selected period |
| AI requests | Number of AI completions triggered |
| AI cost (est.) | Estimated USD cost of AI usage |
| Active users | Unique users who sent at least one message |
| New members | Members who joined during the period |
Time range filtering
Select a preset or define a custom window using the buttons at the top right of the page:- Preset ranges
- Custom range
Choose Today, Week, or Month to apply a preset range. The interval switches automatically — hourly buckets for Today, daily buckets for Week and Month.
Compare mode
Click Compare vs previous to overlay KPI values from the equivalent preceding period. Delta percentages appear on each KPI card. Toggle the button again to exit compare mode.Charts
Message volume
A line chart shows Messages and AI Requests over the selected range. Hover any point to see the exact count for that bucket. The chart renders no data state when the period has no activity.Activity heatmap
A grid heatmap shows message density broken down by day of week (rows) and hour of day (columns, 0–23). Darker cells indicate higher activity. Hover a cell to see the exact message count for that day/hour combination.AI usage breakdown
Two charts cover AI usage:- Model distribution — a pie chart showing how many requests went to each model
- Token breakdown — a bar chart splitting prompt tokens from completion tokens
Top channels breakdown
A horizontal bar chart ranks channels by message volume in the selected period. Click a bar to filter all metrics on the page to that channel. Click the active bar again, or click All channels in the channel filter card, to clear the filter.Command usage stats
A table lists every slash command alongside its usage count for the selected range. Commands are sorted by use count descending.Real-time indicators
A live card refreshes every 30 seconds and shows:- Online members — current online count from the Discord guild cache
- Active AI conversations — number of channels with an open AI conversation in memory
User engagement metrics
When engagement tracking is enabled, a section shows aggregate stats:| Metric | Description |
|---|---|
| Tracked users | Users with at least one recorded activity |
| Total messages sent | Sum of all messages from tracked users |
| Total reactions given | Reactions added by tracked users |
| Total reactions received | Reactions received by tracked users |
| Avg messages / user | Mean message count per tracked user |
XP economy
When XP tracking is enabled, a second card shows:| Metric | Description |
|---|---|
| Users with XP | Members who have earned at least 1 XP point |
| Total XP distributed | Sum of all XP awarded |
| Average level | Mean level across all members with XP |
| Highest level | The highest level reached by any member |
Exporting data
Two export actions are available in the toolbar:Export CSV
Downloads a CSV file containing KPIs, top channels, and command usage for the current range and filters. The file name includes the guild ID and range type.
Export PDF
Opens a print-ready HTML report in a new window and triggers the browser’s print dialog. The report includes KPIs, top channels, command usage, user engagement, and AI usage by model.
The PDF export uses the browser’s built-in print-to-PDF capability. No external dependencies or server-side rendering are required.