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
**bold text**
Preview

bold text

Italic
*italic text*
Preview

italic text

Bold + Italic
***bold and italic***
Preview

bold and italic

Strikethrough
~~strikethrough~~
Preview

strikethrough

Mixed emphasis
**bold** and *italic* in the same line
Preview

bold 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.

UnderlineDiscord only
__underline text__
How it looks in Discord
underline text
Underline + BoldDiscord only
__**underline bold**__
How it looks in Discord
underline bold
Underline + ItalicDiscord only
__*underline italic*__
How it looks in Discord
underline italic
Underline + Bold + ItalicDiscord only
__***underline bold italic***__
How it looks in Discord
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.

H1 — largest headingDiscord only
# Large Header
Preview

Large Header

H2 — section headingDiscord only
## Medium Header
Preview

Medium Header

H3 — subsection headingDiscord only
### Small Header
Preview

Small 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 -#.

Subtext — small greyed textDiscord only
Main message text
-# This is subtext below it
How it looks in Discord

Main 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 (single backtick)
`inline code`
Preview

inline code

Code block (triple backtick)
```
Your multi-line code here
No language specified
```
Preview
Your multi-line code here
No language specified
Code block with language (syntax highlighting)
```python
def greet(name):
    return f"Hello, {name}!"
```
Preview
def greet(name):
    return f"Hello, {name}!"
JavaScript code block
```javascript
const greet = (name) => `Hello, ${name}!`;
```
Preview
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.

Red & Green via diff

Use - for red, + for green

Discord only
```diff
- This text appears red
+ This text appears green
```
How it looks in Discord

- This text appears red

+ This text appears green

Yellow via fix

Everything inside a fix block turns yellow

Discord only
```fix
This text appears yellow/orange
```
How it looks in Discord

This text appears yellow/orange

Blue via ini

Wrap text in square brackets inside an ini block

Discord only
```ini
[This text appears blue]
```
How it looks in Discord

[This text appears blue]

Cyan via bash

Wrap text in double quotes inside a bash block

Discord only
```bash
"This text appears cyan/teal"
```
How it looks in Discord

"This text appears cyan/teal"

Note: Color rendering depends on Discord's theme. Colors may appear slightly different in light mode vs dark mode. These tricks only work inside Discord — the code block syntax won't produce colors in other Markdown renderers.

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.

Single-line quote (>)
> This is a single-line blockquote.
Preview

This is a single-line blockquote.

Multi-line quote — start each line with >
> Line one of a multi-line quote.
> Line two continues here.
Preview

Line one of a multi-line quote.
Line two continues here.

Multi-line blockquote (>>>) — everything after becomes quotedDiscord only
>>> Everything after the triple
angle bracket is quoted.
Even this third line.
How it looks in Discord

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.

Bullet list (use - or *)
- First item
- Second item
- Third item
Preview
  • First item
  • Second item
  • Third item
Numbered list
1. First step
2. Second step
3. Third step
Preview
  1. First step
  2. Second step
  3. Third step
Nested list (indent with 2 spaces)
- Fruits
  - Apple
  - Banana
- Vegetables
  - Carrot
Preview
  • 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.

Basic spoilerDiscord only
||The butler did it!||
How it looks in Discord (revealed)
The butler did it!
Inline spoilerDiscord only
The answer is ||42||, of course.
How it looks in Discord (revealed)
The answer is 42, of course.
Multi-line spoilerDiscord only
||Line one spoiler
Line two spoiler||
How it looks in Discord (revealed)
Line one spoiler • Line two spoiler

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.

Escaped bold asterisks
\*\*not bold\*\*
Preview

**not bold**

Escaped spoiler pipes
\||not a spoiler\||
Preview

||not a spoiler||

Escaped backtick
\`not code\`
Preview

`not code`

Escaped blockquote
\> not a quote
Preview

> not a quote

Quick Reference

All Discord markdown syntax at a glance.

FormatSyntaxDiscord only?
Bold**text**No
Italic*text* or _text_No
Bold + Italic***text***No
Underline__text__Yes
Strikethrough~~text~~No
Header 1# textYes (added 2023)
Header 2## textYes (added 2023)
Header 3### textYes (added 2023)
Subtext-# textYes (added 2024)
Inline code`code`No
Code block```code```No
Blockquote> textNo
Multi-line blockquote>>> textYes
Spoiler||text||Yes
Bullet list- itemNo
Numbered list1. itemNo
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: