Discord Server Scraper
Pricing
from $1.00 / 1,000 servers
Discord Server Scraper
Scrape Discord's public server directory: search by keyword, browse categories, or look up server links and invites. Members, online count, boosts, language, categories, keywords, verified and partnered, vanity invite, About text, socials. No login.
Pricing
from $1.00 / 1,000 servers
Rating
0.0
(0)
Developer
Steady Scrape
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Scrape Discord's public server directory (discord.com/servers, the "Discover" page): search servers by keyword, browse a category biggest-first, or look up server links, ids and invite links. One row per server with its member count and members online, boosts, language, category and every subcategory, keywords, verified and partnered badges, its vanity invite link (discord.gg/…), icon, banner and splash, and, with details on, the owner's About text, creation date, reasons to join and social links.
No login, no Discord account, no bot token, nothing to join. Pay only for the servers you get.
What you can do with it
- Game studios and publishers: find the communities around your genre or a competitor's game, sized by members online, to partner with, sponsor or run giveaways in.
- Web3, crypto and community marketers: build lists of active servers by keyword and language, with their invite links, for outreach and advertising.
- Server owners: see who ranks next to you for your keywords, what tags and categories they use, and how many members they keep online.
- Researchers and analysts: track the size and activity of communities over time; schedule a run with Only servers not delivered before to get only newly listed servers.
- Invite checks: paste invite links from a list, a website or a spreadsheet and learn which still work, which server they open, its size and its verification level.
Input
| Field | What it does |
|---|---|
| Search terms | Words to search, e.g. minecraft, crypto trading. Each term is searched on the home page and inside each of the five categories, since Discord's search stops at ~55 servers per search. |
| Categories | Without search terms: the listings to browse — All servers, Gaming, Music, Entertainment, Science & Tech, Education — biggest servers first, up to ~3,000 each. With search terms: search only inside these. |
| Server links, ids or invites | Read only these: https://discord.com/servers/<name>-<id>, a server id, https://discord.gg/<code>, discord.com/invite/<code> or a bare invite code. |
| Include each server's page | Also open each server's own page for its About text, creation date, reasons to join, social links and every category. |
| Minimum / maximum members, Minimum members online | Size and activity range. |
| Languages | The server's language as its owner set it (English, Spanish, Portuguese, Russian…). |
| Must contain words | Every word must appear in the name, description or keywords. |
| Verified only, Partnered only | Discord's official badges. |
| Maximum servers | Stop after this many (0 = no limit). |
| Only servers not delivered before | For scheduled runs: skip servers an earlier run with the same search and filters delivered. |
Example: active Spanish-speaking Minecraft communities with their pages read.
{"searchTerms": ["minecraft"],"languages": ["es-ES", "es-419"],"minOnline": 500,"includeDetails": true,"maxServers": 100}
Output
One row per server, in the order Discord lists them:
{"serverId": "143852930036924417","name": "Wynncraft • MMORPG Minecraft Server","description": "Full-Fat MMORPG Minecraft Server. No mods required! Join at (IP): play.wynncraft.com","memberCount": 224313,"onlineCount": 61321,"boosts": 62,"features": ["ANIMATED_BANNER", "COMMUNITY", "DISCOVERABLE", "PARTNERED", "VANITY_URL", "…"],"verified": false,"partnered": true,"vanityUrlCode": "wynncraft","inviteUrl": "https://discord.gg/wynncraft","iconUrl": "https://cdn.discordapp.com/icons/143852930036924417/a_8f1e212da56e0f5b02ed58d65cdcf6cb.png?size=256","bannerUrl": "https://cdn.discordapp.com/banners/143852930036924417/a_e9bb762b9c20ab5b83658671a70b3b28.gif?size=1024","splashUrl": "https://cdn.discordapp.com/discovery-splashes/143852930036924417/9de202132b04423ac657c9716a11d8b1.jpg?size=2048","url": "https://discord.com/servers/wynncraft-mmorpg-minecraft-server-143852930036924417","preferredLocale": "en-US","primaryCategory": "Gaming","categories": ["Gaming", "Fandom", "Entertainment", "Memes", "General Chatting"],"keywords": ["minecraft", "minecraft mmorpg", "mmorpg", "rpg", "wynn"],"details": {"about": "The official Discord community for Wynncraft. Discuss the game and more with thousands of others! …","createdAt": "2016-02-01T23:00:11.179Z","reasonsToJoin": [{ "reason": "Find groups to play with", "emoji": "🤝" }],"socialLinks": ["https://reddit.com/r/Wynncraft", "https://twitter.com/Wynncraft"]},"source": "search","searchTerm": "minecraft","listing": "all","input": null,"status": "ok","reason": null,"scrapedAt": "2026-10-22T18:00:00.000Z"}
An invite gives what Discord shows before you join, for any server, listed in the directory or not:
{"inviteCode": "wynncraft","invite": "https://discord.gg/wynncraft","serverId": "143852930036924417","name": "Wynncraft • MMORPG Minecraft Server","memberCount": 224315,"onlineCount": 64186,"boosts": 62,"premiumTier": 3,"verificationLevel": "high","nsfwLevel": "default","channelName": "rules_and_info","channelType": "text","expiresAt": null,"source": "invite"}
Fields
| Field | Meaning |
|---|---|
serverId, name, description | The server as its directory card shows it. |
memberCount, onlineCount | Members, and members online now (Discord's approximate counts). |
boosts | Server boosts. null on search results read without their page. |
features, verified, partnered | Discord's feature flags for the server; verified and partnered are its official badges. |
vanityUrlCode, inviteUrl | The server's custom invite (discord.gg/…); null when it has none, or on search results read without their page. |
iconUrl, bannerUrl, splashUrl | Images on Discord's CDN. bannerUrl is null on search results read without their page. |
url | The server's page in the directory. |
preferredLocale | The server's language, e.g. en-US, pt-BR, ru. |
primaryCategory, categories, keywords | Category names (the primary first) and the owner's search keywords. null on search results read without their page. |
details | With Include each server's page: about, createdAt (UTC), reasonsToJoin, socialLinks. null otherwise. |
inviteCode, invite, verificationLevel, nsfwLevel, premiumTier, channelId, channelName, channelType, expiresAt | Invite rows only: the invite, the server's verification level (none to very_high), its boost tier, the channel the invite opens and when it expires (null = never). |
source, searchTerm, listing, input | How the server was found: search (with the term and the listing), category, link or invite (with what you pasted). |
status, reason | ok for a server or invite. Free rows say why nothing came: invalid, not_found, no_details, no_results (with how many servers each filter left out) or blocked. |
scrapedAt | When the row was read (ISO 8601, UTC). |
The run's SUMMARY record lists each listing read (results, pages, what Discord says it has), the duplicates removed and the servers each filter left out.
Limits, honestly
- Only servers in Discord's directory can be searched or browsed: the ones whose owners turned on Discovery. An invite link reads any server.
- Discord's search stops at about 55 servers per search, whatever total it shows; that is why each term is also searched inside the five categories (up to ~330 per term). Browsing stops at 3,000 servers per listing.
- Search results carry fewer fields than browsing: no boosts, keywords, categories, banner or vanity invite. Turn on Include each server's page to complete them.
- Discord answers listing pages from several search backends in turn, each in a slightly different order, so a long browse meets some servers twice: they are delivered once (about 6 % of a 2,000-server Gaming browse were repeats).
- Discord limits how fast one IP may read listing pages (about 20 a minute after a first burst). The Actor waits when asked and moves to Apify Proxy when your account has it; a long browse takes minutes, not seconds.
- A few servers show a Server Shop instead of a server page: as search or category results they are delivered as listed (at
the plain price); pasted as links they get a free
no_detailsrow with their name and member counts. - Counts are Discord's approximate counts at the moment of the run.
Pricing
| Event | Price |
|---|---|
| Server — one server from a search or category page | US$0.001 (US$1 per 1,000) |
| Server with details — the same plus its own page (About, creation date, reasons to join, socials, every category) | US$0.002 |
| Invite — one invite resolved to its server | US$0.001 |
No start fee. Servers your filters leave out, servers already delivered to a scheduled run, and status rows (invalid or expired invites, servers not in the directory, blocked) are free. You can cap a run's cost with Apify's maximum cost per run; the Actor stops cleanly when it is reached.
Is it legal?
The Actor reads only what Discord shows every visitor without an account: the public server directory, which lists the servers whose owners chose to make them discoverable, and the invite previews Discord shows before you join. Its robots.txt leaves both open. The Actor never logs in, never joins a server, reads no messages and collects no user data — not even who created an invite. It paces its requests and never solves a challenge. Discord's terms restrict automated access; you are responsible for using the data lawfully and in line with them.
This is an unofficial tool. It is not affiliated with, endorsed by or sponsored by Discord Inc.
Issues and requests
Open an issue on the Actor's page: a field you need, a filter, or anything that looks wrong.