Notion Markdown Cheat Sheet

Every Markdown shortcut Notion turns into a block as you type, what happens when you paste or import a .md file, and the syntax Notion ignores — with a box that fixes your Markdown before you paste it.

Notion formats Markdown as you type: **bold**, *italic*, `code` and ~strike~ (one tilde) inline; #, ## or ### and a space for headings, - for a bullet, 1. for a numbered list, [] for a to-do, " for a quote and --- for a divider. A > makes a toggle, not a quote. Pasting or importing a .md file converts standard Markdown too — but not footnotes, ==highlights==, > [!NOTE] callouts or HTML.

Going the other way? Copy a Notion page and paste it into Notion to Markdown for clean Markdown with its headings, lists, tables and to-dos.

Notion to Markdown

Notion Markdown Shortcuts

Type these on a Notion page and the formatting is applied as you type. Block shortcuts go at the start of an empty line; most need the space after them.

Inline formatting while you type

Type thisYou get
**text**Bold
*text*Italic
`text`Inline code
~text~Strikethrough (one tilde each side)
$$E=mc^2$$Inline equation
:emoji_nameEmoji picker
[[Page nameLink to another page
@nameMention a person, page or date

Source: Notion Help: Keyboard shortcuts · Notion Help: Math equations

Blocks at the start of a line

Type thisYou get
# + spaceHeading 1
## + spaceHeading 2
### + spaceHeading 3
-, * or + then spaceBulleted list
1., a. or i. then spaceNumbered list
[]To-do checkbox
> + spaceToggle list (not a quote)
" + spaceQuote block
---Divider

Source: Notion Help: Keyboard shortcuts · Notion Help: Customize and style your content · Notion Help: Columns, headings and dividers

Slash commands for what Markdown cannot type

Type thisYou get
/codeCode block
/mathBlock equation
/equationInline equation
/toggleToggle list
/quoteQuote block
/divDivider
/tocTable of contents
/h1, /h2, /h3Headings
/colorText or highlight colour

Source: Notion Help: Keyboard shortcuts · Notion Help: Math equations

Keyboard shortcuts

Type thisYou get
Cmd/Ctrl + KAdd a link to selected text
Cmd/Ctrl + EInline code
Cmd/Ctrl + UUnderline
Cmd/Ctrl + Shift + SStrikethrough
Cmd/Ctrl + Shift + EInline equation
Cmd/Ctrl + Option/Shift + 1, 2, 3Heading 1, 2, 3
Cmd/Ctrl + Option/Shift + 8Code block
Shift + EnterLine break inside a block
TabIndent / nest

Source: Notion Help: Keyboard shortcuts · Notion Help: Math equations

Prepare Markdown for Notion

Paste Markdown from GitHub, Obsidian or an AI chat. The box rewrites what Notion would drop or show as literal symbols — callouts, footnotes, <details>, ==highlights==, :emoji: codes, $…$ maths, headings deeper than Notion has — into what Notion keeps, tidies list indentation, and lists every change. Each chip shows how many it found; click one to switch that fix off.

Sample

36 lines

11 changes

Changed Front matter removed ×1 · HTML comments removed ×1 · Collapsible sections flattened ×1 · Callouts turned into quotes ×1 · Footnotes inlined ×1 · List items re-indented ×2 · Deep headings turned into bold lines ×1 · Highlights turned into bold ×1 · Emoji shortcodes converted ×1 · Math converted to Notion equations ×1

Runs in your browser — nothing you paste is uploaded. Code blocks are never changed.

What Notion Does With Each Markdown Element

Typed, Imported and Exported come from Notion’s help center and developer documentation. Notion doesn’t document what happens to pasted Markdown, so those notes — and any marked reported — describe what users and guides consistently see, not a Notion guarantee. Checked 27 October 2026.

MarkdownIn NotionCopy
Headings 1–3# H1 ## H2 ### H3
Typed
Yes#, ## or ### followed by a space.
Pasted
YesBecome heading blocks.reported
Imported
YesImport covers “headings, lists, and code blocks”.
Exported
YesWritten back as #, ## and ###.reported
Headings 4–6#### H4 ##### H5
Typed
PartlyThe help center documents shortcuts for H1–H3 only.
Pasted
PartlyNotion has a Heading 4 block; levels 5 and 6 have no Notion equivalent.reported
Imported
PartlyNotion’s Markdown format maps #### to Heading 4 and turns 5 and 6 into 4.
Exported
PartlyHeading 4 is written as ####.

Workaround: Keep documents to three heading levels, or turn deeper headings into bold lines before pasting.

Bold and italic**bold** *italic*
Typed
Yes** and * on both sides of the text.
Pasted
YesKept as formatting.reported
Imported
YesKept as formatting.reported
Exported
YesNotion’s Markdown uses **bold** and *italic*.
Strikethrough~~text~~
Typed
PartlyTyping uses one tilde on each side: ~text~. Or Cmd/Ctrl + Shift + S.
Pasted
Yes~~text~~ is kept as strikethrough.reported
Imported
YesKept as strikethrough.reported
Exported
YesWritten as ~~text~~.
Inline code`code`
Typed
YesA backtick on both sides, or Cmd/Ctrl + E.
Pasted
YesKept as inline code.reported
Imported
YesKept as inline code.reported
Exported
YesWritten as `code`.
Bulleted list- item - item
Typed
Yes-, * or + followed by a space.
Pasted
YesBecome bulleted list blocks.reported
Imported
YesLists are part of the documented import.
Exported
YesWritten as - item.
Numbered list1. first 2. second
Typed
Yes1., a. or i. followed by a space.
Pasted
YesBecome numbered list blocks.reported
Imported
YesLists are part of the documented import.
Exported
YesWritten as 1. item.
Nested lists- parent - child
Typed
YesPress Tab to indent and nest.
Pasted
PartlyMixed or inconsistent indentation (tabs with spaces, 2 vs 3 spaces) can flatten or mis-nest items.reported
Imported
YesNesting is kept when the indentation is consistent.reported
Exported
YesChildren are indented under their parent.

Workaround: Normalise indentation to four spaces per level before pasting (the “Prepare for Notion” box does this).

Task list- [ ] todo - [x] done
Typed
YesType [] (no space inside) to create a to-do.
Pasted
YesBecome to-do blocks.reported
Imported
YesBecome to-do blocks.reported
Exported
YesWritten as - [ ] and - [x].
Blockquote> quoted text
Typed
Partly> + space makes a toggle in Notion. Type " + space for a quote.
Pasted
YesA pasted > line becomes a quote block.reported
Imported
YesBecomes a quote block.reported
Exported
YesWritten as > text.
Callouts / alerts> [!NOTE] > Useful information.
Typed
NoNo Markdown shortcut; add a callout from the + or / menu.
Pasted
NoArrives as a quote with “[!NOTE]” as literal text.reported
Imported
NoSame as paste: a quote with the marker visible.reported
Exported
PartlyCallouts are exported as HTML “because there is no Markdown equivalent”.

Workaround: Turn callouts into a quote that starts with an emoji label, then “Turn into › Callout” if you want the box.

Collapsible section<details> <summary>Title</summary> Body </details>
Typed
Yes> + space creates a toggle list; toggle headings come from “Turn into”.
Pasted
NoHTML tags are dropped; the title and body arrive as plain paragraphs.reported
Imported
NoHTML is dropped on import.reported
Exported
PartlyNotion’s Markdown format writes toggles as <details>/<summary>.

Workaround: Paste the content, then select it and use “Turn into › Toggle list”.

Code blocks```js console.log(1) ```
Typed
PartlyUse /code or Cmd/Ctrl + Option/Shift + 8; the shortcuts page lists no ``` shortcut.
Pasted
PartlyUsually a code block with its language; a fence in the middle of a long paste sometimes stays as text.reported
Imported
YesCode blocks are part of the documented import.
Exported
YesWritten as a fenced block with its language.

Workaround: For long documents, import the .md file instead of pasting.

Mermaid diagrams```mermaid graph TD; A-->B ```
Typed
PartlyCreate a code block and set its language to Mermaid.
Pasted
PartlyArrives as a code block; set the language to Mermaid if it is not picked up.reported
Imported
PartlyArrives as a code block.reported
Exported
YesNotion’s Markdown format writes ```mermaid blocks.
Tables| A | B | | --- | --- | | 1 | 2 |
Typed
NoNo Markdown shortcut; use the + menu.
Pasted
YesBecome a simple table. Alignment (:---:) is ignored; the separator row is required.reported
Imported
PartlyMay become a database rather than a simple table.reported
Exported
PartlyDatabases export as CSV files; page content exports as Markdown.
Horizontal rule---
Typed
YesType --- for a divider.
Pasted
YesBecomes a divider.reported
Imported
YesBecomes a divider.reported
Exported
YesWritten as ---.
Images![alt](https://example.com/a.png)
Typed
NoNo Markdown shortcut; use the + menu or paste an image.
Pasted
PartlyImages with full https:// URLs come through; relative paths (./img.png) break.reported
Imported
PartlyNot documented for .md files; relative images need to be in the same ZIP.reported
Exported
PartlyNotion’s Markdown writes ![caption](url); uploaded files ship with the export.

Workaround: Use absolute image URLs, or upload the images after importing.

Inline math$E=mc^2$
Typed
PartlyNotion’s typed shortcut uses two dollar signs: $$E=mc^2$$. One dollar sign stays text.
Pasted
Partly$$…$$ is the form most likely to become an equation; $…$ often stays as text.reported
Imported
PartlyNot documented for .md import.reported
Exported
YesNotion’s Markdown writes inline equations as $…$.

Workaround: Convert $…$ to $$…$$ before pasting (the “Prepare for Notion” box does this), or press Cmd/Ctrl + Shift + E. Markdown Math writes a single equation in Notion’s form.

Block math$$ \int_0^1 x\,dx $$
Typed
PartlyUse /math for a block equation.
Pasted
Partly$$ on their own lines can become a block equation; check the result.reported
Imported
PartlyNot documented for .md import.reported
Exported
YesWritten as $$ on their own lines.
FootnotesText[^1] [^1]: The note.
Typed
NoNotion has no footnotes.
Pasted
NoReferences disappear or stay literal; definitions become plain paragraphs.reported
Imported
NoSame as paste.reported
Exported
NoNotion’s Markdown format has no footnote syntax.

Workaround: Inline the note in parentheses, or collect notes under a “Notes” heading.

Highlight==highlighted==
Typed
PartlyNo Markdown shortcut; use the A colour menu or /color.
Pasted
NoThe == marks stay as text.reported
Imported
NoThe == marks stay as text.reported
Exported
PartlyColours are written as <span color="…"> in Notion’s Markdown format.

Workaround: Bold the text, then apply a highlight colour in Notion.

Inline HTMLH<sub>2</sub>O <kbd>Ctrl</kbd> <br>
Typed
NoNotion is not an HTML editor.
Pasted
NoTags are dropped; their text is kept.reported
Imported
NoTags are dropped; their text is kept.reported
Exported
PartlyUnderline and colour are written as <span> tags.

Workaround: Use equations for sub- and superscripts ($$H_2O$$) and inline code for keys.

Emoji shortcodes:tada: :rocket:
Typed
YesTyping : and an emoji name opens the emoji picker.
Pasted
NoPasted :shortcodes: stay as text.reported
Imported
NoStay as text.reported
Exported
YesEmoji are written as Unicode characters.

Workaround: Convert shortcodes to emoji characters before pasting.

YAML front matter--- title: Notes ---
Typed
NoUse page properties instead.
Pasted
NoArrives as a divider and plain text.reported
Imported
NoArrives as a divider and plain text, not as properties.reported
Exported
PartlyDatabase page properties are written at the top of the page.

Workaround: Remove front matter before pasting and set the values as page properties.

Paste or Import: Getting Markdown Into Notion

Pasting is quickest for one page; importing handles whole files and folders. Both turn standard Markdown into Notion blocks, and neither understands the extensions in the table above.

Paste into a page

  1. Run the Markdown through the Prepare box above and click Copy for Notion.
  2. Open the Notion page and click where the content should go.
  3. Paste with ⌘V or Ctrl+V; Notion converts the Markdown into blocks.
  4. Check code blocks in long pastes and fix any that stayed as text.

Import .md files

  1. Open Settings in the sidebar and choose Import.
  2. Pick Text & Markdown and select one or more .md, .markdown or .txt files.
  3. For a folder of notes, zip the folder and use the ZIP importer to keep its structure.
  4. Re-link images with relative paths, or upload them after importing.

Notion’s import limits are 5 MB per file on the Free plan and 50 MB on paid plans, and import is not available on mobile yet.

Source: Notion Help: Import data into Notion

Exporting Notion Pages to Markdown

Click ••• at the top right of a page, choose Export, pick Markdown & CSV and click Export. Turn on Include subpages to get nested pages as separate files. The download is a ZIP: page content as .md files, full-page databases as CSV, and uploaded files alongside. To export everything, workspace owners can use Settings › General › Export all workspace content.

Some blocks have no Markdown equivalent. Notion’s help center says callouts are exported as HTML; its developer Markdown format writes toggles as <details> and coloured text as <span> tags; and links to other Notion pages are reported to come out as notion.so URLs, which break outside Notion. For a single page, copying it and pasting into Notion to Markdown is often quicker than a ZIP.

Sources: Notion Help: Export your content · Notion Developers: Enhanced Markdown

Markdown Notion Ignores

These have no Notion equivalent. Rewrite them before pasting, or fix them by hand afterwards.

MarkdownWhat happens in Notion
[^1] footnotesNo footnotes in Notion.
> [!NOTE] alertsShown as a quote with the marker as text.
==highlight==The equals signs stay visible.
H~2~O, x^2^No sub- or superscript text; use an equation.
<details>, <kbd>, <br> and other HTMLTags are dropped.
##### H5, ###### H6No heading levels below 4.
Term ↵ : definitionNo definition lists.
## Title {#custom-id}No heading IDs; #anchor links are unsupported on import.
| :---: | alignmentTable column alignment is ignored.
--- ↵ title: … ↵ ---Front matter is not turned into properties.

Frequently Asked Questions

Does Notion support Markdown?

Yes, in three ways. Markdown shortcuts format text as you type, pasted Markdown is turned into blocks, and Settings › Import › Text & Markdown imports .md files. Notion stores pages as blocks, not as Markdown, so there is no raw Markdown view to edit afterwards, and extensions such as footnotes, ==highlights== and > [!NOTE] callouts have no Notion equivalent.

How do I paste Markdown into Notion without losing formatting?

Copy the Markdown as plain text and paste it into a Notion page: headings, lists, bold, italic, links, code blocks and tables come through. Before pasting, run it through the Prepare Markdown for Notion box on this page, which rewrites callouts, footnotes, <details> sections, highlights, emoji shortcodes and $…$ maths into forms Notion keeps, and makes list indentation consistent.

How do I import a .md file into Notion?

Open Settings in the sidebar, choose Import, then Text & Markdown, and pick one or more .md, .markdown or .txt files. To keep a folder structure, zip the folder and use the ZIP importer instead. Notion’s help center lists headings, lists and code blocks as supported and warns that anchor links and tool-specific extensions may not import cleanly. Import works on desktop and web, not on mobile.

Why does > make a toggle instead of a quote in Notion?

Because that is Notion’s shortcut: > followed by a space creates a toggle list. To type a quote, start the line with " followed by a space, or use /quote. A blockquote you paste as Markdown is reported to arrive as a quote block.

How do I strike through text in Notion with Markdown?

When typing, wrap the text in one tilde on each side — ~text~ — or press Cmd/Ctrl + Shift + S. Notion’s Markdown export writes strikethrough as ~~text~~, and pasted ~~text~~ is reported to come through as strikethrough.

How do I write equations in Notion?

Notion’s inline equation shortcut uses two dollar signs: type $$E=mc^2$$, or press Cmd/Ctrl + Shift + E. For a block equation, use /math. Markdown written with single dollar signs ($E=mc^2$) usually stays as text when pasted; the Math rule in the Prepare box converts it to the $$ form.

Can I export a Notion page as Markdown?

Yes. Click ••• at the top right of the page, choose Export, pick Markdown & CSV and click Export; turn on Include subpages for nested pages. You get a ZIP: pages as .md files and databases as CSV. Callouts are written as HTML because Markdown has no equivalent.