Skip to main content
Bloom can send a custom welcome message to a channel whenever a new member joins your server. This page covers setting it up, writing the message, previewing it, and keeping the channel tidy.
Every server has its own command prefix. Throughout these docs, ! stands for your server’s prefix. The commands here need the Administrator permission.

How it works

A welcome message is sent whenever a new member joins. For it to send, two things must both be set:
  • a welcome channel, and
  • a welcome message, built from a template or your own embed code.
If either is missing, nothing is sent. Setting a channel or saving a message turns welcome messages on automatically, so once both exist, the next join is greeted.
A welcome message is the public greeting members see. It is separate from the join gate, which screens or verifies members before they are let in. Assigning roles on join and logging joins in a staff channel are also their own features, configured separately.

Defaults

Quick start

1

Set the welcome channel

Run !welcome #welcome. Bloom confirms the channel and enables welcome messages. Bloom must be able to Send Messages and Embed Links there.
2

Choose a message

Run !welcome template to pick a ready-made design, or !welcome paste to supply your own embed code. Bloom previews it and asks you to confirm before saving.
3

Preview it

Run !welcome test. Bloom renders the message using your own account as the sample member, so you can see the result without waiting for a real join.

Configuring the message

Administrator
Configures the welcome message. Run with no argument to see the current status. Aliases: setwelcome, welcomemsg.
  • !welcome #channel sets the welcome channel (also accepts a channel ID or name) and enables welcome messages.
  • !welcome template lists ready-made designs and saves the one you pick.
  • !welcome paste prompts you to send your own embed code, previews it, and saves it on confirmation.
  • !welcome test previews the saved message using your account as the sample.
  • !welcome enable and !welcome disable turn welcome messages on or off without deleting the configuration.
  • !welcome convert upgrades a legacy message to the modern format (see below).
  • !welcome selfdestruct <duration|off> auto-deletes each welcome message after a delay.
The message is written in the same $e{...} embed format used across Bloom, with variables that fill in the joining member’s details. Use a {message: ...} block to send a line above the embed that actually pings the member.
A welcome that pings the member
On the next join, Bloom posts a greeting line that mentions the member, followed by an embed with their avatar and the current member count. For the full embed format see the Embed syntax reference; for every token you can use, see Variables and placeholders.

Set the channel only

Administrator
Sets or clears just the welcome channel, without touching the message. Alias: setwelcomechannel. Use none to clear the channel and stop welcome messages.

Auto-delete welcome messages

Administrator
Deletes each welcome message a set time after it is sent, to keep the channel clean.
  • Accepted values: a duration such as 30s, 5m, or 1h. The minimum is 5 seconds and the maximum is 1 hour.
  • Use off to disable it, so welcome messages stay in the channel.

Legacy format and conversion

Bloom accepts two message formats. The modern format uses $e{...} blocks. An older YAML format writes one key: value per line. Both work, and !welcome test shows which one your current message uses.
Administrator
Converts a saved YAML message to the modern $e{...} format, previews the result, and saves it on confirmation. Your original is left unchanged if you cancel.
If you are building a message from scratch, use the modern $e{...} format. It is the same format saved embeds use, so anything you learn on the Embed syntax page applies here too.

Interactions with other features

  • Join gate. Members who are rejected or still being verified by the join gate never trigger a welcome message, because the gate runs first.
  • Embeds and variables. Welcome messages share the $e{...} embed format and the welcome variables with several other Bloom features, such as booster and level up messages.

Troubleshooting

A welcome needs both a channel and a message. Run !welcome to check the status. Confirm a channel is set, a message is saved, and welcome messages are enabled. Then confirm Bloom can Send Messages and Embed Links in that channel.
Put the mention in a {message: ...} block, for example {message: Welcome {user.mention}!}, rather than only inside the embed. Bloom sends that block as normal text above the embed so the mention notifies the member.
!welcome test uses your own account as the sample. A few tokens, such as the member’s join date and server nickname, only have a value during a real join, so they can appear blank in the test but work in practice.

Variables and placeholders

Every token you can use in a welcome message and what it fills in.

Embed syntax

The $e{...} format welcome messages are written in.

Invite and first setup

Add Bloom and set the basics before configuring welcome.

Leveling

Another configurable Bloom system that shares the embed and variable format.