Slack Message Formatting with mrkdwn

Slack’s text formatting looks like Markdown but is its own dialect called mrkdwn. If you have ever had **bold** show up with its asterisks in Slack, this is why.

Slack · 4 min read · By Chris Lenga · Updated

mrkdwn is not Markdown

Bold is *single asterisks*, italic is _underscores_, strikethrough is ~tildes~, and links are <https://url|label>. There is no heading or list syntax the way Markdown has. The Slack Message Formatter previews it live so you can paste with confidence.

Because &, <, and > start Slack’s special codes, text your app sends must write them as &amp;, &lt;, and &gt;.

When to use Block Kit

For anything beyond a paragraph, sections, buttons, images, dividers, Slack uses Block Kit, a JSON layout format. Assemble it visually with the Slack Block Kit Builder. A single message allows up to 50 blocks.

Block Kit also has a markdown block that takes standard Markdown, headings and lists included, up to 12,000 characters across all the markdown blocks in a message. It is the easy route when your text already comes as Markdown.

Sending via webhooks

Incoming webhooks accept a JSON payload with text or a blocks array. Include text even when you send blocks: Slack shows it in notifications, where blocks do not appear. Build the payload and a ready curl command with the Slack Webhook Sender.

Try the tools

All guides →