How to Export a Notion Journal That Lives in a Database
A Notion journal is rarely a page. It is a database: one row per day, a Date property, a mood or energy select, perhaps a relation to people or projects, and a body that runs to three sentences or to nothing at all, because half the meaning lives in the columns.
That shape decides what exporting is. Getting a document out of Notion is a menu item; getting a daily-log database out as something you would still want to read in fifteen years is a small data job, and the dialog does about a third of it. Menus move between versions, so treat what follows as a description of what to look for.
What the export gives you
Two entry points: the three-dot menu on a page or database, which exports that page and, if you let it, everything under it, and an export of the whole workspace in settings, which on a large workspace may arrive as a prepared download rather than an instant file.
The format choice matters more than anything else. Markdown and CSV is the one to take for an archive; PDF and HTML are worth keeping as a readable copy, but they are pages, and pages are hard to turn back into entries. Then find the two toggles before you click: whether subpages are included, and whether folders are created for them. Include them, or the child pages under each day are simply absent, and their absence is silent.
Unzip the result and a database looks like this: a CSV named after the database, and a folder of the same name holding one Markdown file per row. The CSV is the table. The folder is the bodies. Nothing joins them except the filenames, which is why filenames turn out to be the whole problem.
One thing to check: if you export while looking at a filtered view, the CSV can reflect that view rather than the whole table. Look for a second CSV whose name ends in _all, and count its rows against the count Notion shows under the table.
Which column becomes the filename
One column, and only one: the title property, the first column, the one whose cells open the page. Every other property stays inside the file and inside the CSV.
Notion appends an ID, so a row titled "October 9" lands as "October 9" followed by a long hash. The ID stops two rows with the same title colliding, and it has two consequences.
- If your titles repeat — Monday, Journal, Entry — the export is unambiguous only because of those hashes, so stripping them creates collisions.
- If the title column is empty, and in a daily log it often is because the date lives in a proper Date property, every file is called Untitled plus a hash. Five hundred files, sorted by nothing.
Fix that before exporting rather than after. Add a formula property that renders the date year first with leading zeros — 2026-10-09, not October 9 — then copy that column and paste it into the title column, checking that the first ten rows landed on the right dates before you trust the rest. Sortable titles give you an archive that sorts itself in any file manager, on any operating system, with no software at all.
What happens to the properties
Property values survive twice: as columns in the CSV, and as a block of name and value lines at the top of each Markdown file. What does not survive is behavior.
- Formulas and rollups come out as the text they were displaying. A rollup counting linked tasks becomes the number 4, with nothing left to recount.
- Relations come out as the titles of the pages they pointed at, separated by commas. The link is gone; the words remain.
- Dates export in the format the property was displaying. If yours shows "October 9, 2026", that is what lands in the CSV, and prose dates do not sort. Change the display format before exporting, or fix the column in a spreadsheet after.
- Files and images land in a folder beside the page, referenced by relative paths. Move a Markdown file away from its folder and the pictures are gone.
If your daily log carries fourteen columns, this is a good moment to notice that nine have not been read since the week you made them. Keep the CSV as the complete record and carry only the two or three you actually consult into the text of each entry. Tracking too many things is easier to see in a folder of files than in a live database.
The export is also the moment to look at wherever the journal lives next. Three questions, the same for any app: can I export everything again on the plan I am on; will that export be readable by a person without the software; and what happens to my writing if I stop paying.
We built Yesterself with the first two answered in advance. Export is free forever, including on the free tier, in open formats, and there is no account and no email address, because identity is twelve words the reader holds. Yesterself has not been released yet, so it is not a destination for a Notion archive today; there is a waiting list on the site for when it is. Put the three questions to whichever app you choose this week.
Yesterself is the journal that writes back. Every morning it sends you a letter from your own past writing, and your reply becomes tomorrow's. End-to-end encrypted, no account, no email — your archive is yours to export, free, forever.
Join the waiting listNested pages and everything that is not a row
Under each day there may be more than a body.
- Subpages export as their own Markdown files inside a folder named after the parent, with a relative link left behind. If a subpage was really part of that day's entry, paste it back into the day.
- Linked database views are pointers rather than content, so they export as little or nothing. Whatever they showed lives in its own database, which needs its own export.
- Comments are not part of the body. If years of second thoughts live in comments, paste them in before exporting.
Flattening the daily log into one file per day
Now the actual work, in order.
- Decide what a day is. Sort by date. If two rows share a date, settle once whether that is one entry or two. A consistent rule you dislike beats one you renegotiate at row 300.
- Set the title column to a sortable date, then export, as above.
- Strip the IDs from the filenames. Any bulk rename tool will drop a trailing hash. Work on a copy, and read the result before deleting anything.
- Merge same-day files. One file per date, the date as a heading at the top, each row underneath a time or a short label.
- Inline the subpages that belong to a day, so it reads as one piece.
- Write the two or three properties you care about into the text, near the top. Mood 3. Slept six hours. A file legible without a schema outlives the schema.
- Keep the CSV. It is the index of everything you chose not to carry across.
What you end up with is a folder of files named 2026-10-09, readable in any text editor on any machine.
Check that it worked
Write down two numbers before you export: the row count Notion shows under the table, and the date of the oldest row. Afterward, count the Markdown files, open the oldest and the newest and five from the middle years, and search the folder for a sentence you are certain you wrote. Then make a second copy on different storage before touching the original database. The same checks are worth running on any journal you take out of an app.
What a column cannot say
A row reading Mood 3, Energy 4, slept six hours, body empty, is a data point. A hundred of them are a chart. Fifteen years from now that chart will tell you what a January looked like from outside, and nothing about what happened inside it.
If the flattened folder holds more empty bodies than full ones, that is not an argument against a database. It is an argument for writing one sentence into tonight's row, in the body, underneath the columns, where the words go.
Common questions
Which format should I pick when exporting a Notion journal?
Markdown and CSV, with subpages included, if you want an archive other software can read. PDF and HTML make a fine readable copy for a person, but they are much harder to turn back into one file per day.
Why are my exported files all called Untitled?
The filename comes from the row's title property, and in a daily log that column is often left empty because the real date sits in a separate Date property. Fill the title column with a sortable date before you export and the problem goes away.
Do my table properties survive the export?
The values do, in two places: a CSV of the whole database, and a short block of name and value lines at the top of each Markdown file. The behavior does not, so formulas, rollups and relations arrive as plain text with nothing linked behind them.
How do I get one file per day when some days have several rows?
Sort the exported files by date and merge each day into one file, with the date as the heading and a time or short label above each piece. Decide before you start whether two rows on one date are one entry or two, then apply that rule the whole way through.
Should I delete the Notion database once I have the export?
Not for a while. Keep it until you have read from the new archive for a month and made a second copy on different storage. Re-exporting is easy while the database still exists and impossible once it does not.