Discord Markdown Formatting
Every text formatting trick available in Discord — with copy-ready examples. Bold, italic, spoilers, colored text, code blocks, headers, and Discord-specific syntax you won't find in standard Markdown.
Discord uses a modified version of Markdown. Most standard syntax works, plus Discord adds its own features like spoiler tags, underline, and subtext.
Text Formatting
These work the same as standard Markdown. Wrap your text with the symbols shown below.
**bold text**bold text
*italic text*italic text
***bold and italic***bold and italic
~~strikethrough~~strikethrough
**bold** and *italic* in the same linebold and italic in the same line
Underline
Underline is a Discord-specific feature. Standard Markdown has no underline — Discord adds it with double underscores (__text__). You can also combine it with bold and italic.
__underline text____**underline bold**____*underline italic*____***underline bold italic***__Headers
Discord added header support in 2023. Use #, ##, or ### at the start of a line. There must be a space between the # and your text.
# Large HeaderLarge Header
## Medium HeaderMedium Header
### Small HeaderSmall Header
Subtext
Subtext is a Discord-exclusive feature added in 2024. Use -# text to create small, greyed-out text — great for captions, credits, or fine print. Must be at the start of a line with a space after -#.
Main message text
-# This is subtext below itMain message text
This is subtext below it
Code Blocks
Wrap text in backticks for code formatting. Single backtick for inline code; triple backticks for multi-line blocks. Add a language name after the opening backticks for syntax highlighting. Code blocks also disable all other Markdown formatting inside them — useful if you need to show raw symbols.
`inline code`inline code
```
Your multi-line code here
No language specified
```Your multi-line code here
No language specified
```python
def greet(name):
return f"Hello, {name}!"
```def greet(name):
return f"Hello, {name}!"
```javascript
const greet = (name) => `Hello, ${name}!`;
```const greet = (name) => `Hello, ${name}!`;
Colored Text
Discord doesn't have a native color command, but you can produce colored text by using code blocks with specific language identifiers. Discord uses highlight.js for syntax highlighting, and certain languages color specific patterns.
Use - for red, + for green
```diff
- This text appears red
+ This text appears green
```- This text appears red
+ This text appears green
Everything inside a fix block turns yellow
```fix
This text appears yellow/orange
```This text appears yellow/orange
Wrap text in square brackets inside an ini block
```ini
[This text appears blue]
```[This text appears blue]
Wrap text in double quotes inside a bash block
```bash
"This text appears cyan/teal"
```"This text appears cyan/teal"
Blockquotes
Start a line with > to create a blockquote. For a multi-line blockquote that spans the rest of your message, use >>> at the start.
> This is a single-line blockquote.This is a single-line blockquote.
> Line one of a multi-line quote.
> Line two continues here.Line one of a multi-line quote.
Line two continues here.
>>> Everything after the triple
angle bracket is quoted.
Even this third line.Everything after the triple
angle bracket is quoted.
Even this third line.
Lists
Create bullet lists with a hyphen (-) or asterisk (*), and numbered lists with 1.. Indent with 2 spaces to nest items.
- First item
- Second item
- Third item- First item
- Second item
- Third item
1. First step
2. Second step
3. Third step- First step
- Second step
- Third step
- Fruits
- Apple
- Banana
- Vegetables
- Carrot- Fruits
- Apple
- Banana
- Vegetables
- Carrot
Spoiler Tags
Wrap text in double pipes (||text||) to hide it as a spoiler. The text is hidden until the reader clicks on it. Useful for hiding plot spoilers, answers to riddles, or sensitive content. Note: spoilers are disabled inside code blocks.
||The butler did it!||The answer is ||42||, of course.||Line one spoiler
Line two spoiler||Masked Links
Hide a long URL behind readable text using [link text](url) — the same as standard Markdown links. Note: masked links only work in embeds and some bot messages, not in regular user messages (Discord prevents this to stop phishing).
[Visit Google](https://google.com)Escaping Characters
Prefix any Markdown character with a backslash (\) to prevent it from being treated as formatting. This is also how you prevent Discord from auto-converting emoji shortcodes.
\*\*not bold\*\***not bold**
\||not a spoiler\||||not a spoiler||
\`not code\``not code`
\> not a quote> not a quote
Quick Reference
All Discord markdown syntax at a glance.
| Format | Syntax | Discord only? |
|---|---|---|
| Bold | **text** | No |
| Italic | *text* or _text_ | No |
| Bold + Italic | ***text*** | No |
| Underline | __text__ | Yes |
| Strikethrough | ~~text~~ | No |
| Header 1 | # text | Yes (added 2023) |
| Header 2 | ## text | Yes (added 2023) |
| Header 3 | ### text | Yes (added 2023) |
| Subtext | -# text | Yes (added 2024) |
| Inline code | `code` | No |
| Code block | ```code``` | No |
| Blockquote | > text | No |
| Multi-line blockquote | >>> text | Yes |
| Spoiler | ||text|| | Yes |
| Bullet list | - item | No |
| Numbered list | 1. item | No |
| Masked link | [text](url) | No (bots/embeds only) |
| Escape character | \* \_ \~ | No |
Frequently Asked Questions
Why isn't my Discord markdown formatting working?
The most common causes: (1) You're inside a code block — code blocks disable all formatting. (2) You're missing a space — headers require a space after the # symbol. (3) The symbols aren't directly adjacent to the text — **bold** works but ** bold ** doesn't (spaces inside the asterisks prevent formatting). (4) You're in a server where the renderer is different.
Does Discord support tables?
No. Discord does not support Markdown tables. To display tabular data, you can format it inside a code block using spaces to align columns, or use an image. This is one of the biggest gaps compared to GitHub Flavored Markdown.
How do I make colored text in Discord?
Discord doesn't have a built-in color command. You can approximate colors using code blocks with specific language identifiers: use ```diff for red (-) and green (+) text, ```fix for yellow text, ```ini with [brackets] for blue, and ```bash with "quotes" for cyan. These colors only appear in Discord, not other Markdown editors.
Can I use Discord markdown on mobile?
Yes, all Discord markdown works on mobile. However, typing the syntax (especially backticks and pipes) is harder on a mobile keyboard. Try using your keyboard's symbol panel or copy the syntax from this page.
What's the difference between > and >>> for blockquotes?
The single > only quotes the current line. The triple >>> quotes everything that follows it in the message — you don't need to add > before each line. It's convenient for long quoted passages.
How do I prevent Discord from formatting my text?
Use a backslash (\) before each formatting character. For example, \*\*not bold\*\* displays literally as **not bold**. Alternatively, wrap the entire message in a code block — code blocks disable all Markdown formatting.
Do Discord headers work on mobile?
Yes, headers (#, ##, ###) added in 2023 work in both the desktop and mobile Discord apps. However, older versions of the app may not render them correctly.
Learn More Markdown
Discord uses a subset of standard Markdown. To learn the full syntax: