Discord Bot Creator

Discord embed builder

Write an embed, see it the way Discord shows it, and copy the JSON for a webhook or your bot’s code.

Free, no sign-in. Runs in your browser; nothing you type is sent to us.

Loaded with an example. Edit anything.

Title and author

15 / 256
12 / 256

Description

111 / 4,096

Markdown works: **bold**, *italic*, `code` and [links](https://…).

Colour

The bar down the left side of the embed.

= 5793266

Fields

Inline fields sit side by side, up to three in a row (two when there is a thumbnail).

4 / 25
  1. Field 1

    12 / 256
    62 / 1,024
  2. Field 2

    24 / 256
    66 / 1,024
  3. Field 3

    5 / 256
    11 / 1,024
  4. Field 4

    7 / 256
    8 / 1,024

Images

Direct links to a PNG, JPG, GIF or WebP file.

30 / 2,048

Message text

Plain text shown above the embed, for example a role ping.

0 / 2,000

Preview

Total 363 / 6,000
Your botAPPToday at 9:41 PM

Night Market RP

Server rules

Read these before you post. Breaking a rule gets you a warning, and three warnings means a 24 hour timeout.

1. Be decent

No slurs, harassment or spam. Disagree with ideas, not people.

2. Use the right channel

Trading in #market, roleplay in the RP channels, bugs in #support.

Staff

@Moderators

Appeals

#appeals

Last updated by the staff team

JSON

Message or webhook payload. Colour is a decimal integer.

{
  "embeds": [
    {
      "author": {
        "name": "Night Market RP"
      },
      "title": "Server rules",
      "description": "Read these before you post. Breaking a rule gets you a warning, and **three warnings** means a 24 hour timeout.",
      "color": 5793266,
      "fields": [
        {
          "name": "1. Be decent",
          "value": "No slurs, harassment or spam. Disagree with ideas, not people.",
          "inline": false
        },
        {
          "name": "2. Use the right channel",
          "value": "Trading in #market, roleplay in the RP channels, bugs in #support.",
          "inline": false
        },
        {
          "name": "Staff",
          "value": "@Moderators",
          "inline": true
        },
        {
          "name": "Appeals",
          "value": "#appeals",
          "inline": true
        }
      ],
      "footer": {
        "text": "Last updated by the staff team"
      }
    }
  ]
}

What goes into a Discord embed

An embed is the card with a coloured bar on the left that bots and webhooks post. It can hold an author line, a title (optionally a link), a description, up to 25 fields, a large image, a small thumbnail and a footer with a timestamp. Regular user accounts cannot send embeds, which is why rules and info posts usually come from a bot or a webhook.

The JSON on this page is the body Discord expects: an embeds array with one embed inside, plus content if you added message text. Post it to a webhook URL, or pass the embed object to your bot's send call. The colour goes in as a decimal integer, so #5865F2 becomes 5793266.

Discord rejects embeds that break its limits rather than cutting them short, so the counters matter. Each field needs both a name and a value, links must be full https:// URLs, and images must be direct links to the file. Inline fields sit up to three in a row, or two when there is a thumbnail.

Questions

How do I send this embed with a webhook?

In Discord, open Channel Settings, Integrations, Webhooks, and copy the webhook URL. Then send the JSON from this page to that URL as a POST request with the header Content-Type: application/json, using curl, Postman or any webhook tool.

Can I post an embed from my normal account?

No. Regular user accounts cannot send embeds; only bots and webhooks can. A webhook is the quickest way if you just want one rules or info post in a channel.

What are the Discord embed limits?

Title 256 characters, description 4,096, up to 25 fields with names of 256 and values of 1,024, footer 2,048 and author name 256. All the text in all embeds of one message must add up to 6,000 characters or fewer.

Why is the colour a number in the JSON?

Discord’s API takes the embed colour as a decimal integer, not a hex code. #5865F2 becomes 5793266. The builder converts it for you; in discord.js you can pass either form to setColor.

The robot waving, holding balloons

Want a bot that posts embeds for you?

Describe it: rules posts, welcome cards, ticket panels with buttons. We write the bot and keep it online.