Guide · Invites & Rewards
How to track invites on Discord and see who invited whom
Track who invited whom on Discord, filter fake and alt invites, and reward real growth with coins, XP, milestone roles, monthly seasons and campaigns.
Invites & RewardsBotGG LinksWelcome messagesBank
On this page
Word of mouth is still the cheapest way to grow a Discord server — but only if you know who is bringing people in, and whether those people stay. This guide shows how to track invites on Discord with BotGG: how the bot works out who invited whom, how to stop fake and alt-account invites, and how to reward your best recruiters with coins, XP, milestone roles, monthly seasons and bring-a-friend campaigns. At the end you’ll see how to track joins from outside Discord with a short link.
What you need
- A server where you have Manage Server permission, and BotGG added to it (https://discord.com/oauth2/authorize?client_id=1553367772451446804&scope=bot%20applications.commands&permissions=282969912110295).
- BotGG’s role with Manage Server (exact invite tracking), Create Invite (personal links) and Manage Roles (milestone roles).
- Access to the web console at https://console.botgg.app. Invites & Rewards is free, bring-a-friend campaigns included.
What Discord shows on its own
Discord doesn’t keep a “who invited whom” history you can rely on. Server Settings → Invites lists the active invite codes, who created each one and how many times it was used; the member list in Server Settings may show which invite a member joined with. That answers “how popular is this link?”, but not:
| Question | Discord alone | BotGG Invites & Rewards |
|---|---|---|
| Who invited this member? | Sometimes, per member | Yes, /invites who and a join log |
| How many members did each person bring? | No | Yes, per inviter |
| Did the invited people stay? | No | Yes, pending, verified and left counts |
| Are some invites fake or alts? | No | Yes, anti-cheat with reasons |
| Rewards for inviting | No | Coins, XP, roles, titles |
| Leaderboard and seasons | No | Yes, all-time and monthly |
How an invite tracker works
Discord doesn’t tell bots which invite a member used. Every invite tracker, BotGG included, remembers the use count of every invite and, when someone joins, looks for the invite whose count went up. BotGG handles the hard cases carefully:
- Personal links are created by the bot for one member, so a join through one is credited to that member exactly.
- Vanity URL joins (discord.gg/yourname) are recognised as vanity, not credited to a person.
- Simultaneous joins: if several people join at once through invites from different people, BotGG marks them unknown rather than guessing. One invite used twice at the same moment is still credited correctly.
- Bots that join are skipped.
The bot needs Manage Server to read all invites at once and see vanity uses. With only Manage Channels it falls back to reading channel by channel, and vanity joins are inferred. The Overview tab in the console shows a banner when permissions limit tracking.
Step 1: Turn on Invites & Rewards
Open https://console.botgg.app, pick your server and go to Invites & Rewards. Turn the feature on and check the Overview tab: if a permissions banner appears, give BotGG’s role Manage Server.
From this moment every join is recorded: the source (invite, personal link, vanity or unknown), the inviter, the invite code, the account’s age and what happens later (verified, left, fake). Joins from before the feature was enabled aren’t known — an invite tracker can only see joins it witnessed.
Step 2: Give members personal invite links
Shared invite codes make attribution fragile. Instead, ask members to type /invite link: BotGG creates one personal, never-expiring invite for them and returns the same link every time they ask. The reply also shows how many people joined through it, how many were verified and the reward per invite. The leaderboard has a 🔗 button that does the same.
In Settings → Personal links choose the channel those invites open into (by default the server’s system channel). If a member deletes their link in Discord, the next /invite link simply creates a new one.
Step 3: Set up anti-cheat
Rewards attract cheaters: alt accounts, friends who join and leave immediately, the same person rejoining. BotGG counts an invite as verified only after it passes these checks (Settings → Anti-cheat):
| Rule | Default | What it does |
|---|---|---|
| Minimum account age | 7 days | Younger accounts are marked fake (“young account”) |
| Hold time | 24 hours | The invite stays pending; it counts only if the member is still there afterwards |
| Require Verification | Off | Also wait until the member passes Verification; denied or kicked → fake |
| Leaving before it counts | — | Marked fake (“left quickly”) |
| Leave window | 7 days | A verified invitee who leaves within N days of joining is deducted as “left” |
| Alt detection | On, 3 accounts | Several invitees of one inviter within 7 days whose accounts were created on the same day → fake |
| Rejoins | — | A member who comes back never counts as a second invite |
The rule is simple: Invites = verified + bonus. Fake and left invites are shown on stats cards and in the join log, but they never earn anything.
Step 4: Reward every verified invite
In Settings → Rewards set what an inviter gets for each verified invite:
- Coins through Bank (100 by default), shown in the member’s balance and history.
- XP through Levels (50 by default), with normal level-ups, level roles and announcements.
Each part works only when that feature is enabled; otherwise BotGG just counts invites. Each invitee pays out once, so leaving and rejoining can’t farm rewards. The server economy guide explains how to keep invite coins in balance with the rest of your economy.
Step 5: Add milestone roles and recruiter titles
Milestones turn invites into goals. On the Milestones tab, add rows like “5 invites → @Recruiter role + 500 coins”. Each milestone can have:
- a threshold (number of invites);
- a role, coins and XP;
- a title, shown as the member’s recruiter title on
/invites stats; - a custom announcement with
{inviter},{invites},{milestone},{title}and{server}.
Each milestone is granted once per member, even if their count drops and climbs again. The Free plan includes 3 milestones and Pro 25. A starter set fills in sensible rows in one click.
Step 6: Run monthly seasons and leaderboards
Big servers have veterans with hundreds of invites, which can discourage newcomers. Seasons (on by default) give everyone a fresh start each calendar month in your server’s time zone:
/invites leaderboardshows the top inviters for this season or all time, with page buttons and a “Get my invite link” button.- When the month ends, the top 10 are archived, the top 3 receive the season rewards you set (coins, XP and a role held until the next season ends) and the results are posted.
- Past podiums stay visible in the console’s Leaderboard tab.
Step 7: Launch a bring-a-friend campaign
For a launch, an event or a “double invites weekend”, create a campaign on the Campaigns tab:
- a multiplier from 1× to 5× on coins and XP per verified invite;
- an optional goal — “invite 3 friends during the campaign” — with its own coin and XP reward;
- a start and end up to 60 days apart; you can schedule it in advance.
Running campaigns appear at the top of /invites leaderboard. Campaigns are free on every plan.
Step 8: Announce invites and credit inviters in the welcome
Pick an announcement channel in Settings → Announcements and choose what is posted: milestones and season results (on by default) and, if you like, every verified invite. Announcements mention only the inviter. BotGG never sends DMs about invites.
With Welcome messages you can also credit the inviter right in the greeting: {inviter} shows who invited the new member (without pinging them) and {invites} their total. The welcome message guide shows how.
Commands
| Command | Who | What it does |
|---|---|---|
/invite link | Everyone | Your personal invite link and its stats |
/invites stats [member] | Everyone | Invites, rank, title, verified / pending / left / fake, next milestone, season rank and who invited them |
/invites leaderboard [period] [page] | Everyone | Season or all-time top inviters |
/invites who <member> | Staff | How the member joined, status and reason, account age, the inviter’s total |
/invites add / remove <member> <amount> [reason] | Staff | Bonus or correction, saved in the audit log |
/invites reset <member> | Staff | Zero the counters (with a confirm button) |
Staff means Manage Server or one of the admin roles you choose in Settings. The full list is on the commands page.
Track joins from outside Discord with BotGG Links
Invite tracking tells you which member brought people in. When the traffic comes from YouTube, TikTok, a website or an ad, you want to know which post worked. BotGG Links gives your server a short address like botgg.click/your-server with a fast landing page (name, icon, banner, member counts and a Join button).
Each link gets its own Discord invite created by the bot, and the same invite tracker credits joins to it — so you see views, Join clicks and real joins side by side. Add UTM tags to compare campaigns. Links per server: 1 on Free with basic stats, 10 on Pro, which also adds unique visitors, referrers, devices and UTM breakdowns, plus ad pixels that load only after the visitor’s consent.
Automate on invites
Need something custom — a role for the first invite, a message in a staff channel, a row in a spreadsheet? Flows has two invite triggers: Member invited (verified) (with the inviter, invitee, invite count, source and campaign) and Invite milestone reached. See the no-code automation guide.
Troubleshooting
- Many joins show as “unknown”. BotGG lacks Manage Server, or several members joined at the same moment through invites of different people. The first is fixed in Server Settings → Roles; the second is rare outside raids.
- An invite isn’t counted yet. It is pending until the hold time (24 hours by default) passes, and until Verification if you required it.
- Milestone roles aren’t given. BotGG’s role must be above the milestone roles and have Manage Roles.
- No coins or XP. Bank or Levels is off — Invites & Rewards only counts in that case.
- A member’s count dropped. An invitee left within the leave window, or staff used
remove/reset;/invites whoand the join log show why.
FAQ
How do I see who invited someone on Discord?
Turn on an invite tracker before the member joins. With BotGG, staff run /invites who @member to see the inviter, the invite code or personal link, the account age and whether the invite counted. Discord alone doesn’t keep this history reliably.
Do fake invites count?
No. Accounts younger than your minimum age, members who leave before the hold time, alt-account batches and rejoins are marked fake and never earn rewards. They still appear in the join log so staff can see what happened.
Can I track invites for joins that happened before adding the bot?
No. No bot can reconstruct past joins: it has to see the invite counts change at the moment someone joins. Enable Invites & Rewards as early as possible.
Is the invite tracker free?
Yes. Tracking, personal links, anti-cheat, rewards per invite, milestones, seasons, leaderboards and bring-a-friend campaigns are free. Pro raises the milestone limit; see pricing.