Discord error 30030: Maximum number of server categories reached (5)
Last verified against Discord Developer Docs - Opcodes and status codes
Maximum number of server categories has been reached (5)What error 30030 means
This one is easy to misread. "Server categories" here refers to Discord's discovery/server-directory categories (the tags a public server selects to describe itself), not channel categories. A guild can select at most five. The error appears when a bot, or a user acting through OAuth2, tries to update the guild's discovery metadata with more than five categories.
If you arrived here expecting channel categories: channel categories (channel type 4) are limited differently and creating too many of them produces 30013 (500 channels total), not 30030. Very few bots touch discovery metadata, so if you see 30030 from a general-purpose bot, check which endpoint you are calling.
What it looks like
{
"message": "Maximum number of server categories has been reached (5)",
"code": 30030
}Why it happens
- Updating guild discovery metadata with more than 5 category IDs
- Misreading the code as a channel-category limit and looking in the wrong place
How to fix Discord error 30030
- 1Reduce the discovery categories list to at most five (one primary plus up to four secondary)
- 2If your bot manages channel categories, not discovery categories, look at the 30013 channel cap instead
- 3Confirm the endpoint and payload you are sending; this code should only come from discovery-related routes
How to stop it recurring
Validate discovery category lists client-side (length 5 or fewer) before sending. Keep an eye on the literal message string in your logs rather than assuming what a 30xxx code means from its number.
When building discovery or server-settings features, fetch the current values first and present them to the admin before writing, so the five-category ceiling is visible in the UI. If you support both discovery categories and channel categories in one bot, name the two concepts differently in code and logs to avoid confusing the two errors when they occur.
The lesson generalizes: 30xxx codes name a numeric cap, and the literal message names the resource, so log messages, not just codes. The per-guild caps that bots actually hit day-to-day are tabulated on the Discord limits page.
Official reference: Discord Developer Docs - Opcodes and status codes. See all Discord error codes or the Discord limits and quotas.
Related codes
Error 30030 - quick answers
What does Discord error 30030 mean?
This one is easy to misread. "Server categories" here refers to Discord's discovery/server-directory categories (the tags a public server selects to describe itself), not channel categories. A guild can select at most five. The error appears when a bot, or a user acting through OAuth2, tries to update the guild's discovery metadata with more than five categories.
How do I fix Discord error 30030?
1. Reduce the discovery categories list to at most five (one primary plus up to four secondary) 2. If your bot manages channel categories, not discovery categories, look at the 30013 channel cap instead 3. Confirm the endpoint and payload you are sending; this code should only come from discovery-related routes
Should I retry after error 30030?
No. Retrying the same request produces the same error; the condition has to be fixed first. Treat it as a permanent failure for that message and surface it, rather than looping.
Stop debugging Discord by hand
Connect the channel through Conferbot: tokens, webhooks and retries are handled, failures show as readable status.