Skip to main content

Discord Text Formatter — Strikethrough, Spoiler, Bold, Markdown

WYSIWYG Discord markdown editor with live preview. Toolbar wraps your selection with the right token (bold, italic, strikethrough, spoiler, code, blockquote, headers, masked link). Plus 8 Unicode alphabets for "small text" / "fancy font" Discord messages.

Live preview, no sign-up, no message data leaves your browser. 8 Unicode alphabets included.

Discord supports a slim subset of Markdown for inline emphasis. Bold is two asterisks (**text**). Italic is one asterisk or one underscore. Strikethrough is two tildes (~~text~~). Spoiler is two pipes (||text||). Underline is two underscores (__text__). Inline code is single backticks. Code blocks are triple backticks with an optional language hint. Blockquotes are line-prefixed with >. Headers use one, two, or three leading hashes. The toolbar above wraps your selection in the right token so you never have to remember which character pairs with which format.

Strikethrough, spoiler, bold — the three most-asked syntaxes

Three Discord formatting questions hit Google more than 30,000 times every month combined, so they earn their own short paragraph. Strikethrough wraps any inline text in two tildes on each side: ~~outdated~~. The closing pair must sit on the same line; a line break in the middle breaks the parser and the tildes render literally. Spoiler uses two pipes: ||hidden||. Discord paints the block out as a black bar and reveals it when a viewer clicks. Bold wraps in two asterisks: **bold**. A single asterisk is italic. Three asterisks combine: ***both*** renders bold-italic. The B, S, and Spoiler toolbar buttons above each emit the matching token pair around the current selection.

Small text, fancy fonts, and the Unicode trick

Discord does not have a native small-text formatter. The "small text" you see in popular posts is a Unicode alphabet — separate codepoints that just happen to look like small capital letters. Switch to the Fancy text tab and you get eight of them: small-caps (ᴀʙᴄ), bold-sans (𝗮𝗯𝗰), italic-sans (𝘢𝘣𝘤), monospace (𝚊𝚋𝚌), double-struck (𝕒𝕓𝕔), bold-script (𝓪𝓫𝓬), fullwidth (abc), and spaced (a b c). Each alphabet has its own copy-to-clipboard button. Paste the output into a message or channel topic — Discord renders the codepoints directly. Important caveat: Discord blocks most decorative Unicode in usernames as part of impersonation prevention. Bios accept everything, with a 190-char ceiling.

Discord 2,000 vs 4,000 character cap

Free accounts post messages up to 2,000 characters. Nitro accounts post up to 4,000 — the ceiling moved from 2,000 to 4,000 in 2021, giving Nitro users more room for long-form announcements. The character counter on this tool tracks both: green under 2,000, amber between 2,000 and 4,000 ("Nitro-only"), red over 4,000. Server announcements and forum-channel posts share the same cap. If you regularly publish patch notes or stream-recap posts in Discord, drafting them here is faster than discovering halfway through a paste that the 2,000-char ceiling cuts your post mid-sentence.

Templates that actually save time

Six pre-loaded templates cover the cases creators paste most often. The spoiler-reveal drops a boss-fight teaser inside a black bar so viewers click through to read it. The sale strikethrough crosses out an old price next to the new one — exactly the pattern Twitch and Kick streamers use for limited-time merch drops. The code-block template ships a chat-command cheatsheet ready to paste into a #commands channel. The quote-plus-link works for VOD pull-quotes. The agenda-headers template fits a 5-block weekly schedule into Discord's three-tier header system. And the 190-char bio packs a streamer profile inside Discord's hard bio limit so you don't have to count characters by hand.

Markdown the toolbar does not handle (and why)

Discord supports a few formatting tricks the toolbar above intentionally skips. Subtext (-# prefix) renders in a smaller dimmed font but only on the desktop client in 2026; mobile clients render the prefix literally. Lists (- item or 1. item) work but most streamer messages do not need them — bullet points outside a long announcement read as filler. Spoiler-image attachments are a separate feature triggered by the SPOILER: filename prefix, not a markdown token. And custom-emoji IDs (<:name:1234>) require knowing the emoji's snowflake ID — outside the scope of a markdown editor. If you need a Discord ID lookup, our free Discord ID lookup decodes the snowflake without an API token. For Twitch, sister tools cover emote sizing and panel cropping in the same way this page handles markdown.

Frequently asked

How do I make text bold in Discord?
Wrap the text in two asterisks on each side. **bold text** renders as bold. Italic uses one asterisk (*italic*) or one underscore (_italic_). Bold-italic combines them: ***both***. The toolbar above does the wrapping for you — select the words first, click B, and the asterisks land in the right place.
What is the strikethrough syntax in Discord?
Two tildes on each side: ~~text~~. Discord does not support a single-tilde strike, and the closing pair must be on the same line as the opening pair — line breaks reset the formatter. The toolbar S button emits the pair around your selection automatically. Strikethrough is the most-used Discord formatter for crossing out outdated information without deleting it.
How do I post a spoiler tag in Discord?
Wrap the secret content in two pipes on each side: ||hidden text||. Discord renders the block as a black bar that reveals on click. Spoilers work in messages, embeds, and forum posts. Image spoilers are different — for those, attach the image and tick the spoiler checkbox before sending. Server moderators can also force-spoiler-tag with the SPOILER: prefix on a filename.
What is the limit on Discord message length?
Free accounts cap at 2,000 characters per message. Nitro accounts get 4,000 — Discord raised the Nitro message cap from 2,000 to 4,000 characters in 2021. Discord profile bios cap at 190 characters and do not support headers, blockquotes, or code blocks (inline markdown like bold and spoiler still works). Channel and server names cap at 100 characters. The character counter under the textarea above flags both 2,000 and 4,000 thresholds.
Can I use a code block in Discord?
Yes. Single backticks make inline code: `value`. Triple backticks open a multi-line code block: ``` then your code, then ```. Adding a language hint after the opening fence enables syntax highlighting — ```js, ```py, ```sql, ```ts, ```html, ```css, ```json all work, plus many more across the common-language list. The Block button in the toolbar inserts the triple-backtick fence with a placeholder.
What is "small text" on Discord?
Discord does not natively support a small-text format the way it supports bold or italic. The "small text" you see in popular Discord posts is actually a Unicode small-caps alphabet — letters like ᴀʙᴄᴅᴇ that exist as separate codepoints. The Fancy text tab on this page emits eight Unicode alphabets including the small-caps set. Paste the output anywhere — messages, channel topics, bios — and Discord renders the codepoints directly.
Will Unicode fancy text work in my Discord username?
Mostly no. Discord blocks decorative Unicode in usernames as part of impersonation prevention — the signup form will reject most fancy alphabets and display-name changes get sanitised. The exceptions are full-width Latin (ABC) and the spaced-text variant, both of which Discord will accept in the display-name slot in some regions. Fancy text always works in messages, embeds, channel topics, forum titles, and bios.
Why does my markdown stop working after one line break?
Discord parses markdown line-by-line. A single line break inside a bold pair (**text\ntext**) breaks the parser and the asterisks render literally. For multi-line emphasis, repeat the pair on each line. Code blocks are the exception — the triple-backtick fence preserves everything inside, including line breaks, until it sees the closing fence. The Block button inserts the fence pre-formatted so the line breaks are inside the code, not the markdown.