Bold
**bold**Two asterisks. The workhorse of Discord Markdown — use it for the one thing you want people to read first, not for whole paragraphs.
Write a message on the left and see the Discord Markdown exactly as the chat client will render it on the right — bold, italic, underline, spoilers, headers, subtext, lists, quotes, code blocks, and colors. Copy the finished message and paste it into any channel.
Discord Markdown is the plain-text formatting syntax built into the Discord chat box. You type a few characters around your words — **like this** — and Discord styles them the moment you press Enter. It borrows most of its rules from Markdown, drops the parts that make no sense in a chat window, and adds three of its own: underline, spoilers, and subtext.
What you type
# Server update
**Patch 2.4** is live! Highlights:
- *Faster* matchmaking
- __New__ ranked season
- ||Secret boss unlocked||
-# Full notes in #changelogYouToday at 12:00
Server update
Patch 2.4 is live! Highlights:
Full notes in #changelog
The five styles that cover most day-to-day Discord Markdown. They nest in any order, so a phrase can be bold, underlined, and hidden behind a spoiler at once.
**bold**Two asterisks. The workhorse of Discord Markdown — use it for the one thing you want people to read first, not for whole paragraphs.
*italic* / _italic_One asterisk or one underscore. Underscores are safer around punctuation; asterisks are safer inside_a_word.
__underline__Two underscores, a Discord-only extra. Combine it as __**underlined bold**__ for section titles inside a long message.
~~struck~~Two tildes. Handy for corrections and for crossing off finished items in an event checklist.
||hidden||Two pipes hide the text behind a grey block until someone clicks it. /spoiler at the start of a message hides all of it.
\*not italic\*A backslash prints the next character literally — the fastest way to post asterisks, underscores, or a stray pipe.
Long announcements need structure. This half of Discord Markdown turns a wall of text into something a server member can skim in three seconds.
Three sizes, each needing a space after the hashes and a line of its own. #### and deeper are not part of Discord Markdown and post as literal characters.
Smaller grey text for a footnote, a credit, or an “edited” note under the main message. It also works as a lightweight divider between blocks.
A dash or asterisk makes bullets; a number and a period make an ordered list that renumbers itself. Two extra spaces of indent nest a sub-item.
A single > quotes one line. >>> quotes everything left in the message — useful for pasting rules or a long reply without breaking each line.
What you type
## Weekly schedule
- Mon — build night
- bring your own snacks
1. Sign up in #events
2. Join the voice channel
> No mic? Type in chat.
-# Times are UTCYouToday at 12:00
Weekly schedule
No mic? Type in chat.
Times are UTC
Code blocks are the one place where Discord Markdown stops formatting and starts preserving. They are also the only way to post colored text.
Backticks around a phrase give inline code. Three backticks plus a language name give a highlighted block — Discord recognises the common ones including js, py, json, cpp, cs, css, bash, diff, xml, and yaml. Inside a block every other Discord Markdown rule is switched off, which makes it the simplest way to show syntax without it being formatted.
```py
def hello(name):
return f"hi {name}"
```Highlighting renders on desktop and web. The mobile app shows the block in plain monospace.
Discord Markdown has no color syntax, but a code block tagged ansi understands terminal escape sequences. Write ESC[1;31m before the text and ESC[0m after it, where ESC is a real escape character you cannot type on a keyboard — the Color button in the editor above inserts it for you.
```ansi
ESC[1;31mRed alert!ESC[0m
ESC[0;40mESC[1;32mGreen on dark blueESC[0m
```Colors appear on desktop and web only; mobile shows the text without them. Add 1 for bold and 4 for underline, separated by semicolons.
Discord turns any bare URL into a clickable link and adds a preview card underneath. The two link tricks in Discord Markdown let you change the text people see, or stop that card from appearing.
Masked links behave differently depending on who is speaking. In a bot message or an embed they render as a neat hyperlink; typed by a normal account in a channel, many clients still show the raw brackets. Test before you rely on one in a rules post.
[Read the rules](https://example.com)Replaces the URL with your own label. Most reliable in bot and webhook messages and inside embed fields.
<https://example.com>Angle brackets keep the link clickable but suppress the embed card — the polite way to drop five links at once.
\*stars\* and \_underscores\_A backslash makes the next character literal, so your text posts exactly as typed.
`**stays literal**`Backticks disable every Discord Markdown rule inside them — quicker than escaping each character.
Half of the confusion around Discord Markdown comes from Markdown features Discord simply never implemented. Here is what is missing and what to use instead.
There is no table syntax. Pipes and dashes post as literal characters. The usual workaround is a code block with spaces padding each column, which keeps everything in a monospace grid.
No ^ or ~ syntax and no HTML tags. Use Unicode characters instead — x², H₂O, 10⁻³ — and paste them straight into the message box.
 does nothing and --- stays as three dashes. Post the image URL on its own line and Discord embeds a preview; use a subtext line or a short quote as a divider.
- [ ] renders as a bullet with brackets, ==highlight== stays literal, and HTML tags are never parsed. Emoji and Discord's own markup are the substitutes.
Pipes will not build you a grid, so pad the columns with spaces inside a plain code block. The monospace font keeps everything aligned on desktop, web, and mobile. For a real table, build it in the Markdown table generator and share it as an image.
```
Player Rank Score
Ada 1 2,410
Linus 2 2,180
```From a plain draft to a formatted announcement without sending three test messages to your own server first.
Start from the sample or paste a draft announcement. Everything runs in your browser — the Discord Markdown editor never uploads what you write.
Select a phrase and click Bold, Spoiler, Header, or Color. The correct Discord Markdown syntax is inserted around the selection.
Watch the chat pane on the right. Reveal spoilers, confirm your headers and lists, and make sure the character count still fits one message.
Press Copy for Discord and paste into any channel, thread, forum post, or your profile bio. What you saw in the preview is what the channel gets.
Go back to the editor, format your message with one click, check the Discord preview, and paste it into your server.