Back to Blog

How PeakBot's Fake Invite Detection Works (2026)

Peak Team·How we write these·May 9, 2026·11 min read
By the PeakBot Team — powering 500+ Discord communities
Key Takeaways
  • Discord's own invite object has a uses field and nothing else.
  • Discord's own invite object has a uses field and nothing else.
  • In Dashboard → Invites, the setting is called Fake Invite Detection.
  • The other settings on the page are there to make a human decision faster, not to make it for you.
  • Being straight about the edges is more useful than a feature list.
  • Fifteen minutes, once a week, before any payout.

How PeakBot's Fake Invite Detection Works (2026)

Invite counts are easy to game. PeakBot's invite tracker has a Fake Invite Detection setting that discounts joins where the member leaves again quickly, plus a set of signals on the join log that help you spot the rest yourself. This is what it does, what it does not do, and how to run the manual audit that catches what no rule catches.

Key Takeaways

  • Discord has no native "fake invite" flag. Every join through a link increments that link's counter, full stop.
  • PeakBot's Fake Invite Detection is one rule: if a member leaves within a threshold you choose, that invite stops counting as real. Default threshold is 10 minutes; the range is 1 minute to 24 hours.
  • It is off by default. Turn it on before you run a giveaway, not after.
  • Everything else is signal, not automation: account age on the join embed, suspicious-join highlighting, leave tracking, and rejoin counting are all things you read, then decide on.
  • The audit that actually catches methodical farmers is manual, and it takes about fifteen minutes a week.

What a "fake invite" is, precisely

Discord's own invite object has a uses field and nothing else. There is no property that says whether the account behind a join is real, engaged, or a throwaway. Any bot that reports "fake invites" is applying its own rule after the fact.

That matters, because it means the word "fake" is always a judgement someone made, and you should know which judgement. Three things usually get called fake:

  • Alt-account padding. Someone makes throwaway accounts, joins through their own link, and inflates their invite count to win a reward.
  • Bulk joins. A run of fresh accounts through one link in a short window, often attached to a raid or a griefing run.
  • Drive-by joins. Real people who joined, said nothing, and left within minutes. Counted as an invite, worth nothing.

PeakBot's rule targets the third case directly, and catches a good share of the first two as a side effect, because padded and bulk accounts usually do not stay.

The rule PeakBot actually applies

In Dashboard → Invites, the setting is called Fake Invite Detection. It has one companion setting, a threshold in minutes.

When it is on, a join is reclassified as fake if that member leaves the server within the threshold. The default is 10 minutes. You can set anything from 1 minute to 1,440 (a full day).

That is the whole rule. It is not a scoring engine, there are no confidence values, and it does not kick anyone. It changes how the invite is counted.

Pick the threshold to match what you are protecting:

  • 1 to 5 minutes is a raid and bulk-join filter. Almost nobody legitimate joins and leaves that fast.
  • 10 to 30 minutes is the giveaway setting. Long enough to read the rules and decide the server is not for you, short enough that padding does not survive it.
  • A few hours to a day is aggressive. It will discount real people who genuinely bounced, so only use it if your invite rewards are worth gaming.

What the rest of the invite tracker gives you

The other settings on the page are there to make a human decision faster, not to make it for you.

Show account age. Puts the account's creation date on the join embed. A cluster of week-old accounts arriving through one link is the single most readable pattern there is, and this is what makes it readable.

Highlight suspicious joins. On by default. Marks joins that look off on the log so you are not scanning every line.

Track leaves. On by default. Without it there is no leave timestamp, so Fake Invite Detection has nothing to work with.

Count rejoins. Off by default, and it should stay off if you run invite rewards. With it on, one person leaving and rejoining repeatedly counts every time.

Vanity URL tracking. Attributes joins that came through discord.gg/yourvanity. Worth turning on if you promote the vanity link anywhere, otherwise those joins are attributed to nobody.

Invite rewards. Roles granted at invite-count milestones. This is the feature that creates the incentive to farm in the first place, which is why the detection setting exists.

Setting it up

  1. Open Dashboard → Invites for your server.
  2. Confirm Track leaves is on. The detection rule depends on it.
  3. Turn on Fake Invite Detection.
  4. Set the threshold. Start at 10 minutes.
  5. Set a log channel so join and leave events land somewhere your mods read.
  6. If you run invite rewards, leave Count rejoins off.

