Getting started
Import from Notion, Trello, Markdown, CSV and PDF
The importer brings your existing pages and tables into Tylode in one go. Upload a Notion export and you get your page tree back with its hierarchy and order; upload Markdown or CSV files and each one becomes a page or a table; upload a PDF and its text becomes a page with its headings, paragraphs and lists.
Open the importer
Everything you import is created in the workspace you're in, so switch to the right workspace first. Then:
- On a computer, click Create next to Pages in the sidebar and choose Import from Notion, CSV or PDF…,
- on a phone, tap + and choose Import…, or
- go straight to app.tylode.com/dashboard/importar.
Import loose .md files, no extra steps
For one or more loose Markdown files (Obsidian notes, study notes, a README…) there's a shortcut: click Create next to Pages and choose Import Markdown (.md) (on a phone, + → Import…). Pick the files and each one becomes a top-level page, with no summary screen; the first one opens. If anything couldn't be brought in, a notice at the end says so.
You need permission to create content in the workspace (any role except Read-only).
Export your workspace from Notion
- In Notion, open Settings → Workspace → Workspace details → Export all workspace content. To export just one page and its subpages, open the page's ⋯ menu and choose Export instead.
- Choose the Markdown & CSV format and include subpages.
- Download the .zip file Notion sends you.
- Upload it to Tylode as it is. Don't unzip it.
Exports that Notion splits into several parts, or that contain another .zip inside, are handled automatically.
Import step by step
- Drag your file onto Drop your file here, or click Choose files. You can upload:
- one .zip exported from Notion, or
- one or more loose
.md,.markdown,.txt,.csvor.pdffiles.
- Review the summary under Here's what will be imported: the number of pages, tables and rows, and anything that will be skipped (images, attachments, database row pages). If it's not what you expected, click Choose another file.
- Click Import. You'll see Importing X of Y…. Keep the tab open until it finishes.
- When you see Import finished, click Open what was imported.
If some items couldn't be created, the final screen lists them (up to the first ten) with the reason.
What gets imported
| From | What you get in Tylode |
|---|---|
| Notion .zip | A new top-level page called Imported from Notion · date (📥) that holds everything you imported, so it doesn't mix with your existing pages. Move things wherever you like, or delete the container to remove it all at once. |
| Notion pages | Pages with their text, in the same hierarchy and order as in Notion. Headings, lists, checklists, quotes, code, links and text formatting become editor blocks. |
| Notion databases | A page (🗂️) holding a table with the same columns and all the rows. When Notion includes an "all rows" CSV next to the normal one, Tylode uses it, so you get every row and not just those in a view. |
| Loose .md, .markdown or .txt files | One top-level page per file. The title is the title: in the YAML front matter (the block that starts and ends with ---, as in Obsidian or Jekyll) if there is one; otherwise the first # Heading; otherwise the file name. The front matter isn't copied into the page. Images from the web are imported; images with a local path (img/photo.png) aren't, because they don't travel inside the file. |
| Loose .csv files | One top-level page per file, holding a table. The page takes the file's name. |
| .pdf files | One top-level page per file, with the PDF's text turned into blocks (see Import a PDF). The title is the PDF's first large heading, or the file name if it has none. |
Links between pages in the same export become links to the imported pages: clicking one takes you to that page in Tylode. A link to something that isn't imported as a page (a database row, or a linked view of a database that wasn't in the file) keeps only its text. Links to websites keep working.
Import a PDF
Most PDFs carry their real text inside, with the position and size of every piece. Tylode reads it in your browser, without AI, and rebuilds the structure the document had:
- Headings: text set larger than the body text. The largest becomes a level 1 heading, the next a level 2, and the rest level 3.
- Paragraphs: consecutive lines are joined into a paragraph, and a word hyphenated at the end of a line is joined back together.
- Lists: lines that start with a bullet (•, –, ▪…) or a number (
1.,2)) become lists. - Two columns: the left column is read in full, then the right one.
- Headers, footers and page numbers: whatever repeats at the top or bottom of many pages is removed.
It has its limits:
- A scanned PDF is a picture of each page and has no text: Tylode tells you and creates nothing.
- Tables and formulas come out as running text.
- Bold and italics aren't recovered.
If you want the PDF as it is to write on, open it in a notebook.
Import a Trello board
- In Trello, open the board and go to Menu → Print, export and share → Export as JSON. A
.jsonfile downloads. - In Tylode, under Import, find From Trello and click Choose .json file.
- Check the summary (how many lists, cards and labels) and click Import board.
A new board is created in the workspace with:
- The open lists, in order, and their open cards, with title and description.
- The labels those cards use, in similar colors.
- Start and due dates.
- Checklists, at the end of each card's description, with ☑ for done and ☐ for pending.
- If any card was marked complete in Trello, a Done field with that value.
Archived items, attachments, comments and members (people from another app) aren't brought over. Up to 2,000 cards per board.
How column types are detected
For each CSV, Tylode looks at every non-empty value in a column and picks a type only if all of them fit. When in doubt, it uses text, because fixing a text column is one click, and a postcode with its leading zeros can't be recovered from a number.
| Type | Detected when every value in the column… | Examples |
|---|---|---|
| Text | Always used for the first column (the row's title), for empty columns and when no other type fits. | Launch plan |
| Checkbox | Is a yes/no value, and at least one is "yes". Accepted: yes, no, true, false, sí, si, x, ✓, 1, 0 and empty. A column with only Yes and No (how Notion exports its checkboxes) is a checkbox even if none is ticked. | Yes, x, ✓ |
| Number | Is a number. Currency signs (€, $) and % are ignored, and both 1,234.5 and 1.234,5 work. Values with leading zeros stay text. | 12, €9.95, 1.234,5 |
| Date | Is a date in one of these forms: 2026-09-23 (ISO, time ignored), 23/09/2026 (day first; . and - also work), September 23, 2026 (Notion in English) or 23 de septiembre de 2026 (Notion in Spanish). The time and time zone are ignored, and a range (… → …) keeps its start. | 2026-09-23 |
| URL | Starts with http:// or https://. | https://tylode.com |
| Select | Has at most 12 different values, some repeated, each up to 40 characters. Each value becomes an option with a color. | Done, In progress |
The column separator can be a comma or a semicolon (as Excel uses in many European languages); Tylode detects it from the first line.
Notion properties that don't fit these types, such as relations, formulas, rollups, people or multi-select, are imported as text. You can change a column's type afterwards from its header. See Column types.
What isn't imported
- Images and attachments stored inside the export. The review screen tells you how many were skipped; upload them by hand to their pages.
- The content of database row pages. In Notion each row can be opened as a page; its properties are imported into the table, but any text written inside that row page isn't.
- Links to database rows and linked views, which keep only their text.
Limits
| Limit | Value |
|---|---|
| Tables | Each imported table is a database and counts toward your plan's limit: 2 per workspace on Free, 5 on Pro, unlimited on Premium. Tables beyond the limit aren't created and appear in the error list. |
| Columns per table | 100 |
| Options per select column | 50 |
| Content per page | About 1.5 MB of text and formatting |
| Pages per PDF | 20 on Free, 500 on Pro and 2000 on Premium |
See Limits by plan.
Troubleshooting imports
| What you see | What to do |
|---|---|
| "We didn't find any pages (.md) or tables (.csv)…" | The export is probably in HTML or PDF format. Export again from Notion choosing Markdown & CSV. |
| "The file couldn't be read…" | Upload the original .zip from Notion without unzipping or re-compressing it, or upload the .md and .csv files directly. |
| A table appears in the error list | You've probably reached your plan's database limit. Delete a database you don't need or change your plan, then import that CSV on its own. |
| A page is "too large to import in one go" | Split the page into smaller ones in Notion and export it again. |
| A column came in as text instead of numbers or dates | At least one value in that column didn't match (for example "N/A" among numbers). Change the column's type from its header. |
| Images are missing | They aren't imported yet. Upload them to their pages by hand. |
For other problems, see Troubleshooting.