Notion to Markdown

Notion to Markdown — Convert Any Notion Page Free

Last updated:

Paste any public Notion page URL and get clean Markdown in 5 seconds. URL-encoded fragments fixed, toggle blocks normalized, callouts cleaned.

Clean output, no Notion artifactsFixes URL encodingToggle blocks normalizedCallouts cleanedDrop into Obsidian/Notion/GitFree, no signup

Works with any public Notion page (Settings → Share → Publish to web). Private pages require sign-in and won't work.

👁 See it in action (loads a bundled example — no URL needed)

Try the converter without any Notion URL. We'll render a sample page so you can see what the Markdown output looks like.

What happens next: We fetch the public Notion page, extract the content, and convert it to clean Markdown — perfect for Obsidian, Git repos, or any Markdown editor. Headings, lists, links, and code blocks are all preserved.

Backend Checking…
Clean Markdown output URL encoding fixed Toggle blocks normalized Callouts cleaned Code blocks preserved Free, no signup

Paste any public Notion page URL and get clean Markdown in 5 seconds. URL-encoded fragments fixed, toggle blocks normalized, callouts cleaned.


How it works

1

Publish your Notion page

Open the Notion page you want to export. Click Share → Publish → Enable public access. Copy the public URL.

2

Paste it above

Drop the URL into the input and click Convert. We fetch the page via Notion's public API.

3

Get clean Markdown

Copy the clean Markdown or download as a .md file. URL encoding fixed, toggle blocks cleaned, callouts normalized.


How do I convert a Notion page to Markdown?

Open the Notion page you want to convert. Click Share in the top right → Publish tab → Enable public access. Copy the public URL. Paste it into the box above and click Convert. You get clean Markdown in 5 seconds — URL encoding fixed, toggle blocks normalized, callouts cleaned, ready to drop into Obsidian, a blog, or a Git repo.

Does this work on private Notion pages?

The tool needs the page to be publicly accessible (the Share → Publish flow). If your page is private, just enable public access temporarily, paste the URL, download the Markdown, then revoke public access. The whole process takes under a minute.

Why convert Notion to Markdown

Five common use cases. Migration to Obsidian. Obsidian is local-first, file-based, and never goes down. Move your knowledge base from Notion (cloud, paid) to Obsidian (local, free) and own your data permanently. Static site generators. Astro, Hugo, Eleventy, Jekyll — all consume Markdown. Most dev blogs, docs sites, and personal websites are powered by Markdown source files. Git repos for documentation. Engineers and technical writers store Markdown docs in Git repos. Pull requests, version control, code review — Notion can't match this workflow. AI workflows. Claude, GPT, and other tools consume Markdown easily. Clean Markdown means clean input to LLMs. Archive and backup. Notion's data export is messy. Clean Markdown is human-readable forever, even if Notion goes away.

What gets cleaned in the conversion

URL encoding fixed: `%20` becomes space, `%2F` becomes `/`, `%3A` becomes `:`. Spaces and special characters in URLs render correctly. Toggle blocks: Notion's 'click to expand' blocks become standard Markdown sections or are removed entirely (your choice). No more `\` tags that render weird in Obsidian. Callouts: Notion's callout blocks (the colorful boxes with icons) become clean Markdown blockquotes with optional emoji prefix. Renders correctly in any Markdown viewer. Database properties: stripped from page body (database tables are exported as Markdown tables only). No more "Status: In Progress" artifacts floating in your prose. Image URLs: resolved to absolute public URLs (no broken `../images/` paths). Images reference Notion's signed CDN URLs. Sub-page hierarchy: preserved in heading levels (cleaner than folder structures). H1 for top page, H2 for sub-pages, etc.

Privacy and how we handle your data

We don't log the Notion URLs you submit. We don't store the page content. We don't require account creation. When you paste a public Notion URL, our server fetches the page via Notion's public API endpoint and returns clean Markdown to your browser. We don't cache, archive, or analyze the content. Notion's public API is the same endpoint their official Notion Importer uses for migration to other tools. The content is by definition public when you enable the Publish toggle.

Does this preserve code blocks?

Yes — code blocks export with their language hint (Python, JavaScript, etc.) preserved. Renders correctly in Obsidian, Hugo, and any tool that supports fenced code blocks. Multi-line code stays multi-line.

What about embedded databases?

Database tables export as standard Markdown tables. Properties like Status, Tags, Date become plain text columns. For full database export with filtering and formulas, use Notion's own CSV export in addition to our Markdown export.

Are Notion mentions (@username) preserved?

Mentions export as plain text or as proper Markdown links if they reference a public page. For private user mentions, they become plain text since the linked user isn't publicly accessible.



Frequently asked questions

Is this really free?

Yes. No signup, no payment, no daily limits.

Do I need to make my Notion page public?

Yes — toggle Share → Publish to make it accessible. You can revoke after downloading.

Does it preserve code blocks?

Yes — code blocks export with language hints preserved. Renders correctly in any Markdown viewer.

Are databases exported?

Yes — database tables become Markdown tables. For CSV export of properties, use Notion's own export.

What about sub-pages?

Sub-page hierarchy is preserved as heading levels. Cleaner than folder structures.

Does it work on Notion databases (not just pages)?

Yes — any public Notion URL works, including database views and individual rows.