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.

Live example

Variable playground

Type a template and see what the bot turns it into. Single curly braces, exactly as the bot replaces them.

This example runs entirely in your browser. Nothing is sent, nothing is saved, and no server is touched.

Use single curly braces. A name the bot does not know is left untouched.

Insert a variable

Member
Staff
Ticket
Server
Channel
Close
Time

Leave empty to see the fallback the bot uses.

What the bot produces

Hi <@111111111111111111>, welcome to Demo Server! Ticket #128 in <#444444444444444444> is now Open. Closed by <@222222222222222222>, reason: No reason provided Unknown name: {not_a_variable}

This is the raw text. Discord turns the mention codes into a clickable name or channel. Turn off the staff switch above, or clear the reason field, to see the fallback values the bot falls back on.

Sample values (made up, not from any real server)

Member
demo_member#0001 (111111111111111111)
Staff
demo_staff#0002 (222222222222222222)
Server
Demo Server (333333333333333333)
Channel
#ticket-0128 (444444444444444444)
Ticket
#128 ยท Support ยท High ยท Open

Live example

Embed preview

Fill in the fields and see the result the way Discord shows it. This is the same preview the dashboard editor uses.

This example runs entirely in your browser. Nothing is sent, nothing is saved, and no server is touched.

Markdown works here, and so do the variables from the playground above.

Leave empty to hide the footer and the timestamp.

Preview

M
ModoraBOTToday at 04:35 PM
Demo Server

Ticket #128 opened

Hi @User, thanks for reaching out in Demo Server. A staff member will be with you shortly.
Handled by demo_staff โ€ข Mon, Sep 14, 2026, 04:35 PM

The preview keeps Discord's own colours on purpose: repainting it in our house style would misrepresent how it looks in Discord.

๐Ÿ’ก 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?