Discord renders a subset of Markdown directly in chat. Type the markers around your text, hit send, and Discord converts them to real formatting. No settings, no plugins. This guide covers every syntax that works, plus the mistakes that make formatting fail silently.
If you'd rather click buttons than memorize symbols, the Discord Text Formatter on this site wraps your text in any of these syntaxes and copies the result, ready to paste.
Discord bold, italic and underline syntax
- Bold:
**your text** - Italic:
*your text*or_your text_ - Underline:
__your text__(two underscores on each side) - Strikethrough:
~~your text~~ - Spoiler:
||your text||renders as a black bar until someone clicks it - Combine markers for mixed styles:
***bold italic***or__**underlined bold**__
Discord heading and subtext syntax
# textmakes a large heading,## texta medium one,### texta small one- The
#must sit at the start of the line, followed by a space -# textcreates subtext: a small, gray line useful for footnotes and disclaimers
Discord quote and blockquote syntax
> textquotes a single line>>> textturns everything after it in the message into a quote block
Discord code blocks and inline code
- Inline code: wrap text in single backticks, useful for commands and values
- Code block: wrap in triple backticks on their own lines
- Add a language tag right after the opening backticks (like
jsorpy) and Discord applies syntax highlighting
Discord colored text with ANSI codes
Plain Discord Markdown has no color syntax, but code blocks tagged as ansi render terminal colors. The colors come from ANSI escape codes: an invisible ESC character, followed by a bracket sequence like [2;31m.
The structure of a red ANSI line:
ESC [ 2 ; 31 m Your red text ESC [ 0 m
Typing the ESC character by hand is nearly impossible on a normal keyboard, which is why most people generate these blocks with a tool. The Discord Text Formatter builds the whole block for you: type your text, pick a color, copy the result.
The codes worth knowing:
- Foreground colors:
30gray,31red,32green,33yellow,34blue,35magenta,36cyan,37white - Backgrounds: the same order,
40through47 1bold,4underline,0resets everything back to default
ANSI colors render most reliably in the desktop app. On mobile they may appear as plain or partially colored text, so treat colored blocks as a desktop-first trick.
What works on mobile
Every syntax in this guide renders on iOS and Android. The friction is typing: pipes, backticks and tildes sit behind extra keyboard screens, and spoiler tags are fiddly to place by hand. The formatter runs in your phone's browser, so the mobile workflow is select, tap, copy, paste.
Common Discord formatting mistakes
- Spaces inside the markers.
** bold **renders literally, asterisks and all. Markers must hug the text:**bold**. - A missing closing marker.
**bolddoes nothing. Discord needs the pair. - Heading syntax without the space.
#textis not a heading. It needs# text, at the start of a line. - Underscores in plain text triggering italics. A name like
my_cool_botcan render with unwanted slant. Escape the underscore with a backslash:my\_cool\_bot. - Expecting color without an ANSI block. There is no
red:or[color]syntax in Discord. Colored text only exists insideansicode blocks.
Format Discord text the fast way
Memorize the syntax if you use it daily. For everyone else, the Discord Text Formatter handles every style in this guide: bold, italic, underline, strikethrough, spoiler, headers, quotes, code and ANSI colors. The page also includes a cheat sheet and the equivalent syntax for WhatsApp. It's free, runs entirely in your browser, and nothing you type is uploaded.
For the one-click cleanup behind everything on this site, start with the AI Text Cleaner. More guides like this one live on the AI text cleanup guides page.
Common questions about Discord text formatting
How do I write a spoiler tag on Discord?
Wrap the text in double pipes: ||your secret||. Discord renders it as a black bar that readers click to reveal. Spoilers work on desktop and mobile, and you can stack them with bold or italic inside. If the bars show up literally, check there's no space between the pipes and your text — ||spoiler|| works, || spoiler || doesn't.
Can I send red (or colored) text on Discord?
Not natively — Discord has no color picker. The workaround is an ANSI code block: open a block with ```ansi and wrap text in the red escape sequence. Our Discord Text Formatter's Colored text tab generates the whole block for you — pick a color, copy, paste. ANSI colors only render inside code blocks, and they show for everyone except screen readers and plain-text clients.
How many heading levels does Discord support?
Three. # for Heading 1, ## for Heading 2, ### for Heading 3 — always with a space after the hashes, at the start of a line. There's also -# for subtext, a smaller grey line. Heading markers mid-line do nothing: they only render when the line begins with them.
How do I bold text on the Discord mobile app?
Same syntax as desktop: wrap the words in double asterisks, **bold**. Type it by hand — the mobile app has no formatting toolbar. Long-press to select the words, switch to the symbols keyboard for the asterisks, and send. If it renders as literal asterisks, you probably left a space inside the markers.
Why didn't my ** bold work on Discord?
Almost always one of three reasons: there's a space inside the markers (** bold ** renders literally), the markers didn't wrap the exact text you meant, or you're editing a message where the Markdown was already consumed on send. Re-type it hugging the word — **text**, no spaces inside — and it renders every time.