Discord supports two types of strikethrough: native Markdown strikethrough (~~like this~~) and Unicode combining strikethrough (l̶i̶k̶e̶ ̶t̶h̶i̶s̶). The Markdown version is cleaner and renders bold in the visual diff; the Unicode version works everywhere Markdown doesn’t.
The critical difference: Markdown strikethrough only renders as strikethrough inside Discord messages. If you paste ~~text~~ into your username, nickname, or a server name field, Discord displays the literal tildes, not the strikethrough. Unicode strikethrough bypasses this limitation entirely.
When to use which strikethrough
| Context | Native ~~text~~ | Unicode s̶t̶r̶i̶k̶e̶ | Recommendation |
|---|---|---|---|
| Chat messages | Yes — renders cleanly | Yes — works but looks rougher | Use native Markdown |
| Username | No — shows literal ~~ | Yes | Unicode only option |
| Server nickname | No | Yes | Unicode only option |
| Server name | No | Yes — test first | Unicode, verify rendering |
| Bot messages (via API) | Yes if markdown=true | Yes always | Depends on bot setup |
| Slash command responses | Yes | Yes | Either works |
How to use Unicode strikethrough on Discord
Type your text in the generator above and select the Strikethrough style. Click Copy, then go to Discord Settings → My Account → Edit → paste into Username. The combining overlay characters (U+0336) attach to each letter, creating the strikethrough effect as pure Unicode text.
Unicode strikethrough works by placing a combining long stroke overlay character after every letter. This is a zero-width combining character — it modifies the preceding character’s display but counts as its own code point. Discord’s username field allows combining characters, so it renders correctly.
Why Discord has both strikethrough types
Discord uses a custom Markdown parser (based on CommonMark but heavily modified) for message content. The parser interprets ~~text~~ as strikethrough, similar to how **bold** and *italic* work. But this parser only runs on message content — usernames, nicknames, and server names are stored as raw Unicode strings with no Markdown processing.
Unicode strikethrough predates Discord’s Markdown support. The combining characters exist in Unicode for legitimate uses like linguistic notation and mathematical annotations. Discord’s font renderer (which uses system fonts on each device) applies the combining overlay visually, making the strikethrough appear without any app-level parsing.
Troubleshooting strikethrough on Discord
- Strikethrough not working in messages: you may have accidentally used Unicode instead of Markdown. For messages, ~~two tildes~~ is the cleanest method. Delete and retype with tildes.
- Username shows ~~tildes~~: you’re using Markdown format in a non-Markdown field. Use our generator to get Unicode strikethrough instead.
- Strikethrough looks different on mobile vs desktop: combining characters render using the device’s installed fonts. On Windows, Discord uses gg sans; on iOS/Android, system fonts. The strikethrough line may sit at a slightly different height. This is expected.
- Long strikethrough username gets rejected: Discord has a 32-character limit for usernames. Combining characters count separately from the base letters, so a 16-letter strikethrough name is actually 32 characters (16 base + 16 combining). Plan for this.
Step-by-step: cross out text on Discord in 60 seconds
The fastest path from plain text to Discord crossed out text. Works for messages, usernames, nicknames, and server names — each uses a slightly different mechanism, so follow the branch that matches your use case.
- For a chat message — type ~~your text~~ (two tildes on each side). Discord's Markdown parser converts it to strikethrough when you hit Enter. Fastest and cleanest method for messages.
- For a Discord username, nickname, or server name — tildes won't work (those fields don't parse Markdown). Use the Unicode strikethrough generator on FancyText.dev instead. Paste your text, copy the 'Strikethrough' output, and paste it into the field.
- For a role label — same as a nickname: Unicode strikethrough. A crossed-out role name like '̶i̶n̶a̶c̶t̶i̶v̶e' reads as visibly retired without renaming or deleting the role.
- For mixed content — you can combine Markdown strikethrough with bold or italic in the same message: **bold** then ~~strikethrough~~ renders correctly. Don't nest them (~~**both**~~ is inconsistent across clients).
- Save and verify: after pasting Unicode strikethrough into a profile field, check that your username shows the crossed line on both desktop and mobile. Older Android Discord builds occasionally render the combining character with a gap.
Why people search 'Discord crossed out text' (and what actually solves it)
The queries 'Discord crossed out text', 'how to strikethrough Discord username', 'Discord strikethrough nickname', and 'cross out text in Discord' all describe the same problem with slightly different vocabulary. The answer depends on where you want the strikethrough: inside a message is a two-line Markdown fix (~~text~~), everywhere else is Unicode (the combining character U+0336 after every letter).
If you want to experiment with cross-outs in other social profiles too — TikTok bios, Instagram captions, Twitter/X posts — the Unicode version is portable. The same strikethrough string you paste into your Discord nickname works identically everywhere else that stores raw Unicode. That universality is the main reason Unicode strikethrough survives even though Markdown is cleaner in chat.