How to import Notion pages into NotebookLM, with subpages
Can I link Notion to NotebookLM? Not directly. NotebookLM — now also branded Gemini Notebook — has no Notion connector. Google’s own list of what a source can be names PDFs, Google Docs and Slides, websites, YouTube videos, audio files and pasted text, and does not name Notion (read 2026-09-19). There are two paths that do work, and both end with your Notion content sitting in the notebook as ordinary Markdown sources: export it yourself from Notion, or have an extension run that same export for you.
Pasting the Notion URL into Add source → Website is not one of them. It appears to succeed and then produces a source with nothing in it. Notion builds its pages in the browser with JavaScript; what NotebookLM fetches is the initial HTML, which is an empty application shell. Google’s help centre already warns that for web sources “nested webpages are not imported” — with Notion there is nothing to import even on the page you pointed at, subpages aside. A private page is worse still: the fetch is unauthenticated, so it never sees your content at all.
Path A: export Notion to Markdown, then upload the files
This works today, on Notion’s free plan, with no extension.
- Open the top-level page you want. Everything under it comes along.
- Click the ••• menu at the top right → Export.
- Export format: Markdown & CSV. Not PDF, not HTML — see below.
- Include databases: Current view exports what the view shows; Everything exports every row of every database on the page. When in doubt, Everything.
- Include content: No files or images. NotebookLM reads the text; skipping attachments makes the zip smaller and the export much faster.
- Include subpages: on. This is the setting that makes the whole exercise worth doing.
- Create folders for subpages: on. It keeps the hierarchy legible — and if you are on Windows, read the path warning below first.
- Export. Notion builds the archive and emails or downloads it, depending on size.
What is in the zip
- A file named
Export-<uuid>.zip. Occasionally Notion puts a second zip inside it — unzip twice if the first pass gives you one file. - One Markdown file per page:
Page title <32-hex-id>.md. The id is Notion’s internal block id, always 32 hex characters. - Subpages in folders named the same way:
Parent title <id>/Child title <id>.md. - Databases as
Database name <id>.csv, plus a folder holding one.mdper row. - Callouts come out as raw
<aside>blocks, and toggles are flattened — the toggle heading and its hidden content end up as plain consecutive text. Both read fine to a language model.
On Windows: deeply nested subpages blow past the 260-character MAX_PATH
limit and the unzip fails halfway with a cryptic error. Either turn Create
folders for subpages off — every page then lands flat in one directory — or
unzip with 7-Zip, which handles long paths.
Into the notebook
In NotebookLM, open the notebook, click Add source, and drop the .md files
in. One file becomes one source, so the number of pages you export is the number
of sources you spend: the free NotebookLM plan holds 50 sources per notebook
and Pro holds 300 (see NotebookLM limits per
plan). CSV files are worth uploading only if you
actually want the raw table; the per-row Markdown files usually answer questions
better.
One thing worth two minutes: the source title is the filename, so a notebook
imported straight from the zip is a wall of Roadmap Q3 1f2a...b9c4. Strip the
32-hex ids before uploading and the citations NotebookLM shows you stay
readable.
If your export “only seems to export titles” — a complaint that comes up regularly on r/Notion — you exported a database view with Include databases: Current view, and the view was a gallery or a board showing page names only. Re-export with Everything.
Path B: one click with source-lm
The manual path is fine for one page tree and tedious for ten.
source-lm puts an Add to NotebookLM button in Notion’s own top bar: open
the page in your workspace (app.notion.com), click the button, optionally tick
Include child pages (1 level), choose the notebook, and the extension runs
Notion’s export for you and pushes the resulting Markdown into the notebook.
Nothing is downloaded to disk — no zip in your Downloads folder, no unzipping, no dragging files into a browser tab. It is the same export Notion’s own dialog produces, with the same fidelity, minus the file management. The ids are stripped from the source names on the way in.
It also works on public Notion sites (something.notion.site) that you do
not own — a shared knowledge base, a public wiki, a blog someone runs on
Notion. Notion does not let visitors export those, so there the extension reads
the page’s blocks the way the Notion app itself does and converts them to
Markdown; a page that is a database (the usual “list of articles” layout)
brings in one source per entry when you tick the child-pages box.
Adding a single page is always free and unmetered. A page plus its children counts as one bulk action, and the free tier allows 5 of those a calendar month; past that the extension is $29, once, with no subscription and no account.
Export Notion to Markdown vs PDF for NotebookLM
Notion’s export dialog offers PDF and HTML as well. For NotebookLM, pick Markdown:
- Headings survive as headings. A PDF carries text positions, not document
structure; Markdown’s
##tells the model where a section begins and ends, which is what makes citations land on the right paragraph. - Subpages stay separate sources. A PDF export merges a page tree into one long document, so every citation points at “the PDF” and you lose which page said what. One Markdown file per page keeps them distinguishable in the Sources panel.
- Tables stay tables. Markdown tables and database CSVs remain parseable text; in a PDF a wide table is a grid of stray words.
- It is a fraction of the size. NotebookLM caps a source at 500,000 words, and a PDF spends its bulk on layout you do not need.
PDF is the right answer in exactly one case: a page whose value is its visual layout — a design spec, a slide-like page, a document you need to look identical to what colleagues see. And it is a fallback when a page is mostly embeds that Markdown drops anyway.
Keeping it in sync
There is no sync. Every export is a snapshot of the moment you clicked, and NotebookLM does not poll Notion — no connector exists to poll it with. In practice:
- Re-export after a round of substantial edits, not after every typo.
- Uploading the file again adds a second source; NotebookLM does not replace the old one. Delete the previous version, or the notebook will cite a stale paragraph with full confidence.
- For a page that changes daily, keep it out of the notebook and paste the current text when you need it.
Notion’s own Markdown export is the only supported way out, which is why both paths above are the same mechanism — the extension just clicks through the dialog for you. Once the pages are in a notebook, Claude Code can query it too: NotebookLM MCP + Claude Code covers the setup.
FAQ
Can I link Notion to NotebookLM? No — there is no Notion connector and no OAuth link between the two, and pasting a Notion URL as a website source imports an empty page. Export the pages to Markdown and upload the files, either by hand or with an extension.
How do I export my entire Notion workspace? Open Settings in the sidebar, go to Settings for the workspace, and use Export all workspace content. Choose Markdown & CSV; the archive arrives by email if it is large. A workspace usually exceeds any single notebook’s source limit, so upload the sections you actually want to question.
Does NotebookLM read Notion databases? Only as the files you give it. Export with Include databases: Everything and you get a CSV of the table plus one Markdown file per row; both upload fine. The notebook has no live view of the database and will not see rows added later.
Why is my Notion source empty in NotebookLM? Because you added it as a website link. Notion renders in JavaScript, NotebookLM scrapes the initial HTML, and a private page is not readable without your session at all. The empty source is the expected outcome, not a bug to retry.
Not affiliated with Google. NotebookLM and Gemini are Google trademarks; this is an independent extension that automates a signed-in session.
Import a Notion page with every subpage in one click.
Install source-lm5 bulk actions a month, free. Single sources always free.