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:
- Kage remembers the usage counts of all the server's invites and the person who created each one.
- When someone joins, Kage reads the invites again and looks for the one whose usage count has increased. Its creator counts as the inviter.
- 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.
- 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:
| Term | Meaning |
|---|---|
| Real invite | The join was not classified as suspicious, and the member is still on the server. |
| Fake | The 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. |
| Left | An originally real invite whose member has since left the server. |
| Net | Real 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
| Command | Effect |
|---|---|
/invites | Shows net, real, fake and left invites for you or another member. Everyone in the channel sees the reply. |
/invites-leaderboard | Shows 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
- Create an invite: In Discord, create an invite with a test account as creator.
- Join: Join with a second account through it.
- Command:
/invitesfor the first account shows a real invite or, for a new account, a fake one. - 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
Keep reading
More questions? Ask Kage AIAI
Describe what you need – Kage AI picks out the right guide and gives you the sources.
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.