Skip to content

Databases

Notion databases are one of the most useful things to sync, and N2O leans on Obsidian Bases - Obsidian’s own built-in database feature - to display them. Each Notion database becomes a folder of Markdown notes plus a native .base view, so you get real table, card, and board layouts inside Obsidian with no third-party plugin. Every item also gets Dataview-ready frontmatter.


Each Notion database becomes a folder in your vault:

Notion/
├── Projects/
│ ├── Project Alpha.md
│ ├── Project Beta.md
│ └── _files/ ← media from database items
└── Projects.base ← Bases view (sibling of the folder)

Database items become .md files. A .base file is generated next to each database folder (see Bases views below).


Every database property is mapped to YAML frontmatter in each item file:

---
icon: "🚀"
status: "In Progress"
due-date: 2026-01-15
tags:
- frontend
- feature
priority: "High"
notion_id: "page-uuid"
notion_url: "https://notion.so/..."
created: 2026-01-10T09:00:00.000Z
updated: 2026-01-15T14:30:00.000Z
n2o_type: "database-item"
n2o_database: "db-uuid"
---

Property names are sanitized to YAML-safe keys: "Due Date"due-date, "Priority #"priority. See Supported Properties for the full mapping table.


Sync only the rows you want from a database:

  1. Open Settings > Sync > What to sync.
  2. Select the database in the Choose items picker.
  3. Click the Filters button next to the selected database.
  4. Add conditions (e.g. Status = “In Progress”).
  5. Choose All (AND) or Any (OR) match mode.

Only matching items are fetched from Notion. Filtered-out items don’t appear in your vault.


Property mappings (rename, exclude, format)

Section titled “Property mappings (rename, exclude, format)”

Customize how properties appear in frontmatter - per database:

  • Rename: due-datedeadline
  • Exclude: Hide a property from frontmatter entirely
  • Format: Change date format per property (ISO, human-readable, tags)

Configure in Settings > Sync > What to sync: select a database in the picker, then click its Properties button.


Inline databases nested inside Notion pages are discovered automatically. When you sync a parent page, any inline databases inside it are included. This is controlled by Settings > Sync > What to sync > Include inline databases.


N2O generates native Obsidian Bases .base files for every synced database - on by default.

Enable or disable in Settings > Sync > Databases > Bases for Databases.

The .base file sits next to (not inside) the database folder:

Notion/
├── Projects/ ← database folder
│ └── ...
└── Projects.base ← Bases view

N2O generates 7 views for each database:

ViewTypeDescription
TableTableAll properties, smart column order
GalleryCardsVisual card layout with cover images
ListListCompact single-line entries
BoardTableGrouped by status or select property
TimelineTableSorted by date property
CompactTableName + top 3 key properties
BooksCardsReading-optimized with banner images

The default view matches what’s set in Notion - requires Enhanced Metadata to be enabled. Without it, N2O uses the global default from Settings > Sync > Databases > Default View Type (table, cards, or list).

If you create additional views in Obsidian’s Bases UI, N2O preserves them across syncs. Only the 7 default views are regenerated - your custom views are untouched.


When a Notion page contains a linked database view (a filtered gallery, table, or list view embedded inside a page), N2O generates a filtered .base file for each one - scoped to only the items that view shows.

Linked view .base files are placed in a _views/ subfolder inside the database folder:

Notion/
├── Projects/
│ ├── _views/
│ │ ├── Active Projects.base ← filtered linked view
│ │ └── My Tasks.base ← another linked view
│ ├── Project Alpha.md
│ └── ...
└── Projects.base ← full database view

This mirrors what Notion shows - instead of seeing every database item, you see exactly the filtered subset from each linked view.


N2O can generate Obsidian Canvas files that visualize database items as an interactive graph.

Enable in Settings > Sync > Databases > Canvas for Databases (off by default).

The .canvas file is placed inside the database folder:

Notion/
└── Projects/
├── Projects.canvas ← Canvas file (inside folder)
├── Project Alpha.md
└── ...
  • Items arranged in a 4-column grid (260×60px nodes, 80px horizontal / 40px vertical gap)
  • Each node links to its .md file in the vault
  • Relations become edges between nodes, labeled with the relation property name

N2O frontmatter works with Dataview out of the box:

TABLE status, due-date, tags
FROM "Notion/Projects"
SORT due-date ASC

Useful fields:

  • created / updated - ISO timestamps for sorting
  • tags - native Obsidian tags (the Tags multi-select property maps to the tags: key automatically)
  • All other properties are available as frontmatter keys

Notion relation properties map to wikilinks in frontmatter:

related-projects:
- "[[Project Alpha]]"
- "[[Project Beta]]"

On push, N2O resolves wikilinks back to Notion page IDs using the notion_id stored in each linked file’s frontmatter.