Docs

Embed Builder

Create beautiful Discord embeds

🎨 Custom Embeds

Create stunning Discord embeds with a visual editor. Perfect for announcements, rules, and information posts.

Features

👁️ Live Preview

See your embed as you build it

🎨 Full Customization

Title, description, fields with emojis, footer, image upload or URL, colors

🔗 Component Support

Add buttons and select menus

📤 Multiple Send Options

Send, edit, or save as template

Where it lives

Modules menu, Server tools, Embed Builder. Embeds you save there are the same ones /embed works with.

Commands

All of /embed needs Manage Messages.

/embed create

Start a new embed under a name, optionally in a category.

/embed edit

Edit a saved embed by its ID.

/embed preview

See an embed without sending it anywhere.

/embed send

Send a saved embed to a channel.

/embed list

Every saved embed, optionally filtered by category.

/embed delete

Delete a saved embed.

Variables

Single braces. A variable is only replaced where the bot has that information; the ticket system supplies most of it. What cannot be filled is left in the text exactly as you typed it.

GroupVariables
Member{user} and {user_mention} mention them, {username} is the plain name, {user_tag} the full tag, {user_id} the ID.
Staff{staff} and {staff_mention} mention the staff member, {staffname} is the plain name, {staff_tag} the tag, {staff_id} the ID. When no staff member is involved, for instance on an automatic close, these read System.
Ticket{ticket_number} and its short form {number}, {ticket_id}, {category}, {priority}, {status}.
Server and channel{guild} and {server} are the server name, {guild_id} the server ID. {channel} and {channel_mention} mention the channel, {channel_name} is the plain name, {channel_id} the ID.
Changes{old_value} and {new_value} for a priority or status change, {old_category} and {new_category} when a ticket is moved.
Closing{reason} is the reason, and becomes No reason provided when none was given. {timer}, {timer_duration}, {close_at} and {close_at_timestamp} belong to a scheduled close.
Time{timestamp}, {date}, {time} and {datetime} are filled at the moment the message is built.

Warning

Arrival Studio has its own placeholder set, with names like {user.name} and {server.name}. Do not mix the two lists.

Try it here

Both examples below use the exact replacement the bot runs, with made-up sample values. Change anything you like; nothing on your server changes.

Loading example...
Loading example...

💡 Pro Tip

Tip

Use the dashboard embed editor for even more control: insert emojis into fields, paste image URLs or upload media, and save embed templates for reuse.

Was this page helpful?