Slack Text Formatter
Convert Markdown to Slack mrkdwn and back. Escapes the ampersand and angle brackets first, previews in Slack styling and tracks message limits.
4,000 characters left before Slack's recommended 4,000-character message length.
Slack mrkdwn
Converted text appears here.
Slack preview
Slack’s mrkdwn is not Markdown: bold is a single *, italic a single _, and links are written <https://url|label>. Only &, < and > need escaping, and they must be escaped before the link syntax is added — which is the order this tool uses. Everything is converted in your browser; no message is sent to Slack.
What is the Slack Text Formatter?
A converter between standard Markdown and Slack's mrkdwn syntax, where bold is a single asterisk, italic a single underscore, and a link is written as angle brackets around the URL, a pipe, then the label.
- Two-way conversion between standard Markdown and Slack mrkdwn
- Escapes the ampersand and angle brackets before link syntax is built
- Slack-styled live preview with quotes, code blocks and channel mentions
- Length bar for the 4,000-character message and 3,000-character section block
- Headings become bold lines and bullets become bullet characters, as Slack expects
- Runs entirely in your browser — no Slack token, webhook or upload
How to use the Slack Text Formatter
- 1
Pick a direction — Markdown to Slack mrkdwn, or Slack mrkdwn back to Markdown.
- 2
Paste or type your text into the box, or press Load an example to see the syntax.
- 3
Watch the length bar for the recommended message and section-block limits.
- 4
Check the Slack preview to confirm bold, quotes, code and mentions look right.
- 5
Copy the converted output and paste it into a message or a block payload.
About the Slack Text Formatter
Slack does not use Markdown. Its mrkdwn syntax marks bold with a single asterisk, italic with a single underscore, strikethrough with tildes, and writes a link as the URL and label inside angle brackets separated by a pipe. This formatter converts standard Markdown into that syntax and converts Slack text back into Markdown, so you can draft anywhere and paste something that renders correctly in a channel.
It also escapes the three characters Slack's parser treats as special — the ampersand and the two angle brackets — before any link syntax is added, which is the order that stops a stray bracket from swallowing half your message. A Slack-styled preview shows headings, quotes, code blocks and here-mentions the way a real channel will render them.
Everything runs 100% locally in your browser: no message is sent to Slack, no webhook or token is needed, and nothing you paste is uploaded or stored. The counters use the message and section-block limits Slack publishes today, and Slack can change those figures at any time.
Frequently asked questions
Does Slack support Markdown?
Not standard Markdown. Slack uses its own syntax called mrkdwn, where bold is a single asterisk, italic is a single underscore, and a link is the URL and label inside angle brackets. This tool converts between the two so text written in Markdown renders correctly in a channel.
How do I write a link in Slack?
In mrkdwn a link is angle brackets around the URL, a pipe, then the text you want shown. Slack's own composer hides this, but the API, workflow builder and block payloads all need the raw form, which is exactly what this tool produces.
Which characters have to be escaped in Slack messages?
Only three: the ampersand and the two angle brackets. Slack's parser reads them as the start of a link or a mention, so this tool escapes them before it builds any link syntax of its own. Everything else can be typed literally.
What is the character limit for a Slack message?
Slack recommends keeping a message's text under 4,000 characters and truncates around 40,000, while a single section block's text field is capped at 3,000. Those figures come from Slack's API documentation and Slack can change them, so treat the counter as a guide.
Can I convert Slack text back into Markdown?
Yes. Switch the direction to Slack mrkdwn to Markdown and paste text copied out of a channel. Single-asterisk bold becomes double, piped links become the bracket-and-parenthesis Markdown form, and the escaped ampersand and brackets are restored.
Related tools
Discord Text Formatter
Build Discord markdown — bold, italic, underline, spoilers, quotes — plus colored text with ANSI code blocks. Live preview and copy-ready output.
Reddit Text Formatter
Format Reddit posts and comments with buttons for bold, spoilers, superscript, tables and code blocks, with a live preview and a character count.
Telegram MarkdownV2 Escaper
Escape the 18 characters Telegram MarkdownV2 reserves and fix the Bot API can't parse entities error, or switch the message to HTML parse mode.
Markdown to HTML Converter
Convert Markdown to clean HTML with a live preview — headings, emphasis, links, lists, code blocks, tables and blockquotes. 100% in your browser.
Social Media Character Counter
Count one post against every social media character limit at once — X, Instagram, LinkedIn, Facebook, TikTok, YouTube, Pinterest, Threads and Bluesky.