How to Fire Notion: Migrate Your Wiki to Outline
Notion stores your company's knowledge on its servers. Outline gives you the same editor on your own hardware. Here is the migration plan.
Notion is a beautiful tool that stores every document your team has ever written on Notion's servers. For a business that values data ownership, that is a problem. Outline provides the same collaborative editing experience on your own hardware. Here is how to migrate.
Step 1: Deploy Outline
- Deploy via Docker: Outline provides an official Docker image. It requires PostgreSQL and Redis. A standard docker-compose.yml starts all three services. Deploy behind your reverse proxy with SSL.
- Configure SSO: Outline supports OIDC. Connect it to Authelia or Authentik. Your team logs into Outline with the same credentials they use for everything else. No separate login to remember.
- Set up storage: Outline stores attachments and images in S3-compatible storage. Use RustFS (self-hosted, S3-compatible) or a cloud object store like Backblaze B2. Configure the storage settings in Outline's environment variables.
Step 2: Export from Notion
- Export your workspace: In Notion, go to Settings, Workspace, Export. Export as Markdown and CSV. Include all content and subpages. Notion generates a ZIP file with your documents in Markdown format and databases as CSV files.
- Review the export: Unzip the export and review the structure. Notion exports each page as a Markdown file. Images are exported to a separate folder. Page hierarchy is preserved in the folder structure.
- Identify databases: Notion databases do not export cleanly to Markdown. They export as CSV files. Outline does not have database features. If you use Notion databases heavily (kanban boards, calendars, linked databases), you will need an alternative. Consider Baserow or NocoDB for self-hosted databases.
Step 3: Import into Outline
- Import Markdown files: Outline does not have a bulk Markdown importer. Import pages manually or use the API to create pages programmatically. For large workspaces, a script that reads the Notion export folder structure and creates pages via the Outline API is the most efficient approach. The API supports Markdown content, nested collections, and image attachments.
- Reorganise: Notion's folder structure maps to Outline's collection structure. Shelves in Outline are workspaces. Collections are folders. Documents are pages. Recreate your Notion hierarchy in Outline.
- Re-upload images: Notion image URLs will stop working after you cancel Notion. Re-upload images through Outline's editor or via the API.
Step 4: Handle Databases
- Identify database use cases: Which Notion databases are critical? Task tracking, CRM, content calendar, project management?
- Deploy replacements: Tasks go to your project management tool (Taiga, Leantime, or Plane). CRM goes to EspoCRM. Content calendar goes to a shared Nextcloud calendar or a dedicated tool.
- Export database data: Export each Notion database as CSV. Import into the replacement tool.
Step 5: Team Transition
- Train your team: Outline's editor is nearly identical to Notion's. Slash commands work the same way. The learning curve is measured in minutes, not hours. The only difference is that databases are not built in. Explain where each database function moved to.
- Set Notion to read-only: Prevent new content from being created in Notion. Keep it accessible for reference during the transition.
- Cancel Notion: After 30 days, once all content is in Outline and databases are migrated, cancel Notion.
What Changes
The daily editing experience in Outline is almost identical to Notion. Real-time collaboration, slash commands, markdown, and nested pages all work the same way. The missing piece is databases. For teams that use Notion primarily as a wiki and document editor, the transition is seamless. For teams that rely heavily on Notion databases, the transition requires deploying separate tools for those functions. The trade-off is data ownership and a zero-dollar price tag versus the convenience of an integrated database-wiki.
VPS1 deploys Outline with SSO and helps migrate your Notion content. We also recommend and deploy replacements for any Notion database features your team relies on.
More articles
How to Deploy BTCPay Server: Accept Bitcoin Payments with Zero Platform Fees
BTCPay Server lets you accept Bitcoin and Lightning payments with no platform fees. Only standard Bitcoin network fees apply. Here is how to deploy it with Docker Compose.
Self-Hosted Crypto Payment Processors: BTCPay Server, Bitcart, and SHKeeper Compared
Accept Bitcoin and cryptocurrency payments directly with no platform fees, no intermediaries, and no KYC. Here is how BTCPay Server, Bitcart, and SHKeeper compare.
How to Deploy SHKeeper: Accept Crypto Payments with WooCommerce in 30 Minutes
SHKeeper supports Bitcoin, Ethereum, USDT, USDC, and 19+ cryptocurrencies with a free WooCommerce plugin. Zero platform fees -- only standard network fees apply.