Listing & growth

Invite tracking

See who invited each new member, post join and leave messages, track keyword invite links and reward your best inviters with roles.

Open in dashboard Updated Oct 21, 2026
On this page

Invite tracking works out which invite link each new member used and who created it. Buddy can announce it in a public channel, keep a private staff log of joins and leaves, give members a role when they've invited enough people, and create keyword links so you can see which promotion brings people in.

Before you start#

Permissions needed

Buddy needs Manage Server to read your server's invites, and Send Messages in every channel you pick. For invite reward roles it also needs Manage Roles, and its own role must sit above the reward roles in Server Settings → Roles. The congrats message adds a 🎉 reaction, which needs Add Reactions. /invite create needs Create Invite in the channel you use it in.

What can and can't be tracked:

  • Invites created by members (and by Buddy with /invite create) are tracked.
  • Joins through your vanity URL or the server widget can't be traced to a person. They're logged as "Invited by Widget or Vanity URL".
  • Buddy keeps an up-to-date list of your server's invite links only while at least one invite channel below is set, so pick your channels before you start promoting.

Set it up#

Open Invite tracking in your dashboard

It's under Growth in the sidebar.

Choose your public channels

In Public invite messages, pick a Join message channel (who invited each new member), a Leave message channel and, if you'll use reward roles, an Invite milestone channel. Click Save invite messages.

Choose your staff log channels

In Staff invite logs, pick a Join log channel and a Leave log channel. Use channels only staff can see. Click Save staff logs.

Add reward roles (optional)

In Invite reward roles, pick a role, type the Invite Count needed and click Add. Repeat for each step, e.g. 5, 10 and 25 invites.

Open invite tracking

You don't have to use every channel. Each one works on its own, so leave any you don't want empty.

Set it up from Discord#

The invite channels can also be set in Discord: run /setup feature:Join & Leave Messages and pick channels for Join messages, Join log, Leave messages, Leave log and Invite milestones. Invite reward roles are still added on the dashboard.

Settings explained#

Public invite messages#

SettingWhat it doesDefault
Join message channelPosts an embed for every new member: their name, the new member count, who invited them, the inviter's total invites and the invite's keyword, if it has one.None
Leave message channelPosts a short line when someone leaves, with who invited them when Buddy knows.None
Invite milestone channelPosts a congrats message when a member earns an invite reward role.None

Staff invite logs#

SettingWhat it doesDefault
Join log channelLogs each join with the member's tag, who invited them and how old their account is. A short "joined the server" line is posted first, so a join is logged even if the invite lookup fails.None
Leave log channelLogs each leave with when they joined, the roles they had and who invited them (when known).None

Invite reward roles#

SettingWhat it does
RoleThe role to give. Roles with Administrator, Manage Server or Manage Roles, the @everyone role and roles managed by a bot or integration can't be used.
Invite CountHow many members someone must invite to earn it. Whole numbers from 1. Each count can only have one role.

How reward roles work:

  • A member's invites are the number of different people who have joined through invites they created. People who later leave still count.
  • The role is given the moment a new member joins through their invite and pushes them past a threshold. Buddy gives the highest role they qualify for and removes any lower invite reward roles they have, so they only hold one at a time.
  • Each role is awarded once per member. Later invites don't repeat the role or the congrats message.
  • Roles aren't given retroactively. If you add a 10-invite role and someone already has 12 invites, they get it the next time someone joins through one of their invites.
  • To change the role for a count, delete that row (the trash icon) and add it again.

Keyword invites#

A keyword invite is a permanent invite link with a label, so you can see where people come from: twitter, youtube-video, partner-server and so on.

Go to the channel the invite should open

Usually #welcome or #rules.

Run the command

Type /invite create and enter a keyword. Spaces become dashes, and keywords are cut to 50 characters.

Share the link

Buddy posts the keyword and link in the channel. The link never expires and has no use limit.

One keyword invite per channel

Discord reuses Buddy's existing permanent invite for a channel, so running /invite create again in the same channel relabels that same link with the new keyword. Use a different channel for each keyword you want to track separately.

Note

Buddy creates keyword links, so joins through them are credited to Buddy as the inviter, not to the person who ran the command. Use keyword invites to measure promotions. To reward people for inviting friends, have them create their own invite in Discord.

Seeing the numbers#

  • Dashboard → Top inviters: the main dashboard page lists each inviter with their keyword, how many members joined through them and how many of those later left. Click a column header to sort. Only invites that never expire are listed.
  • /invite stats: your server's top 20 invites by uses, with keyword, creator and use count. Only you see the reply.
  • /userinfo: shows which invite a member used, who invited them and the keyword.
  • Analytics: the Top invite keywords chart shows which keywords brought in the most joins.

Commands#

/invite can be used by anyone who can send messages, unless you limit it with command roles.

/invite create <keyword> Everyone

Create a new invite

  • keyword text — What keyword would you like to use for this invite code?
/invite stats Everyone

Show invite stats

Examples#

Reward roles that give members something to aim for:

RoleInvite Count
Recruiter5
Ambassador15
Legend50

What members see in your Join message channel:

Discord Buddy APP Today at 4:20 PM

Sam welcome to the server!
128 total members!
Invited by Alex

Alex has invited 5 members!
Invite Keyword: twitter

And in your Invite milestone channel, when Alex reaches 5 invites:

Discord Buddy APP Today at 4:20 PM

Nice work @Alex you have reached @Recruiter rank! 🎉

In the Leave message channel:

Discord Buddy APP Today at 4:20 PM

Sam left the server. Invited by Alex

Troubleshooting#

Nothing is posted when people join#

  • Check the channel is selected and saved, and that Buddy can View Channel and Send Messages there.
  • Buddy needs Manage Server to read invites. Without it, it can't tell which invite was used.
  • Buddy lists missing permissions and other problems under Bot errors on your main dashboard page.
  • If the channel list doesn't show a new channel, run /setup and pick Update Channels and Roles for Website, then reload the dashboard.

It says "Invited by Widget or Vanity URL"#

The member joined through your vanity URL or server widget, which Discord doesn't link to a person. The join is still logged and counted.

The wrong person got credit#

Buddy compares invite use counts before and after each join. If two people join within a moment of each other, or an invite was created while no invite channel was set, the first match can be off. Set your channels before you start promoting so Buddy always has an up-to-date invite list.

The reward role wasn't given#

  • Buddy needs Manage Roles, and its role must be above the reward role.
  • The inviter must still be in the server when the new member joins.
  • Roles aren't retroactive. They're checked when someone joins through that person's invite.
  • Each role is only awarded once. If you removed it by hand, it won't be given again.

"There is already an invite role level for 10 invites"#

Each invite count can only have one role. Delete the existing row first, then add the new one.

"Roles with Administrator, Manage Server or Manage Roles permission can not be self-assigned"#

Reward roles can't carry powerful permissions. Pick a cosmetic role, or remove those permissions from the role in Discord and run /setup → Update Channels and Roles for Website.

/invite create says it doesn't have permission#

Buddy needs Create Invite in that channel. Check the channel's permission overrides for Buddy's role.

A channel I set earlier now shows as not selected#

Pick it again and save that card. Each card has its own save button.

Loading…