Skip to content

Join and leave messages

Announce new members with who invited them, say goodbye when they leave, and send a private welcome message.

InviteCount can post three kinds of messages:

  • a join message in a channel when a member joins, with who invited them;
  • a leave message in a channel when a member leaves;
  • a join DM, a private message sent to each new member.

Text messages are free for every join type. Embeds and the banners of the special join types need Premium.

Join messages page of the dashboard
Dashboard → Join messages: settings, welcome banner and its editor.

Turn on join messages#

From the dashboard:

  1. Dashboard → Join messages.
  2. Turn on Enabled.
  3. Choose the Channel.
  4. Under Message content, pick a Message type and write its text. Repeat for each type you use.
  5. Click Save changes, then Send a test.

With a command: /setup (fastest), or /welcome channel #channel then /welcome on.

Leave messages work the same way: Dashboard → Leave messages, or /leave channel and /leave on.

Message types#

The bot picks the message from how the member joined. Each type has its own text (and its own embed and banner).

TypeJoin message is used when…Default join text
NormalThe member joined with an invite the bot could attribute.{member_mention} joined; invited by {inviter} ({inviter_invites} invites)
VanityThe member joined with the server's vanity link.{member_mention} joined using vanity link.
BotA bot was added to the server.{member_mention} joined using OAuth.
No permissionThe bot could not read the invites.{member} joined the server, but I do not have enough permissions to track who invited them.
UnknownThe bot could not tell who invited the member.{member} joined the server, I cannot see who invited {member} to this server.

Leave messages use the type of the original join: a member who joined with the vanity link gets the Vanity leave message.

Settings#

Join messages#

SettingWhat it doesFreePremium
EnabledTurns join messages on or off.✓✓
ChannelWhere join messages are posted.✓✓
ReactionAn emoji the bot adds under each join message (a Unicode emoji or an emoji of your server). Also /welcome reaction.✓✓
Message textOne text per join type, up to 2,000 characters, with variables.✓✓
EmbedSends an embed instead of the text, one per join type. See Embeds and variables.—✓
Welcome bannerAn image attached to the join message. See below.Normal typeEvery type

Leave messages#

SettingWhat it doesFreePremium
EnabledTurns leave messages on or off.✓✓
ChannelWhere leave messages are posted.✓✓
Message textOne text per type, up to 2,000 characters.✓✓
EmbedSends an embed instead of the text.—✓
Leave messages page with its preview
Dashboard → Leave messages, with the live preview.

Join DM#

SettingWhat it doesFreePremium
EnabledSends a private message to each new member.✓✓
MessageThe text of the DM, up to 2,000 characters, with the same variables as the join message. Default: Hi, we are glad you joined our server!✓✓

Members who closed their DMs don't receive it.

Join DM page with its preview
Dashboard → Join DM.

Welcome banner#

The welcome banner is an image the bot draws for each new member and attaches to the join message: their name, avatar, the member count, the inviter, or anything you design.

  1. Dashboard → Join messages → Welcome banner.
  2. Choose a Banner type (one per join type). A green dot shows the banners turned on.
  3. Turn on Enabled for that type.
  4. Start from a template or design it in the card editor.
  5. Click Save changes, then Send a test.
FreePremium
Banner of the Normal type✓✓
Banners of the Vanity, Bot, No permission and Unknown types—✓
Editor limits (layers, images, shapes, fonts, effects)Free limitsPremium limits

The banner follows the card editor limits. If the bot can't draw the banner within 8 seconds, the message is sent without it.

Test your messages#

  • Dashboard: Send a test on each page, for the selected type. It uses the saved settings.
  • Commands: /welcome test type:<type>, /leave test type:<type>, /joindm test.

In a test, you are the member and the bot is the inviter. Invite variables show test values (code -1, counters at 0).

Commands#

CommandWhat it does
/welcome on, /welcome offTurns join messages on or off.
/welcome channel <channel>Sets the channel.
/welcome text <type> [text]Sets the text of a type. Without text, goes back to the default.
/welcome reaction [emoji]Sets the reaction. Without emoji, removes it.
/welcome test <type>Sends a test.
/welcome showShows the current settings.
/welcome guiOpens a form with the five texts.
/leave on, off, channel, text, test, show, guiSame for leave messages.
/joindm on, off, text <text>, test, show, guiSame for the join DM. /joindm text also turns it on.

All need Administrator. Except /welcome reaction, these commands will be removed later: the dashboard is the recommended way. Full details: Message and level commands.

Permissions#

The bot needs, in the channel: View Channel, Send Messages, Embed Links (embeds), Attach Files (banners), Use External Emojis, and Add Reactions with Read Message History for the reaction.

FAQ#

Can I mention the member without pinging them?

Use {member_name} or {member_display_name} instead of {member_mention}. Mentions in a message always ping, except @everyone and @here, which the bot never pings.

Why does my embed not show the join message text?

When the embed is on, it replaces the text for that type. Put everything you need in the embed.

What happens to embeds and banners when Premium ends?

They stay saved. Messages go back to their text, and only the banner of the Normal type keeps being sent if it fits the free limits. Everything comes back with Premium.