← Back to Bot Hound

How Our X (Twitter) Bot Checker Works

Bot Hound answers one question: is this 𝕏 (Twitter) account a bot? You give it a public handle, it reads the account, and it gives you a bot-likelihood score with the reasons behind it. Here's what actually happens in between.

The short version

  1. You enter a public 𝕏 handle

    Any public account - a follower, a reply guy, someone offering you a deal. You don't need to follow them, and they don't need to be connected to Bot Hound in any way.

  2. Bot Hound pulls that account's public data

    Its profile, hundreds of its recent public posts, and its avatar. Nothing private, nothing that isn't already visible to anyone who opens the profile.

  3. An AI model reads it and forms a judgment

    Not a checklist of thresholds - a model (xAI's Grok) that reads the actual posts and weighs everything together, the way a suspicious human would, but much faster.

  4. You get a verdict you can share

    A bot-likelihood percentage, a plain-language band, and the specific reasons. It lives at its own URL, so you can send it to someone.

What it looks at

No single signal decides the verdict. The model sees all of these at once and weighs them against each other:

It starts by assuming you're real

The model is explicitly instructed to treat an account as human unless there's real evidence otherwise. Low follower count isn't a bot signal. A sparse bio isn't a bot signal. Lots of numbers in the handle isn't a bot signal either - that one gets called out specifically, because people assume it is. Things that push the score down include original opinions, actual conversations with other people, personal-life posts, and humor or bluntness - bots are built to be inoffensive and promotional, so being rude on the internet reads as strongly human.

What pushes a score up fast is the stuff that's hard to explain away: scam and adult-spam links, giveaway bait, romance-lure patterns, or impersonating a well-known living person without the following to match.

The reason this isn't a threshold checklist: the accounts worth catching are built to pass threshold checklists. They age their accounts, they keep their ratios plausible, they post on human-looking schedules. What they can't easily fake is a post history that reads like a person.

What the score means

Every check returns a bot-likelihood percentage from 0 to 100%, plus one of four bands:

BandScoreRead it as
Looks human Under 15% Nothing stood out. Normal-looking account.
Some bot signals 15-45% A few things are off, but not enough to call it. Read the reasons and decide.
Likely a bot 45-75% Multiple signals line up. Probably automated or inauthentic.
Very likely a bot 75%+ The account looks clearly automated or fake.

The percentage is the model's confidence that the account is a bot - not a measure of "how much of a bot" it is. Always read the reasons underneath it; that's where the actual argument is.

What you get back

You can see one: view a sample report.

What it can't do

Worth being blunt about the limits:

If you think a verdict about your own account is wrong, tag or DM @BotHound_ and we'll look at it. We can take a report offline or re-run it.

What it costs

Your first check is free. After that it's $1 per check with a funded balance, or $1.50 for a one-off check without one. No subscription.

What we access

Only public 𝕏 data - public profiles and public posts. You sign in with 𝕏 so we know who you are and can bill you, and that sign-in is identity-only: Bot Hound cannot post, DM, follow, or read your private messages. The permissions page lists the exact scopes.

Check an account

First check is free. Still have questions? Read the FAQ.