Guide · Updated May 2026

How to migrate from Notion to Markdown.

You've decided you want your notes on your own disk in plain Markdown. Notion makes the export easier than it used to be — but the export has gotchas, and the next 30 minutes after extracting the .zip determine whether your migrated vault is genuinely useful or a folder you'll never open. Here's the complete walkthrough.

TL;DR

The 30-second version

Notion → Settings → Export content → Markdown & CSV, include subpages. Unzip into a vault folder. Open in Eyrie (or Obsidian / your Markdown editor of choice). Then spend 15 minutes cleaning up Notion's export artifacts. Most of your text comes through cleanly; databases collapse to CSV files; embedded blocks become awkward HTML.

What you'll lose going in.

Set expectations honestly. The export converts most things but flattens a few:

What survives: the actual text of every page, headings, lists, links, code blocks, images, and the rough hierarchy.

Step 1: trigger the export.

  1. Open Notion on desktop (not the web app — the desktop app handles larger exports better).
  2. Settings & members → Settings → Export content.
  3. Choose Export format: Markdown & CSV.
  4. Toggle "Include subpages" ON.
  5. Toggle "Create folders for subpages" ON. This preserves your page hierarchy as a folder tree.
  6. Click Export. Notion emails you when the .zip is ready — usually within minutes, up to an hour for large workspaces.

Step 2: unzip into a vault folder.

Pick a permanent home for the vault. We recommend ~/Documents/Notes/ or somewhere in iCloud Drive if you want cross-device sync.

cd ~/Documents
mkdir Notes
cd Notes
unzip ~/Downloads/Export-*.zip

You'll see your page hierarchy as a folder tree. Each page is now a .md file, with subpages as files inside a folder named after the parent.

Step 3: clean up the export artifacts.

The fastest 15-minute cleanup pass:

3a. Strip Notion's UUID suffixes from filenames.

Notion exports filenames like My Page Title abc123def456.md. The 32-char hex suffix is the page UUID. You almost certainly want it gone.

cd ~/Documents/Notes
find . -type f -name "* [0-9a-f]*" | while read f; do
  newname=$(echo "$f" | sed -E 's/ [0-9a-f]{32}//')
  mv "$f" "$newname"
done

Test on a copy first if you're nervous. (And: do the same for folders, which also have UUIDs.)

3b. Move images to a consistent folder.

Notion scatters image uploads next to each Markdown file in a sibling folder. If you'd rather have one assets/ folder at the vault root, you can consolidate — but most editors handle the relative paths fine, so this is optional.

3c. Fix internal links.

Notion's exported Markdown links look like [Page Title](Page%20Title%20uuid/Page%20Title%20uuid.md). After stripping UUIDs, you'll need to fix the link targets too:

find . -type f -name "*.md" -exec sed -i '' -E \
  's/(\([^)]*) [0-9a-f]{32}/\1/g' {} \;

This removes UUIDs from the parenthesized link targets too. (Macs require the empty '' argument to sed.)

3d. Decide what to do with database CSVs.

Each Notion database becomes a CSV in the export folder. Three options:

Step 4: open in Eyrie (or your editor of choice).

Open the folder. Eyrie indexes everything in seconds. Wikilinks light up. Tags appear in the sidebar. Smart Categories auto-classify the migrated notes (give them a few minutes to process if AI categorization is on).

You can also use Obsidian, iA Writer, Logseq, or any other Markdown editor — the cleaned-up vault is portable.

Step 5: decide what to delete in Notion.

Don't cancel your Notion subscription the same day you migrate. Run both for two weeks:

Notion retains exported data per their privacy policy for some retention period — don't delete the workspace until you're 100% sure the local vault has everything.

Gotchas nobody warns you about.

14 days free.

Open your migrated Notion folder in Eyrie. AI search, citations, Smart Categories — all built in.

Try Eyrie for Mac →