Know what your community actually does.
Analytics counts what happens in your server, never what was said. Messages, voice, joins and leaves, and if you turn it on who is online and what members play, become trends, retention curves, leaderboards, charts you can call up in Discord and a stats card members can share. Role rewards, alerts and counter channels run on the same numbers.
How it works
#analytics-alerts channel, turns on bot exclusion, adds a starter activity-drop alert and imports up to 365 days of message history so the charts are not empty on day one./server, /top and /chart inside Discord./stats or /me.Everything it does
The complete list, grouped by what you are trying to do. Every item describes what Analytics does today.
Messages
Volume, who drives it, where it happens and what it is made of.
Voice
Voice is tracked with the same care as text, including who talks to whom.
Members and retention
Whether people stay, and who is about to leave.
Channels
Which channels are alive, and which only look it.
Status and activity
Off by default, and only possible when your bot has the Presence intent.
Leaderboards, cards and charts
The parts members see.
/me and /user open the same card./top ranks members by messages or voice, channels by messages or voice, or shows all four at once, over 7, 14, 30 or 90 days. /server renders an overview card: members and how that changed, active members, messages and voice hours for 7 and 30 days, top channels and 30-day sparklines.Role rewards
Roles that members earn, granted and revoked without anyone watching.
Alerts and annotations
The dashboard comes to you when something changes.
Counter channels
Live numbers in a channel name.
{1} members, {2} online.Starboard
Off by default, and the one place content is copied.
Public dashboard, API and CSV
The numbers can leave the dashboard on your terms.
Filters
Applied when a page is read, never when an event is recorded, so a change reshapes every page at once.
Commands
Every slash command the service registers, and who can run it. Most day-to-day use happens through buttons and the dashboard; commands are the fast path.
| Command | What it does | Who |
|---|---|---|
/stats | Renders a stats card for you or another member, with a switcher for an activity graph and a channel breakdown, an Open and share link, and a Hide my card button on your own. | Everyone |
/me | Renders your own stats card. | Everyone |
/user | Renders another member's stats card. | Everyone |
/leaderboard | Renders a ranked card for messages, voice hours or voice sessions over a number of days, 0 for all-time, with dropdowns to change it in place. | Everyone |
/top | Renders top members by messages or voice, top channels by messages or voice, or an overview of all four, over 7, 14, 30 or 90 days. | Everyone |
/server | Renders a server overview card: members, active members, messages and voice hours for 7 and 30 days, top channels and sparklines. | Everyone |
/chart messages | A chart of messages per day over 7, 14, 30 or 90 days, only to you unless post is set. | Everyone |
/chart voice | A chart of voice minutes per day over 7, 14, 30 or 90 days, only to you unless post is set. | Everyone |
/chart members | A chart of joins and leaves per day over 7, 14, 30 or 90 days, only to you unless post is set. | Everyone |
/chart channel | A chart of one channel's messages or voice minutes per day. Refuses a channel you cannot see or one excluded from Analytics. | Everyone |
/chart member | A chart of one member's messages and voice minutes per day. A member who hid their card is not shown to others. | Everyone |
In the dashboard
Everything is configured from the web, per server. These are the areas you will find there.
Runs on its own
Limits and plans
The service is included with every subscription tier. These are the fixed limits it works within.
| Setting | Value | Notes |
|---|---|---|
| Data retention | 7 to 365 days | Set per server, 90 by default. Rollups are kept twice as long. |
| History import | 1 to 365 days | Whatever the bot can read. |
| Chart windows | 7, 14, 30 or 90 days | /chart and /top, capped by your retention. |
| Leaderboard metrics | 12 | |
| Role reward metrics | 15 | Up to 8 conditions per reward, 200 ignored members. |
| Reward schedule | 10 minutes to once a day | 30 minutes by default. |
| Alert types | 5 | Cooldown per rule, 1 to 168 hours, 6 by default. |
| Starboard threshold | 1 to 100 | Distinct reactors, 5 by default. |
| Voice partners window | 90 days | Pairs count after 5 shared minutes. |
| Name history | 12 names | Per member, on the profile. |
| Leaderboard card entries | 5 to 25 | 10 by default. |
| Counters per channel | 4 | Name up to 100 characters, one rename per 6 minutes. |
| Counter channels | 10 per server | The default cap. |
| Channel groups | 20 | Up to 25 channels each. |
| Status sample | Every 5 minutes | Pages read 1, 7 or 30 days. |
| Activity filter | 200 names | Allow or block list. |
| Auto-annotation sources | 17 | Backfill up to 365 days. |
| API keys | 5 active | 60 requests a minute per key, windows up to your retention. |
| CSV exports | 15 | One per page. |
Works with
Safety and permissions
/chart channel refuses one they cannot see.What it does not do
Worth knowing before you set it up. If one of these matters to you, the marketplace may have a plugin that covers it.
- No XP or levels. Rewards are conditions, met or not.
- No sentiment, toxicity or AI summaries. Everything is counts.
- No alert for a general activity spike. The spike banner is on-page only; the alert types are drop, spam rate, activation, voice peak and dead channel.
- No scheduled digest posts, and CSV is a download from the page, not a scheduled delivery.
- No cross-server analytics. Every page, key and export is one server.
- No follower counters. A counter channel cannot show YouTube, Twitch or Kick follower counts.
- No status or activity page in
/chart. Status and activity live on the dashboard and in CSV. - No per-member data deletion inside the service. A member can hide their card, but their counts stay until the retention window removes them.
Questions
Does it read my members' messages?
No. It records that a message happened, who sent it, where and when, and what it contained in counts. The text is never stored. The only exception is a starboard repost, which you have to turn on.
How far back does it go?
Setup imports up to 365 days of message history the bot can read, and Settings can import 1 to 365 days later. After that, everything is recorded live and kept for the retention window you set.
Can members see their own stats?
Yes, with /stats or /me, or on the web at their personal stats page. Other members' pages need the viewer role, and a member can hide their card from everyone else with one button.
What does retention mean here?
A member counts as retained on day 7 if they were active on day 7 or any later day, per weekly join cohort. Cells stay pending until the cohort is old enough to know.
Can I reward active members automatically?
Yes. A role reward grants a role when up to 8 conditions on 15 metrics are met, with optional revoke, DM and a channel notice, on a schedule from every 10 minutes to once a day.
Will it count bots?
Not by default. Bot exclusion is on, and a re-scan tool flags historical rows from before a bot was recognised.
Does it track who is online?
Only if you turn status tracking on, and only when your bot has the Presence intent. It then counts online, idle, busy and offline members every 5 minutes as whole-server numbers.
Can I show the member count in a channel name?
Yes. A counter channel combines up to 4 counters, such as members, members online, members in voice or a countdown, and is renamed at most once every 6 minutes because of Discord's rename limit.
Can people outside the dashboard see the numbers?
If you let them. Open the read-only dashboard to members, to chosen roles or to everyone, hand a tool an API key, or download any page as CSV. None of those show a member's name.
Why does a chart show fewer days than I asked for?
/chart and /top are capped by your retention window, and the reply says how many days the server keeps.
Turn on Analytics in one click.
Add YourBot to your server, open the dashboard and switch the service on. Settings live on the web, so nothing here needs a command to configure.