There is no scheduled job and nothing to babysit. Classification happens as the leave event arrives.

What it will not do

Being straight about the edges is more useful than a feature list.

It will not catch a patient farmer. Someone who ages their alts, gives them avatars, and tells them to stay a week will pass this rule and every other automated rule. That is a community problem, not a bot setting.

It will not stop a raid. Reclassifying an invite is bookkeeping. Stopping the join wave is anti-raid's job, and the two are separate systems. Set both up: the raid protection guide covers the other half.

It will not protect you from a compromised moderator. Invite tracking is about the entry layer. Damage done by an account that already has permissions is anti-nuke's problem.

It will occasionally be wrong. Someone joins during a stream, gets distracted, leaves at minute eight, and comes back tomorrow. That first join gets discounted. Raise the threshold or turn the setting off during events where that is likely.

The manual audit

Fifteen minutes, once a week, before any payout.

Pull the invite leaderboard. Sort by invite count over your reward window.

Look at retention per inviter, not the total. The question is what share of a person's invitees are still in the server. Someone who brought thirty people and kept twenty is doing exactly what you wanted. Someone who brought thirty and kept two is either farming or their link got used by a bulk-join run. Both are worth a look.

Open the join log for the suspicious one. You are looking for two things together: timestamps bunched into a few minutes, and account ages clustered in the same recent week. Either alone is weak. Both at once is not a coincidence.

Then decide. Three outcomes, and most are the first one:

  • Nothing wrong. A popular member whose link got shared somewhere with high churn. Move on.
  • Casual gaming. DM them, tell them padded invites disqualify them from rewards, watch the next round.
  • Deliberate. Remove them from the reward, revoke the link, and check whether the joining accounts were part of something larger.

Frequently Asked Questions

What counts as a fake invite in PeakBot?

A join where the member left the server within your configured threshold, once Fake Invite Detection is enabled. The default threshold is 10 minutes and it can be set anywhere from 1 minute to 24 hours. Discord itself does not label invites as fake, so this is PeakBot's rule rather than a platform signal.

Is Fake Invite Detection on by default?

No. Invite tracking itself is on by default, because recording who invited whom is harmless. Fake Invite Detection is off until you turn it on in Dashboard → Invites, which means a server running an invite giveaway needs to enable it before the giveaway, not after.

Will it kick or ban anyone?

No. It only affects how an invite is counted. Removing someone is a separate, manual decision, and PeakBot's moderation tools are where that happens.

Can it produce a false result?

Yes, and it is worth knowing where. Anyone who genuinely leaves inside the threshold is discounted, whatever the reason. A ten-minute threshold makes that rare. A six-hour threshold makes it common. Set it to what you are actually protecting against.

Is it free?

Yes. Invite tracking, leave tracking, account-age display, suspicious-join highlighting, Fake Invite Detection, and invite rewards are all on the free tier. Pro ($8.25/month, or $69/year) adds the AI Server Builder and the auto-posting invite leaderboard. Full breakdown on the pricing page.

How do I move over from another invite tracker?

Install PeakBot and enable invite tracking on the dashboard. Counts build from the moment tracking starts, because Discord's audit log does not retain enough history to reconstruct old attribution. Running both bots in parallel for a week is the easy way to sanity-check the numbers before you cut over. Setup is in the documentation.

Does it conflict with another invite bot?

No. PeakBot observes joins through gateway events and does not modify anything on Discord's side, so a second invite tracker can run alongside it.

Conclusion

Fake invite detection is one setting doing one job: it stops counting an invite when the person it brought in leaves straight away. That is genuinely useful before a giveaway, and it is honest about being a heuristic rather than a verdict.

The rest of the work is yours, and it is not much: read the join log, check retention per inviter before you pay anything out, and keep anti-raid and anti-nuke running for the problems invite counting was never going to solve.

Turn it on at peakbot.pro, or read more mod playbooks on the blog. Related: how to moderate a Discord server, Discord raid protection, Discord anti-nuke protection, and how to automate your Discord server.

Try PeakBot free on your server

Setup takes 30 seconds.

Free forever · Setup in 30 seconds

Ready to level up your server?

30+ features included free. Moderation, welcome messages, XP & leveling, tickets, reaction roles, and more.

See All Features