Invite Tracking: Who Invited Whom, Real and Fake Invites

How Kage detects who invited whom: attribution via invite links, real, fake and left invites, the /invites commands and troubleshooting.

Last checked for accuracy: 14 October 2026

Invite tracking shows who invited whom. It runs automatically in the background as soon as Kage is on the server, and it tells real, fake and left invites apart. That produces a leaderboard of inviters, which you see in the dashboard and by command. The referral program builds on these numbers.

For a short walkthrough, see the guide Invite tracking.

Requirements

  • Kage's permission: Kage needs Manage Server to read the server's invites. If it is missing, tracking silently stays inactive, without affecting the rest of the bot. The permission is part of the standard invite.
  • Dashboard access: You sign in with Discord and need Manage Server (or access granted for this module).
  • Invite links: Tracking only recognizes joins through invites that Kage can read.

How Kage attributes a join

Discord does not reveal which invite was used when someone joins. Kage therefore proceeds like this:

  1. Kage remembers the usage counts of all the server's invites and the person who created each one.
  2. When someone joins, Kage reads the invites again and looks for the one whose usage count has increased. Its creator counts as the inviter.
  3. If Kage finds no such invite but exactly one invite has disappeared, it attributes the join to that invite's creator. That way single-use invites, which Discord deletes after use, are recognized too.
  4. When the bot starts and when it is added to a server, Kage reads all invites. If it could not read them (for example due to missing permissions), the cache is empty: the first join afterwards cannot be attributed, all following ones can.

If Kage cannot determine an inviter, the join is still recorded but credited to nobody.

Real, fake, left

For every join, Kage records a row and classifies it:

TermMeaning
Real inviteThe join was not classified as suspicious, and the member is still on the server.
FakeThe Discord account is younger than the minimum account age (default 7 days), or the member had already been on this server and joined again. These are typical patterns for farming rewards with throwaway accounts.
LeftAn originally real invite whose member has since left the server.
NetReal invites whose members are still there. This number counts for the leaderboard and for rewards.

You set the minimum account age in the referral program (field "Minimum account age of the invited person (days)", 0 to 365). It applies to tracking even if you have not set up any rewards.

When a member leaves the server, Kage marks their entry as left, and the inviter's "Net" number drops accordingly.

Commands

CommandEffect
/invitesShows net, real, fake and left invites for you or another member. Everyone in the channel sees the reply.
/invites-leaderboardShows the top 10 inviters by net invites. Anyone with 0 or less does not appear.

Any member can use both commands.

The dashboard

In the dashboard, the Invites page shows four figures: Real invites, Fake, Left and Total joins. Below is the Top inviters leaderboard, sorted by net, with the breakdown "N real · N fake · N left". An explanation of the terms is there as well. Tracking itself has no on/off switch; it runs from the moment Kage may read the invites. Joins that happened before setup do not appear.

Checking the result

  1. Create an invite: In Discord, create an invite with a test account as creator.
  2. Join: Join with a second account through it.
  3. Command: /invites for the first account shows a real invite or, for a new account, a fake one.
  4. Dashboard: The figures and the leaderboard update.

Troubleshooting

Joins are not attributed

Kage needs the Manage Server permission to read the invites. Without it, tracking stays inactive. Kage cannot attribute joins through routes where Discord provides no matching invite.

New members count as "fake"

The account is younger than the minimum account age, or the member had already been on the server. Lower the minimum account age in the referral program if 7 days is too strict. Joins that were already recorded do not change retroactively.

The numbers drop

Members who leave the server are subtracted from the real invites. This is intended.

The leaderboard is empty

/invites-leaderboard only shows inviters with at least one net invite. In the dashboard, data appears from the first recorded join.

Further reading

Rewards for invites: Referral program. More join features: Welcome and goodbye messages.

Related Kage modules

  • Invite TrackingFrom Premium

See plans and included modules

Keep reading

More questions? Ask Kage AIAI

Describe what you need – Kage AI picks out the right guide and gives you the sources.

Ask Kage AI

Try Kage on your server

Sign in with Discord, invite the bot and set up the modules in the dashboard. The Basic plan is free forever.