Discord Embed Generator
Building an embed by hand means guessing at field limits and colour formats until something renders. This visual builder shows the embed exactly as Discord will draw it while you edit, then exports the same result as Discord.js v14 code, discord.py, or raw JSON for a webhook.
How to use the Embed Generator
- Fill in the title, description, fields, colour, and images.
- Watch the live preview to catch field-limit and layout problems early.
- Export as Discord.js, Python, or JSON, and paste it into your bot.
Discord Embed Specifications & Limits
Rich embeds allow bots and webhooks to format structured cards inside Discord chat. Keep the following character limits in mind when designing embeds:
- Title: Up to 256 characters.
- Description: Up to 4096 characters (supports markdown, spoilers, masked links).
- Fields: Maximum of 25 fields per embed. Each Field Name supports up to 256 characters, and Field Value supports up to 1024 characters.
- Footer: Up to 2048 characters.
- Total Combined Characters: The total character count across all embed properties cannot exceed 6000 characters per message.
Embed structure and the limits that silently truncate it
An embed is a structured card with its own set of fields: title, description, up to 25 named fields, an author line, a footer, a thumbnail, a full-width image, and a colour strip down the left edge. Each element has its own character limit, and there is a combined ceiling of 6,000 characters across everything in a single embed.
The individual caps are worth knowing because exceeding them causes a rejected request rather than a visible warning. A title allows 256 characters, a description 4,096, a field name 256, a field value 1,024, and a footer 2,048. Fields can be marked inline, which places up to three side by side, and mixing inline and full-width fields is the main tool you have for layout.
The colour is the most common source of confusion. Discord stores embed colours as decimal integers, not hex strings, so passing a hex value straight through either errors or produces the wrong colour. Converting first is required. A single message can carry up to ten embeds, which is how longer formatted announcements are usually structured.
Common problems and fixes
- The embed does not send and returns a 400
An element exceeded its limit, or the colour is a string rather than an integer. Check the description against 4,096 characters first. - Fields stack vertically instead of side by side
Fields must be marked inline. Discord places at most three inline fields on a row. - The image does not appear
The URL must be publicly reachable and served over HTTPS. Discord cannot fetch a local file or an authenticated link.
Frequently asked questions
How do I use this embed in Discord.js v14?
Copy the exported JavaScript code and pass the EmbedBuilder object into channel.send({ embeds: [embed] }) or interaction.reply({ embeds: [embed] }).
Can standard Discord users send embeds without a bot?
Standard user accounts cannot send embeds directly in chat, but anyone with a channel Webhook URL can send embeds using our Webhook Sender.
What is the character limit for embed descriptions?
Discord embed descriptions support up to 4096 characters with full Markdown formatting.
How many fields can a Discord embed have?
An embed can contain up to 25 fields, with 256 characters for field names and 1024 characters for field values.
What is the total character limit for a Discord embed?
6,000 characters across all elements combined, with individual caps such as 4,096 for the description and 1,024 per field value.
How many embeds can one message contain?
Up to ten, whether sent by a bot or through a webhook.
Why is my hex colour wrong?
Discord expects a decimal integer. Convert the hex value first, for example with the colour picker tool.