Discord Server Stats — Members, Voice & Features
Pricing
from $2.01 / 1,000 results
Discord Server Stats — Members, Voice & Features
Get public stats for Discord servers by ID or invite code: member counts, online presence, voice channels, features and creation date. No bot token, no login.
Pricing
from $2.01 / 1,000 results
Rating
0.0
(0)
Developer
Axery
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Discord Public Server Stats
Gets public statistics for Discord servers over plain HTTP — no bot token, no OAuth, no login.
Scope: public server metadata only
This Actor reads two of Discord's own token-free endpoints, both of which expose only what a server owner has chosen to make public:
- Widget (
/guilds/{id}/widget.json) — live online count, voice channels, and a sample of currently-online members - Invite lookup (
/invites/{code}?with_counts=true) — server name, description, approximate member and online totals
Message content is not accessible through either, and no attempt is made to read messages, DMs, or anything behind a login.
What makes this different
Server creation date, decoded — a field Discord never returns. Discord IDs are snowflakes that encode their creation timestamp in the high bits. This Actor shifts out the worker/process/increment bits and adds Discord's epoch, giving you an exact created_at that no API field provides.
A disabled widget doesn't silently vanish. Most servers keep the public widget off — that's an owner setting, not a scraping failure. Those servers are still returned as rows with widget_available: false and whatever the invite lookup could supply, so a batch never looks like it succeeded on fewer servers than you asked for.
Rate limits are honoured, not guessed. Discord's 429 response states exactly how long to wait; the client waits that long instead of applying a generic backoff.
The member list is labelled as a sample, not a roster. Discord caps the widget's member array at 100 and includes only members currently online. The field is named online_members_sample with an explicit online_members_sample_size, because on any busy server it will disagree with presence_count — by design, not by error.
Input
| Field | Type | Notes |
|---|---|---|
guildIds | array | Numeric server IDs (15–25 digits). Gives live widget stats. |
inviteCodes | array | Invite codes or full URLs — discord.gg/xxxx and discord.com/invite/xxxx both work. Gives member totals regardless of widget setting. |
proxyConfiguration | object | Datacenter is enough. |
You can pass either or both. When an invite resolves to a server ID, the widget is tried too so both sets of fields get filled in.
Known limits
- Widget stats require the owner to have enabled it. Roughly most servers have not.
- Voice channels only. The widget exposes voice channels; text channels are not included.
- Member counts from invites are approximate — that's Discord's own wording (
approximate_member_count), and the field name preserves it.
Local development
pip install -r requirements.txtpython test_local.py --out sample_output.jsonpython test_local.py --guilds 81384788765712384 --invites python
sample_output.json covers both cases: one server with the widget enabled, one with it disabled and read via invite instead.