Markdown Bold Syntax
The complete guide to bold text in Markdown. Covers the core **text** syntax, bold + italic, asterisks vs underscores, platform quirks, HTML fallbacks, and the mistakes that break it.
Basic Syntax
Wrap the text in two asterisks on each side. The asterisks must touch the first and last character - no spaces between the marker and the word.
**This text is bold.**This text is bold.
Bold + Italic
Use three asterisks or three underscores around the text. You can also nest one style inside the other if you need to mix markers.
***This text is bold and italic.***This text is bold and italic.
**_bold italic_**bold italic
Asterisks vs Underscores
Markdown accepts both **text** and __text__. They produce the same visual result. Asterisks are the safer default because underscores conflict with underscores in file names, identifiers, and URLs.
__This text is also bold.__This text is also bold.
__my_file_name__ can fail in some parsers. Prefer **my_file_name** when the text contains underscores.Platform Variations
Most platforms use **text**. Slack is the main exception: its mrkdwn format uses a single asterisk for bold and an underscore for italic.
**bold text**bold text
Double asterisks render bold in standard Markdown and GFM-based platforms.
*bold text*Slack mrkdwn uses a single asterisk for bold and an underscore for italic.
HTML Fallback
If a renderer does not support Markdown emphasis, use inline HTML. Choose <strong> for semantic importance or <b> for purely presentational bold.
<strong>This is semantic bold.</strong>This is semantic bold.
Semantic strong emphasis. Prefer this over <b>.
<b>This is presentational bold.</b>This is presentational bold.
Presentational bold. Use only when <strong> semantics are wrong.
Reddit, Slack, and Discord strip or ignore inline HTML, so these fallbacks only help in document-based renderers like GitHub, GitLab, Obsidian, VS Code, and static-site generators.
Common Mistakes
The most frequent ways bold formatting fails. Each row shows the broken version and the corrected one side by side.
Broken
** bold text **Fixed
**bold text**Broken
*bold text*Fixed
**bold text**Broken
__my_file_name__Fixed
**my_file_name**Broken
**bold text*Fixed
**bold text**Broken
**text**more text**Fixed
**text** and **more text**Quick Reference
| Syntax | Result | Notes |
|---|---|---|
| **text** | Bold | Most common syntax |
| __text__ | Bold | Underscore variant |
| ***text*** | Bold + italic | Three delimiters on each side |
| **_text_** | Bold + italic | Nested style, also valid |
| <strong>text</strong> | Bold | HTML semantic fallback |
Platform Support
Bold is one of the most widely supported Markdown features. The main variable is Slack, which flips the asterisk meaning.
| Platform | Supported? | Notes |
|---|---|---|
| GitHub | Yes | **text** or __text__ both render bold. |
| GitLab | Yes | Same as GitHub Flavored Markdown. |
| Reddit (new) | Yes | **text** works in new Reddit and official apps. |
| Reddit (old) | Yes | **text** works in old Reddit's snudown parser. |
| Discord | Yes | **text** for bold, *text* for italic. |
| Slack | Yes | *text* for bold in mrkdwn. **text** renders literally. |
| Notion | Yes | Pasting **text** converts to bold formatting. |
| Obsidian | Yes | Renders double-asterisk bold in Live Preview and Reading view. |
| VS Code preview | Yes | Built-in preview supports standard bold syntax. |
| CommonMark | Yes | Strong emphasis is part of the CommonMark spec. |
| Docusaurus / VitePress / Astro | Yes | GFM or remark plugins apply bold formatting. |
Frequently Asked Questions
How do you bold text in Markdown?
Wrap the text in two asterisks: **bold text**. You can also use double underscores: __bold text__. Both render as bold in most Markdown parsers.
Is bold text part of standard Markdown?
Yes. Strong emphasis (bold) is part of the CommonMark specification. It is implemented with double asterisks or double underscores.
What is the difference between asterisks and underscores for bold?
Functionally, **text** and __text__ produce the same bold output. The practical difference is that underscores can conflict with underscores inside words or identifiers, such as my_file_name. Asterisks avoid this problem.
How do you make text bold and italic in Markdown?
Use three asterisks or three underscores around the text: ***bold italic*** or ___bold italic___. You can also combine the two styles: **_bold italic_** or __*bold italic*__.
Why does my bold text not work in Slack?
Slack's mrkdwn format uses a single asterisk for bold (*text*) and an underscore for italic (_text_). This is the opposite of standard Markdown. If you paste **text** into Slack, it renders as literal asterisks unless the composer converts it.
Can I use HTML to bold text in Markdown?
Yes. Use <strong>text</strong> for semantic strong emphasis or <b>text</b> for presentational bold. These work in HTML-enabled renderers such as GitHub, GitLab, Obsidian, VS Code, and most static-site generators. They do not work in Slack or Discord, which strip inline HTML.
Why does my bold text show asterisks instead of bold?
The most common causes are spaces between the asterisks and the text, mismatched delimiters (one side has two asterisks, the other has one), or using single asterisks instead of double. Delimiters must touch the text and match exactly.
Can I bold text inside a link or code block?
You can bold the link text: **[bold link](https://example.com)**. You cannot bold text inside an inline code span or fenced code block because Markdown formatting is disabled inside code. Inside a code block, asterisks are rendered literally.
Related Markdown Guides
Bold is one piece of Markdown text formatting. For the rest of the syntax surface area: