Coming from Notion
Two-way sync
Notion organizes what you wrote. UPG structures what you know.
The structural finding
Notion is schema-agnostic: the structure lives in your database configurations. A Notion relation property between databases is structurally a UPG edge. An 'Opportunities' database with a 'Drives' relation pointing to 'Solutions' already encodes opportunity_drives_solution, just with no canonical name. UPG provides that name and makes it queryable.
What UPG adds
Graph traversal: Notion can't answer 'show me all personas and their connected JTBDs' in one call. UPG can: one query, typed edges, definitive result.
Semantic relationships: Notion relations are untyped links. UPG edges have types (persona_has_jtbd, hypothesis_has_experiment). The type is the meaning.
Portability: your Notion databases become a git-tracked .upg file. Diff your strategy between quarters. Export to any tool.
Schema mapping
The key edge
The single most important semantic relationship this integration enables.
Defined in the UPG specification
Sample import
A Notion workspace with product databases: Opportunities, Features, Personas
Roundtrip
Full bidirectional sync via upg-notion-sync: your UPG graph lives in Notion as first-class databases.
- ·Full UPG graph as Notion databases, one database per entity type
- ·Typed relation properties for every UPG edge
- ·Bi-directional sync: changes in Notion flow back into UPG
Powered by the notion MCP server
How to import your Notion data
The Notion adapter is built and tested. A one-command import via the UPG CLI is in development:
This will fetch your Notion data, map entity types automatically, and write everything to your graph. Today you can use the Markdown import or the adapter directly in code.
▸ For developers: use the adapter directly
Get started
The Notion adapter ships in @unified-product-graph/adapters. Install it, then run the import command.
$ npm install -g unified-product-graph
# then import
$ upg import --from notion