Discord is the rare platform with real formatting. Markdown inside a message gives you italics, bold, strikethrough, spoilers, headers, lists and code blocks, and all of it keeps your letters as letters. So the useful question is not how to style a Discord message, it is why anyone pastes converted characters there at all.
The answer is that markdown stops at the message box. Every other text field on Discord is a plain string.
The markdown you get in a message
| Style | Type this |
|---|---|
| Italic | *italic* or _italic_ |
| Bold | **bold** |
| Bold italic | ***both*** |
| Strikethrough | ~~struck~~ |
| Underline | __underline__ |
| Spoiler | ||hidden|| |
| Inline code | `code` |
| Block quote | > quoted |
Discord is one of the few chat platforms that gives you a native underline, which removes the main reason people reach for combining marks elsewhere.
Inside a message, markdown is the right tool every time. It is cleaner to type, it stays searchable, it survives editing, and screen readers handle it properly because the underlying characters never change.
The markdown people forget
Discord’s formatting has grown well past the four basics, and several of the newer additions remove reasons to reach for converted characters.
Headers work with one, two or three hash marks at the start of a line, which gives a long message real structure. A message with a header and a couple of bullet points reads far better than the same content styled with converted characters, and it stays searchable.
Lists work with a hyphen or an asterisk followed by a space, and they nest. Masked links let you put readable text on a URL with [label](url), which is a genuinely better answer than styling the link itself, since styled characters inside a URL break it outright.
Spoiler tags, written with two vertical bars each side, hide text until it is clicked. Nothing in a converted alphabet does that.
The practical point: before pasting converted characters into a message, check whether markdown already covers what you want. It usually does, and every markdown feature keeps your letters as letters.
Where markdown does not reach
| Field | Markdown | Unicode | Recommended |
|---|---|---|---|
| Message | Yes | Yes | Markdown |
| Server nickname | No | Yes | One styled word |
| Channel name | No | Yes | Small caps work well |
| Role name | No | Yes | Heavy styles only |
| Custom status text | No | Yes | Short |
| Forum tag | No | Yes | Short |
| Server name | No | Yes | Keep it findable |
| Account username | No | No | Not possible |
| Channel topic | Yes | Yes | Markdown |
The account username is restricted at the character level and rejects converted letters. The per server nickname is a different field entirely, which is why a member can appear styled in one server and plain in another.
Where converted characters actually earn their place
Nicknames. One styled word reads as personality. A fully styled nickname is hard to mention and hard for moderators to search, so the common pattern of one plain word plus one styled word is a genuinely good compromise rather than a half measure.
Channel names. Small caps are the classic choice here. They keep the channel list visually tidy, they still scan as lowercase at sidebar size, and they hold up better than script, which becomes an unreadable smear in a narrow column. The small caps and superscript guide covers what those characters actually are and where the alphabet has gaps.
Role names. Roles appear in the member sidebar at small sizes and often in a saturated colour. Heavy styles like bold fraktur hold up there; thin script disappears. Pick for legibility at 12 pixels, not for how it looks in the role editor.
Convert the phrase in the Italic Text Generator, copy it, and paste it into the field.
The mention problem
Typing @ searches the plain characters of a username and nickname. A member whose nickname is entirely converted becomes awkward to mention, because you have to remember their real handle and type that instead.
On a small server that is a mild inconvenience. On a busy one it is a real friction point, and it is the strongest practical argument for keeping at least the first word of every nickname in ordinary letters. Some servers make that a rule, and it is a reasonable one.
The same applies to channel mentions. A channel named entirely in converted characters is harder to reference with #, which matters most in exactly the channels people link to constantly, like rules and announcements.
Code blocks are literal, and they will betray you
Anything inside a code block renders in Discord’s monospace typeface. That typeface does not include most of the mathematical alphanumeric range, so converted text inside a code block usually appears as boxes.
This trips people up because the same characters render perfectly one line above, in the ordinary message font. Nothing is broken. The code block is simply drawn with a font that has no glyph for those characters.
Keep the two apart. Code blocks are for code, and code should be in ordinary characters anyway so it can be copied and run.
Bots, logs and moderation
Audit logs, bot commands, webhook payloads and moderation tools all record the exact characters that were typed. That has three consequences on a server of any size.
Searching logs for a member becomes harder when their nickname is converted, because you have to search the converted form rather than the name you remember. Bot commands that take a username as an argument fail against styled input for the same reason. And automated moderation that filters on word lists matches literal strings, so converted text can slip past filters that would catch the plain spelling.
That last point cuts both ways and is worth naming: converted characters are sometimes used deliberately to evade word filters. Most established servers have a rule about it, and most moderation bots now normalise text before matching. If you run a server, check whether yours does.
Server names and discovery
One field is worth separating from the rest: the server name itself.
For a private server among friends, the name is a label and styling it costs nothing. For a public server listed in Discovery, or one people are told about and then search for, the name is how they find you. Discord’s search matches literal characters, so a server named entirely in converted script is a server nobody can look up.
The same applies to the invite link vanity URL, which is restricted to a limited character set and will reject converted letters outright.
The compromise used by most large public servers is a plain server name with any decoration confined to channel names and role names inside. That keeps the front door findable while leaving room for personality in the rooms behind it.
Accessibility
Markdown emphasis leaves the letters as letters, so a screen reader receives words. That is the whole argument for preferring it inside messages, and it costs nothing.
Converted characters are separate code points. Depending on the reader and its verbosity setting they can be announced one at a time using full Unicode names, read as unrecognised symbols, or skipped entirely. A converted nickname is the worst case on Discord, because it is announced on every message that member sends rather than once.
On a voice and text community where some members rely on a reader, a server wide norm of keeping nicknames mostly plain does more good than any individual choice. What screen readers really announce covers the detail.
Try it on a test server
- Create a server nobody else is in.
- Send a message using
*italic*,**bold**and__underline__and confirm all three render. - Put a converted phrase inside a code block and watch it fall back to boxes.
- Rename a channel using small caps and see how it reads in the sidebar.
- Set a fully converted nickname, then try to mention yourself with
@.
Step five is the one that changes behaviour. Failing to mention your own account is a fast lesson in why the first word should stay plain.
Troubleshooting
Asterisks are visible in a sent message. A space slipped inside the markers, or one was never closed. They have to touch the text.
Underline did nothing. Discord’s underline is two underscores on each side, not one. One underscore gives italic.
Converted text shows as boxes in a code block. Working as designed. The monospace font has no glyph for those characters.
A styled channel name is hard to link. Channel mentions match plain characters. Keep a plain word at the start.
A bot command failed on a styled nickname. The command is matching literal characters. Use the account username instead.
A styled role name is unreadable in the sidebar. Thin styles fail at that size. Switch to bold fraktur or bold sans.
Questions people ask about Discord text
How do you italicize on Discord? One asterisk or one underscore on each side inside a message. Two gives bold, three gives bold italic.
Can you style a username? The account username rejects converted characters. Server nicknames accept them, which is why the two often differ.
Why does styled text break in a code block? Code blocks use Discord’s monospace typeface, which lacks glyphs for most of the mathematical range.
Does styled text break mentions? It makes them awkward, because the picker matches plain characters. Keep the first word plain.
Should a server allow styled nicknames? That is a moderation call. Full styling makes audit logs and bot commands harder to use, so many servers require at least one plain word.
The rule for Discord
Use markdown inside messages, always. Reach for converted characters only in the fields markdown cannot touch, keep one plain word at the front of every nickname and channel name so mentions and logs still work, and never put converted text inside a code block.
Discord and Reddit sit in the same category: both give you real markdown, both have plain string fields around the edges. The Reddit guide covers the same decision on a platform where the mobile composers changed during 2026.


