Notion Markdown Formatting
Which Markdown shortcuts Notion formats as you type, what converts when you paste, how to import and export .md files, and the syntax Notion ignores.
Short answer
Yes, Notion supports Markdown, as shortcuts rather than as a file format. Type **bold**, *italic*, `code`, or ~strike~ and Notion formats it instantly; start a line with # , - , 1. , [], or --- for headings, lists, to-dos, and dividers. Pasted Markdown converts to blocks, and .md files import and export. The catches: > makes a toggle, not a quote (type " instead), there is no Markdown source view, and links, images, and tables can't be typed as Markdown.
Markdown Shortcuts While Typing
Notion converts these as soon as you type the closing character or the space, and the Markdown characters disappear: Notion keeps the formatting, not the syntax. Inline styles work anywhere in a line; block shortcuts work at the start of a new or existing block.
Inline formatting
| Type | You get | Notes |
|---|---|---|
| **bold** | Bold | Two asterisks on each side. |
| *italic* | Italic | One asterisk on each side. |
| `code` | Inline code | One backtick on each side. |
| ~strike~ | Strikethrough | One tilde on each side, not two. |
| $$E=mc^2$$ | Inline equation | Two dollar signs on each side. Renders with KaTeX. |
Block shortcuts (start of a line)
| Type | You get | Notes |
|---|---|---|
| # + space | Heading 1 | |
| ## + space | Heading 2 | |
| ### + space | Heading 3 | Heading 4 exists but has no listed shortcut; use the / menu. |
| - + space | Bulleted list | * and + work too. |
| 1. + space | Numbered list | a. and i. start lettered and Roman-numeral lists. |
| [] | To-do checkbox | No space between the brackets. |
| > + space | Toggle list | Not a quote. This is the one that surprises people. |
| " + space | Quote block | A straight double quote. |
| --- | Divider | Three hyphens. |
| ``` | Code block | Not in Notion's shortcut list, but converts at the start of a line. |
Also handy: type : plus an emoji name (:apple) for the emoji picker, @ to mention a person, page, or date, and [[ to link to another page.
Keyboard Shortcuts for Formatting
For text you've already written, select it and use a shortcut. Underline, links, and colors have no Markdown shortcut, so these are the only quick way to apply them.
Cmd/Ctrl + BCmd/Ctrl + ICmd/Ctrl + UCmd/Ctrl + Shift + SCmd/Ctrl + ECmd/Ctrl + KCmd/Ctrl + Shift + ECmd/Ctrl + Shift + HCmd/Ctrl + Shift + MShift + EnterTab / Shift + TabCmd + Option + 1–3 (Mac)
Ctrl + Shift + 1–3 (Win)The same modifier pair with 0–9 turns the current block into text (0), a heading (1–3), a to-do (4), bullets (5), numbers (6), a toggle (7), a code block (8), or a page (9).
Pasting Markdown into Notion
Paste Markdown as plain text, from a code editor, a .md file, or a README, and Notion turns it into blocks. Pasting covers syntax that typing doesn't: [text](url) links, > quotes, and - [ ] task lists all convert. Notion's Help Center doesn't document paste conversion in detail, so check the result on anything long.
## Weekly update
**Shipped:** the new onboarding flow.
Docs: [release notes](https://example.com)
- [x] Fix login bug
- [ ] Write the changelog
> Ship small, ship often.
---You get native blocks
A Heading 2, a text block with bold and a link, two to-dos (one checked), a quote, and a divider.
Strikethrough uses two tildes when pasted (~~text~~), one when typed.
Images and tables are where reports disagree: Markdown Guide lists pasted image syntax and pipe tables as working, while others see tables arrive as plain text. If that happens, import the file instead (below).
Headings
#, ##, and ### followed by a space create Heading 1, 2, and 3. Notion added a fourth level, Heading 4, in March 2026 (Notion 3.4); its shortcut isn't in Notion's list, so add it from the / menu or with Turn into. There is no H5 or H6: Notion's Markdown API converts them to Heading 4. Headings can also be toggle headings that fold the blocks under them. See Markdown headings for how other apps handle levels.
Quotes, Toggles, and Callouts
This catches almost everyone coming from another Markdown app. In Notion, > plus a space is the shortcut for a toggle list. A quote block comes from a double quote plus a space, or /quote. Pasted or imported Markdown follows the normal rule, and a > line there becomes a quote.
/callout
Callout
Boxed text with an emoji. No Markdown syntax; exported Markdown writes callouts as HTML.
Code Blocks and Mermaid Diagrams
Type ``` at the start of a line, use /code, or paste a fenced block. Choose the language for syntax highlighting from the label at the top left of the block. Hover the block for Copy, Wrap code, and Caption.
flowchart LR
Draft --> Review
Review --> PublishSet the code block's language to Mermaid, then switch the block between Code, Preview, and Split to see the diagram next to its source.
Notion's Markdown API uses ```mermaid for these blocks, so the language tag carries over in that direction. More in Markdown code blocks.
Math Equations
Notion renders LaTeX with KaTeX. Type $$ on both sides of an expression for an inline equation, or press Cmd/Ctrl + Shift + E to open the equation input. For a display equation on its own line, use /math (or /latex). Note the difference from GitHub and Obsidian, where $...$ is inline and $$...$$ is a block. KaTeX supports most of LaTeX plus the mhchem \ce macro for chemistry; use aligned instead of align.
Tables
There is no way to type a Markdown table in Notion. Use /table for a simple table, or create a database when you need sorting, filters, and properties. Pasting a Markdown pipe table is reported to work by some and to arrive as plain text by others; importing the .md file is the dependable route. To build a table quickly, try the Markdown table generator, and for spreadsheet data, import a CSV: it becomes a Notion database with columns as properties.
Importing Markdown Files
Go to Settings → Import → Text & Markdown, or type / on a page and search for the importer. Imports run on desktop and web, not mobile.
What you can import
.md, .markdown, and .txt, several files at once.
A zipped folder through the ZIP importer ("Convert Zip to pages") keeps the folder structure, up to 5 GB.
Headings, lists, code blocks, and standard Markdown come through.
Limits
5 MB per file on the Free plan, 50 MB on paid plans.
About 120 file imports every 12 hours.
Anchor links and tool-specific syntax, such as Obsidian wikilinks and callouts, may not import cleanly.
.md, .markdown, .mdown, .mkdn, .mkd, and .rmd).Exporting Notion to Markdown
Open the ••• menu at the top right of a page, choose Export, and pick Markdown & CSV. Turn on Include subpages to export nested pages too. You download a zip file.
- Each page becomes a
.mdfile; a full-page database becomes a CSV plus a.mdfile per database page. - Callouts are written as HTML, since Markdown has no equivalent.
- For a database, you can export the current view or the default view, not all views.
- If Windows can't open the zip because of long file paths, turn off Create folders for subpages or extract with 7-Zip.
- To export everything: Settings → General → Export all workspace content. The download link arrives by email and expires after 7 days. Enterprise admins can disable exports.
Markdown in the Notion API
Since Notion 3.4 (March 2026), the API reads and writes page content as Markdown: POST /v1/pages accepts a markdown body, and GET / PATCH /v1/pages/:page_id/markdown read and update a page. It uses Notion's "enhanced markdown": standard Markdown plus XML-like tags for blocks Markdown can't express.
# Launch plan {color="blue"}
<callout icon="🎯" color="blue_bg">
Ship by **Friday**.
</callout>
<details>
<summary>Open questions</summary>
Who owns QA?
</details>
Plain text with <span underline="true">underline</span>.<callout> makes a callout, and <details> with <summary> a toggle.
{color="blue"} at the end of a block's first line sets its color; <span underline="true"> underlines.
Child blocks are indented with tabs. Headings 5 and 6 become Heading 4, and ```mermaid makes a Mermaid code block.
Spec: Enhanced markdown format.
Slash Commands
Type / anywhere for the block menu, then keep typing to filter it. These are the commands that map to Markdown elements, with the typing shortcut where one exists.
| Command | Block created | Typing shortcut |
|---|---|---|
| /h1, /h2, /h3 | Heading 1–3 | #, ##, ### + space |
| /bullet | Bulleted list | - + space |
| /num | Numbered list | 1. + space |
| /todo | To-do list | [] |
| /toggle | Toggle list | > + space |
| /quote | Quote block | " + space |
| /callout | Callout | None |
| /div | Divider | --- |
| /code | Code block | ``` |
| /equation | Inline equation | $$...$$ |
| /math or /latex | Block equation | None |
| /table | Simple table | None |
| /toc | Table of contents | None |
| /image | Image (upload, embed, or Unsplash) | None |
| /link | Link to another page | [[ or @ + page name |
Common Mistakes
Most come from assuming Notion follows the same Markdown rules as GitHub or Obsidian.
Does not work
> My favorite quote
Use instead
" My favorite quote
In Notion, > followed by a space creates a toggle list. A double quote followed by a space creates a quote block. Pasted Markdown is different: a > line there is a quote.
Does not work
~~typed strikethrough~~
Use instead
~typed strikethrough~
Notion's typing shortcut uses one tilde on each side. Two tildes, the GitHub style, is the form Notion expects in pasted Markdown.
Does not work
[docs](https://example.com) typed by hand
Use instead
Select the text, press Cmd/Ctrl+K
Markdown link syntax only converts when pasted. While typing, select the text and press Cmd/Ctrl+K, or paste a URL over the selected text.
Does not work
$x^2$
Use instead
$$x^2$$
Notion's inline equation shortcut needs two dollar signs on each side, unlike GitHub and Obsidian, which use a single $ pair for inline math.
Does not work
==important==
Use instead
Select text → color menu → a background color
Notion has no Markdown highlight syntax. Pick a background color from the formatting menu; Cmd/Ctrl+Shift+H reapplies the last one you used.
Does not work
<u>underlined</u>
Use instead
Cmd/Ctrl+U
Notion doesn't render HTML, and underline has no Markdown syntax anywhere. Use the shortcut.
Quick Reference
Every common Markdown syntax and whether Notion converts it when typed or when pasted or imported.
| Syntax | Typed | Pasted | Notes |
|---|---|---|---|
| **bold** | Yes | Yes | Also Cmd/Ctrl+B. |
| *italic* | Yes | Yes | Also Cmd/Ctrl+I. |
| `inline code` | Yes | Yes | Also Cmd/Ctrl+E. |
| ~strike~ / ~~strike~~ | Yes | Yes | Typing uses one tilde; pasted Markdown uses two. |
| # / ## / ### headings | Yes | Yes | Notion's Markdown API maps #### and deeper to Heading 4. |
| - bullets, 1. numbers | Yes | Yes | Nest with Tab while typing. |
| - [ ] task lists | Partial | Yes | Type [] instead; pasted - [ ] becomes a to-do. |
| > blockquote | No | Yes | Typed > makes a toggle. Type " + space for a quote. |
| ```code block``` | Yes | Yes | Pick the language from the label at the top left of the block. |
| --- divider | Yes | Yes | |
| $$inline math$$ | Yes | Not documented | Block equations: /math. |
| [text](url) links | No | Yes | While typing, select text and press Cmd/Ctrl+K. |
|  images | No | Partial | Reported to become an image block on paste. Otherwise use /image. |
| | pipe | tables | | No | Partial | Reports conflict on paste. Importing the .md file is more reliable. |
| [[wikilinks]] | Partial | No | Typing [[ opens Notion's link-to-page menu; pasted [[Note]] stays text. |
| ==highlight== | No | No | Use a background color from the text menu. |
| <u>underline</u> and other HTML | No | No | HTML is not rendered. Underline with Cmd/Ctrl+U. |
| [^1] footnotes | No | No | Notion has no footnotes. |
Frequently Asked Questions
Does Notion support Markdown?
Yes, in three ways. Markdown shortcuts format text as you type (**bold**, # heading, - list, [] to-do, --- divider), pasted Markdown is converted into Notion blocks, and you can import .md files and export pages as Markdown. What Notion lacks is a Markdown source view: it stores content as blocks, so the syntax disappears once it's converted.
Can you type Markdown directly in Notion?
Yes. Notion's Help Center lists these shortcuts: ** for bold, * for italic, ` for inline code, and ~ for strikethrough on both sides of the text; and at the start of a line, #, ## or ### plus a space for headings, -, * or + for bullets, 1. for numbered lists, [] for a to-do, > for a toggle, " for a quote, and --- for a divider. Two dollar signs on each side ($$x^2$$) make an inline equation. Links, images, and tables can't be typed as Markdown.
How do I make a blockquote in Notion?
Type " (a double quote) followed by a space at the start of a line, or use /quote. Typing > followed by a space makes a toggle list instead, which surprises most people coming from other Markdown apps. Callouts, the boxed blocks with an emoji, come from /callout.
How do I paste Markdown into Notion?
Copy the Markdown as plain text, for example from a code editor or a .md file, and paste it into a Notion page. Headings, bold and italic, links, bulleted, numbered, and task lists, quotes, code blocks, and dividers convert into blocks. If a long document or a table doesn't convert cleanly, save it as a .md file and import it with Settings → Import → Text & Markdown instead.
How do I import a Markdown file into Notion?
Go to Settings → Import → Text & Markdown, or type / on a page and search for the importer, then upload .md, .markdown, or .txt files. You can select several files at once; to keep a folder structure, zip the folder and use the ZIP importer. Files are limited to 5 MB on the Free plan and 50 MB on paid plans, imports work on desktop and web but not mobile, and anchor links and tool-specific syntax such as wikilinks may not import cleanly.
How do I export a Notion page to Markdown?
Open the ••• menu at the top right of the page, choose Export, and pick Markdown & CSV. Turn on Include subpages to get nested pages too. You get a zip file with a .md file per page and a CSV for each full-page database. Callouts are exported as HTML because Markdown has no equivalent. To export everything, go to Settings → General → Export all workspace content.
Does Notion support Markdown tables?
You can't type a Markdown table in Notion; use /table for a simple table or create a database. Pasting a pipe table is reported to create a Notion table, but results vary, so importing the .md file is the more reliable route. CSV files import as databases.
Does Notion support LaTeX math?
Yes, rendered with KaTeX. Type $$ on both sides of an expression for an inline equation, press Cmd/Ctrl+Shift+E, or use /math for a block equation. KaTeX covers most but not all of LaTeX: for example, use the aligned environment instead of align.
Can Notion render Mermaid diagrams?
Yes. Create a code block, set its language to Mermaid, and switch the block between Code, Preview, and Split to see the diagram next to its source.
Does Notion have H4, H5, and H6 headings?
Notion added Heading 4 in March 2026 (Notion 3.4). There is no H5 or H6; Notion's Markdown API converts them to Heading 4. The typing shortcuts in Notion's Help Center cover #, ## and ### only, so add Heading 4 from the / menu.
How do I highlight or underline text in Notion?
Neither has Markdown syntax in Notion. Underline with Cmd/Ctrl+U. To highlight, select the text and pick a background color from the formatting menu; Cmd/Ctrl+Shift+H reapplies the last color you used. ==highlight== and <u>underline</u> stay as plain text.