Welcome & Goodbye Guide

Create custom join/leave messages with rich embeds, placeholders, live preview, and channel selection.

Overview

Lyx supports fully customizable welcome and goodbye messages. Messages can be plain text or rich Discord embeds with titles, descriptions, colors, fields, images, thumbnails, footers, and timestamps.

Basic Setup

Welcome Messages

/welcome setup channel:#welcome message:"Welcome {user} to {server}! You are member #{member_count}."

Options:

  • channel (required): Channel to send welcome messages
  • message: Plain text message (supports placeholders)
  • embed: Use embed mode (true/false)
  • title: Embed title (when embed=true)
  • description: Embed description
  • color: Embed color in hex (e.g., #32d74b)

Goodbye Messages

/goodbye setup channel:#goodbye message:"{user} has left {server}. We now have {member_count} members."

Same options as welcome. Goodbyes use the same placeholder system.

Disable

/welcome disable
/goodbye disable

Placeholders

Placeholders are replaced with actual values when the message is sent. Use them in plain text or embed fields.

PlaceholderDescriptionExample Output
{user}Username (no discriminator)JohnDoe
{user_mention}Mention the user@JohnDoe
{user_tag}Username with discriminatorJohnDoe#1234
{user_id}User's Discord ID123456789012345678
{server}Server nameMy Community
{server_id}Server's Discord ID987654321098765432
{member_count}Current member count1,234
{channel}Channel mention where message sent#welcome
{date}Current date (localized)October 13, 2025
{time}Current time (localized)2:30 PM
Tip: In embed mode, placeholders work in title, description, fields, footer, and author name.

Embed Mode

Enable with embed:true in setup. Embeds support:

  • Title (max 256 chars)
  • Description (max 4096 chars, supports markdown)
  • Color (hex, e.g., #7c5cff)
  • Fields (name + value, up to 25, inline option)
  • Author (name, URL, icon URL)
  • Thumbnail (URL, 90x90px)
  • Image (URL, full width)
  • Footer (text + optional icon URL)
  • Timestamp (current time)

Full Embed Example

/welcome setup channel:#welcome embed:true title:"Welcome to {server}!" description:"Hey {user_mention}, welcome to **{server}**! 🎉" color:#32d74b thumbnail:"https://example.com/logo.png" footer:"Member #{member_count}"

Live Preview

The dashboard provides a real-time Discord-style preview that updates as you type. Access at /dashboard/{guildId}/welcome.

  • Two-column layout: editor left, preview right
  • Mobile stacks vertically
  • Preview matches Discord's rendering exactly
  • Shows character counts and limits

Test Send

Send a test message to verify formatting before going live.

/welcome test

Or use the "Test Send" button in the dashboard. Test sends use your account as the "new member" for realistic preview.

Message Templates

Quick-start templates available in the dashboard:

  • Simple — Basic text welcome
  • Embed Standard — Clean embed with server info
  • Embed with Rules — Includes rules channel link
  • Minimal — Just the essentials

Select a template, customize, and save.

Autoroles

Automatically assign roles to new members.

/autorole add role:@Verified delay:0
/autorole add role:@Member delay:3600
  • role (required): Role to assign
  • delay: Seconds before assigning (0 = instant)

Multiple autoroles supported. List with /autorole list, remove with /autorole remove.

Dashboard Editor

The Welcome page (/dashboard/{guildId}/welcome) features:

  • Separate tabs for Welcome and Goodbye
  • Enable/disable toggles
  • Channel selector with permission checks
  • Plain text / Embed mode tabs
  • Placeholder chip picker
  • Live Discord-style preview
  • Test send button
  • Autorole management section
  • Template selector

Example Messages

Simple Text

Welcome {user_mention} to **{server}**! 🎉
Please read our rules in #rules and grab roles in #roles.
You are member **#{member_count}**!

Embed with Fields

Title: Welcome to {server}! 🎉
Description: Hey {user_mention}, thanks for joining!
Color: #32d74b
Fields:
  - Name: 📜 Read Rules, Value: <#rules>, Inline: true
  - Name: 🎭 Get Roles, Value: <#roles>, Inline: true
  - Name: 👥 Member Count, Value: #{member_count}, Inline: true
Footer: Lyx Bot • {member_count} members
Timestamp: true

Goodbye with Stats

{user} has left **{server}**.
We now have **{member_count}** members.
Thanks for being part of our community! 👋

Common Issues

Welcome messages not sending

Check: 1) Welcome enabled in setup, 2) Channel exists and Lyx has Send Messages + Embed Links, 3) Channel not ignored in logging, 4) Bot not rate limited.

Placeholders not replacing

Ensure correct spelling: {user} not {username}. Placeholders are case-sensitive. Use /welcome test to verify.

Embed color not showing

Use hex format: #7c5cff (with #). The dashboard color picker handles this automatically.

Autoroles not assigning

Check: 1) Lyx's role is above the autorole, 2) Lyx has Manage Roles, 3) Delay not too long (check after delay), 4) Role not managed by integration (Twitch, etc.).