Your server, guarded
around the clock.
Custos stops raids, spam and phishing before a moderator has to wake up, and writes down everything it did, so you can check its work in the morning.
- Every protection feature is free, permanently
- Settings apply instantly, with no restart
- Hard ceilings on what it will do unattended
- Banfree_nitro_drop#1204Known malicious domain2m
- Timeoutnewaccount_4821#12037 messages in 5 seconds14m
- Deletedguest_1190#1202Invite link to another server31m
- Kickuser_0043#1201Raid response, confirmed by staff1h
Every action becomes a numbered case you can search, edit or reverse.
Everything it does
Every module is off until you turn it on, and each one has its own exemptions for the people who should never be filtered.
Raid detection
Weighs join rate, account age clustering, username similarity and invite concentration together, so a busy afternoon is never mistaken for an attack. Locks the server down when it is sure.
Anti-nuke
Catches suspicious bursts of destructive admin activity, alerts staff, strips manageable roles and applies the configured response before a server wipe spreads.
Anti-spam
Violations add points, points fade over time, and the punishment follows the running total. One link too many gets a deleted message. Flooding gets you removed.
Phishing and scams
Configured invite and domain rules run before a message reaches the rest of the server, with allowlists for partners and trusted channels.
Verification
New members sign in with Discord on a web verification page before receiving the configured member role.
Cases and evidence
Every ban, kick, timeout and warning becomes a numbered case with its reason and moderator. Automated message actions preserve the offending content when available.
Audit logging
Message edits and deletions, joins and leaves, role, channel and nickname changes, voice activity. Bans and kicks attributed to the moderator who issued them.
Welcome and roles
Greet new members, hand out roles automatically, and let people pick their own from a button panel. Roles survive a leave and rejoin, so mutes cannot be dodged.
Tickets and support
A button that opens a private channel only the member and your staff can see, with transcripts saved when it closes.
It has to be sure before it acts
Any single raid signal has an innocent explanation. A server linked from a popular post gets a join spike of real people. A game community legitimately skews toward new accounts.
So Custos never acts on one signal. It scores several independently and only responds when they agree, measured against what your server normally looks like rather than a fixed number.
How it avoids false positives- 38 joins in 30 seconds, against a baseline of 3
- 31 of 38 accounts created within the same hour
- 34 of 38 share a username pattern
- All 38 arrived on one invite code
Server locked down. 38 accounts listed for review, awaiting a moderator, because Custos does not mass-remove on its own.
A bot that misfires is worse than no bot
Automated moderation goes wrong in one direction: too much, too fast, to the wrong people. Custos is built so that a bug, a bad setting or a clever attacker cannot empty your server.
- Hard ceilings
- There is a fixed limit on how many people Custos will remove on its own per hour. Your settings can make it less aggressive. Nothing in the dashboard can raise that ceiling.
- An emergency stop
/panic stophalts every automated punishment immediately while leaving logging and your own moderator commands working.- Mass removals stay a human decision
- When Custos thinks it has found a raid, it shows you the list of accounts and waits. Automatic purging is off by default, because a mass-ban on a false positive is not something a community forgives.
- Hierarchy is respected
- Nobody can action a member at or above their own role through Custos, whatever permissions the bot happens to hold.
Stop the raid at the door, not after it
A new member is held the moment they arrive and cannot read or post until they prove they are a person. They get a link, they sign in with Discord on the web, and they are let in. That is the whole experience.
The holding role is the part most servers get wrong, so Custos does not ask you to build one. It creates the role, denies it in every channel, keeps new channels locked as you add them, and stores the role by id so renaming it later cannot quietly unhook the gate.
Verification you have to configure correctly before it protects anything is not protection. Turn it on and it works.
- Solved on the web, not with a button in chat
- Custos builds and locks the holding role itself
- A minimum account age, if you want one
- Kick, ban or simply keep holding when the time runs out
One compromised moderator should not end your server
Most real server destruction is not an outsider breaking in. It is an account your team already trusts, taken over. So anti-nuke distrusts privileged accounts by design and counts what each one does: bans, kicks, channel and role deletions, webhook creation, permission grants, prunes.
Cross a limit and Custos strips what it can from the actor, applies your chosen response, and puts the deleted channels and roles back before it does anything else. The ids are new, so old messages and per-channel permissions do not return, but the server is usable again in seconds instead of after an evening of rebuilding.
- Eleven separate limits, each one per actor
- Deleted channels and roles recreated immediately
- Roles stripped first, so the damage stops either way
- Bots nobody approved are removed on arrival
Two filters the loud ones never trip
Anti-raid asks whether a crowd is an attack. Plenty of trouble never arrives as a crowd: the advertising account that joins on a Tuesday, the throwaway made an hour ago, the self-bot working through a list of servers. The join gate judges each arrival on its own instead.
The honeypot is blunter and it is the one signal strong enough to act on alone. Custos makes a channel, pins a notice saying plainly that posting there removes your account, and leaves it open. People read it. Scripts enumerate the channel list and post anyway.
- Account age, missing avatar, advertising names
- Your own list of blocked name fragments
- A trap channel Custos creates and labels plainly
- Report-only until you are happy with what it catches
Anyone with Manage Server is ignored here, so testing it cannot remove your own staff.
Punishment that fits the pattern, not the message
Every violation adds points and points fade over time, so the response follows the running total rather than the last thing someone typed. Post one link too many and the message goes. Flood the channel and you are removed. Slip once and go quiet, and you are back to zero on your own, with no moderator needed.
A burst is still one incident. Six messages in five seconds is counted once for those five seconds and punished once, rather than walking somebody up three rungs of the ladder and leaving three cases behind for a single mistake.
- Points fade, so one bad afternoon does not follow you
- A per-rule floor for things that are never acceptable
- One incident, one punishment, however many messages
- Every step is yours to move
Every action is on the record, including ours
Every ban, kick, timeout and warning becomes a numbered case carrying its reason, who issued it and what triggered it. When Custos deletes a message it keeps a copy first, because a case with no evidence is not something a moderator can review, only something they have to take on trust.
The member is told what happened and given a link to appeal it. Custos can be wrong, so it is built on the assumption that it will be: there is a fixed hourly ceiling on automated removals that no setting can raise, and mass removals during a raid are shown to you for confirmation rather than carried out on their own.
- Numbered cases with reason, moderator and evidence
- The deleted message preserved, so the case is reviewable
- A hard hourly ceiling on automated removals
- /panic stop halts every automation instantly
The everyday things, without a second bot
Protection is the point, but a server still needs to greet people, hand out roles and answer questions. Custos does those too, so you are not running a second bot alongside it and hoping the two agree about who is muted.
The pieces know about each other, which is the advantage. Welcome messages wait until a member verifies, rather than announcing a raider to the whole server as they arrive. Roles survive a leave and rejoin, so a mute cannot be dropped by going out and coming back.
- Welcome and leave messages, held back until someone verifies
- Automatic roles on join or after verifying
- Self-assignable roles from a button panel
- Tickets with transcripts, and suggestions with voting
Run it under your own name
Members see your bot, with your name, your avatar and your status. Not a bot they have seen in forty other servers. Everything underneath is still Custos: the same protection, the same commands, the same dashboard.
You make the application in the Discord developer portal and paste the token in once. It is encrypted before it is stored, it is never shown again, and you can revoke it from Discord at any moment without asking us.
- Your own name, avatar and profile
- Your own presence and activity text
- Runs on your token, on our infrastructure
- Switch back to Custos whenever you like
Protection is free. It always will be.
Premium exists for the things that cost money to run, longer log retention, archive search, analytics and API access. Not for the things that keep raiders out.
See what Premium addsFree
€0
Every protection feature, no server limit, no trial.
Premium
Save 19%€29
per year, per server. or €2.99 monthly.
7 days free, no card
Set up in three steps
About a minute, and nothing is switched on until you say so.
- 1
Add Custos
It asks for the permissions it needs to moderate, and nothing beyond them.
- 2
Run /setup quick
Point it at a log channel and a moderator role. Logging starts immediately.
- 3
Tune it on the dashboard
Turn on what you want, adjust the thresholds, and watch what it catches.
Common questions
- Is Custos really free?
- Every protection feature is, and always will be. Premium adds longer log retention, archive search, analytics and API access, which are the things that cost money to run. A server under attack should never find out its protection was a paid feature.
- What permissions does it need?
- Manage Roles, Kick, Ban, Moderate Members, Manage Messages, Manage Channels, View Audit Log and Manage Server. The invite link asks for exactly those. Run /diagnose at any time and it will tell you what it is missing and what breaks without it.
- Can it ban people by mistake?
- It can be wrong, so it is built assuming it will be. There is a fixed hourly ceiling on automated removals that no setting can raise, /panic stop halts all automation instantly, and mass removals during a raid are shown to you for confirmation rather than carried out automatically.
- Does it read my messages?
- The bot reads message content in order to filter spam and phishing, which is how any content filter works. Storing that content is a separate switch, off by default, with a retention window you choose. The dashboard only ever reads your username and server list.
- Where do I get help?
- The Custos support server. Ask there and you get an answer from the people who build it rather than a ticket queue. Bugs, feature requests and setup questions are all fine, and the same link is in the footer of every page.
- What happens if I stop paying?
- The server drops back to the free plan with every protection feature intact. Cases, warnings and settings are kept. Message logs older than the free retention window age out on the normal schedule rather than being deleted on the spot.
Put it on your server tonight
Free to use, with paid plans for large servers. Every protection feature is in the free plan.