cd /news/cybersecurity/how-i-detect-discord-selfbots-withou… Β· home β€Ί topics β€Ί cybersecurity β€Ί article
[ARTICLE Β· art-12588] src=dev.to β†— pub= topic=cybersecurity verified=true sentiment=Β· neutral

How I Detect Discord Selfbots Without Reading a Single Message

The article describes a method for detecting Discord selfbots (automated user accounts) by analyzing typing metadata rather than message content. It identifies bots by measuring the time between typing events across channels (humans take 300-500ms to switch, while bots trigger in 5-50ms), detecting messages sent without a preceding typing event, and spotting patterns where typing events occur in perfect channel ID order. The author offers a free tool at wiretrip.lol that implements these detection techniques with a 30-second setup and log-only mode.

read1 min views27 publishedMay 23, 2026

Discord selfbots - automated user accounts - are used for spam raids, phishing, and coordinated attacks. Traditional moderation bots scan message content, but that requires the MESSAGE_CONTENT privileged intent and raises privacy concerns. I wanted to catch bots without reading what people type. Discord's gateway broadcasts a TYPING_START event every time someone begins typing. This is metadata - it tells you WHO started typing, WHERE, and WHEN. A human needs 300-500ms just to switch focus between two Discord channels. A selfbot fires parallel HTTP requests and can trigger typing in multiple channels within 5-50ms. That gap is massive. A hard threshold of 150ms catches every bot without touching a single real user. Selfbot Human β”Œβ”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚5-50msβ”‚ β”‚ 300-500ms+ β”‚ β””β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β–² β–² β”‚ β”‚ CAUGHT SAFE Some selfbots disable typing events entirely (using "silent typing" plugins). So I added the inverse detection: If a message arrives WITHOUT a preceding TYPING_START - that's suspicious. Normal Discord desktop clients always fire a typing event before sending. No typing + message = likely automation. Selfbots often iterate channels programmatically - by ID order (ascending or descending). Humans jump between channels randomly based on interest.

If I see typing events hitting channels in perfect numeric ID order - that's a bot fingerprint.
https://wiretrip.lol - free, safe defaults (log-only mode), 30-second setup.
── more in #cybersecurity 4 stories Β· sorted by recency
── more on @discord 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain β€” perfect for shipping the agent you just read about.

$git push zahid main
β†’ Live at https://your-agent.zahid.host βœ“
Get free account β†’ Pricing
from €0/mo Β· no card required
LIVE [news/how-i-detect-discord…] indexed:0 read:1min 2026-05-23 Β· β€”