Markdown to Notion
Clean and convert Markdown for import into Notion. Strips YAML frontmatter, converts GitHub alerts, removes HTML, and inlines footnotes so your content imports cleanly. Free, no signup.
How to Import Markdown into Notion
Notion has a built-in Markdown importer, but the conversion is imperfect. Some elements — YAML frontmatter, GitHub-style alerts, raw HTML, and footnotes — don't survive the import cleanly. This tool cleans your Markdown so Notion can import it with as few surprises as possible.
Import methods
- File import (most reliable): Copy the cleaned output above, save it as a
.mdfile, then in Notion go to Settings → Import → Markdown & CSV and select the file. Notion converts it to native blocks. - Paste directly: For short snippets, paste the cleaned Markdown directly into a Notion page. Notion detects many Markdown patterns on paste and converts them automatically.
- Slash command: In a Notion page type / and select a block type (e.g. Code, Quote, Table), then paste your content into that block.
What this tool fixes
| Element | What Notion does | What this tool does |
|---|---|---|
YAML frontmatter --- | Renders as raw text or a table | Strips it, with a warning |
GitHub alerts > [!NOTE] | Renders as garbled blockquote | Converts to > **Note:** blockquote |
HTML tags <div>, <br> | Stripped silently or shown as text | Removes them, with a warning |
Footnotes [^1] | Left as literal [^1] text | Inlines footnote text where referenced |
| Mermaid diagrams | Shown as a code block (not rendered) | Kept as-is; warning added |
What Notion handles well
These standard Markdown elements import cleanly — no transformation needed:
| Markdown | Result in Notion |
|---|---|
# Heading 1 through ###### Heading 6 | Heading blocks (h1–h3 visually distinct) |
**bold** and *italic* | Bold and italic inline formatting |
~~strikethrough~~ | Strikethrough text |
`inline code` | Inline code formatting |
Fenced code blocks ```js | Code block with language label |
[text](url) | Hyperlink |
 | Image block |
Markdown tables | col | | Notion simple table |
- [x] task lists | Notion to-do checkboxes |
> blockquote | Notion Quote block |
$math$ (KaTeX) | Inline math (if Notion math is enabled) |
| Unordered and ordered lists | Bulleted / numbered list blocks |
What Notion still can't do
- Callout blocks — Notion's coloured callout blocks (with emoji icons) have no Markdown equivalent. Create them manually after import via the / command.
- Toggle lists — collapsible toggle blocks must be created manually in the editor.
- Synced blocks, databases, linked views — all editor-only features with no Markdown import path.
- Mermaid diagrams — Notion does not render Mermaid; the code block is preserved but not visualised.
- Nested block formatting — e.g., a code block inside a blockquote may lose its formatting on import.
Related tools
- Markdown to Confluence — convert Markdown to Confluence wiki markup
- Markdown to Slack — convert Markdown to Slack mrkdwn format
- Markdown to Jira — convert Markdown to Jira wiki markup
- YAML Frontmatter Editor — view and edit YAML frontmatter before converting
- Markdown Live Editor — preview your Markdown before converting
- Notion import docs — official Notion import documentation