Skip to main content

How to Migrate from Notion to AppFlowy 2026

·OSSAlt Team
notionappflowymigrationknowledge-baseguide
Share:

How to Migrate from Notion to AppFlowy

Notion's free plan limits block storage and guest collaborators. Paid plans start at $10/user/month. AppFlowy gives you a Notion-like experience — block editor, databases, kanban boards — fully open source and self-hosted. Here's how to migrate.

What Transfers (and What Doesn't)

ContentStatus
✅ Pages and sub-pagesMarkdown export → import
✅ Text contentFull formatting preserved
✅ Headings, lists, togglesSupported
✅ Code blocksSupported
✅ TablesBasic tables transfer
⚠️ DatabasesPartial — export as CSV, recreate views
⚠️ ImagesNeed to be re-added or linked
❌ Database relationsNot supported
❌ FormulasNot supported
❌ Integrations/API automationsRebuild separately
❌ Comments and activityNot preserved

Step 1: Export from Notion

  1. Go to Settings & MembersSettings
  2. Scroll to Export all workspace content
  3. Choose Markdown & CSV format
  4. Choose to include sub-pages
  5. Click Export → Download the ZIP

For individual pages:

  1. Open the page → click menu → Export
  2. Choose Markdown & CSV

Step 2: Install AppFlowy

Desktop (recommended for migration):

  • Download from appflowy.io for Mac, Windows, or Linux
  • Or use the AppFlowy Cloud for hosted option

Self-hosted (Docker):

git clone https://github.com/AppFlowy-IO/AppFlowy-Cloud.git
cd AppFlowy-Cloud
cp deploy.env .env
# Edit .env with your configuration
docker compose up -d

Step 3: Import Content

AppFlowy supports Markdown import:

  1. Open AppFlowy
  2. Click + New Page
  3. Click ImportMarkdown
  4. Select your exported .md files

For bulk import:

  • Import pages one at a time (AppFlowy doesn't support bulk ZIP import yet)
  • Organize into spaces/folders after import
  • Priority: Start with your most-used pages

Step 4: Recreate Databases

Notion databases export as CSV files. In AppFlowy:

  1. Create a new Grid or Board view
  2. Define columns matching your Notion database
  3. Import CSV data (or recreate entries manually)
  4. Set up Kanban view if needed

Tip: AppFlowy's database views support Grid, Board (Kanban), and Calendar — similar to Notion but without relations and rollups.

Step 5: Reorganize Your Workspace

Notion's workspace structure → AppFlowy equivalent:

NotionAppFlowy
WorkspaceWorkspace
Team spacesSpaces
PagesDocuments
Sub-pagesNested documents
DatabasesGrid/Board views
TemplatesDocument templates
FavoritesFavorites

Step 6: Set Up Your Team

If self-hosted:

  1. Share your AppFlowy Cloud instance URL with your team
  2. Create user accounts
  3. Set up spaces with appropriate permissions

If using AppFlowy Cloud:

  1. Invite team members via email
  2. Organize shared spaces
  3. Set up workspace permissions

What You'll Miss (and Workarounds)

Notion FeatureAppFlowy StatusWorkaround
Database relationsNot availableUse links between pages
FormulasNot availableUse external spreadsheet
API/IntegrationsLimitedAppFlowy has a growing plugin system
Web clipperNot availableCopy-paste content
Synced blocksNot availableDuplicate content manually
CommentsAvailable
Real-time collaborationAvailable

What You'll Gain

  • Full data ownership — your data stays on your machine or server
  • No block limits — Notion's free plan limits storage
  • Offline-first — works without internet (desktop app)
  • No per-user pricing — self-hosted is free for unlimited users
  • Privacy — no data sent to third parties
  • Customizable — open source, extensible with plugins

Migration Timeline

DayTask
Day 1Export Notion workspace, install AppFlowy
Day 2-3Import priority pages, recreate key databases
Day 4-5Organize workspace structure, invite team
Week 2Run both platforms in parallel
Week 3-4Full transition, cancel Notion subscription

Tips for a Smooth Migration

  1. Don't migrate everything at once — Start with your 10 most-used pages
  2. Recreate databases manually — It's often faster than importing CSV and reformatting
  3. Keep Notion as read-only archive — Downgrade to free plan instead of deleting
  4. Use the desktop app — Better performance for large imports
  5. Embrace differences — AppFlowy isn't Notion; some workflows will change

Self-Hosting AppFlowy: What the Cloud Version Doesn't Tell You

The desktop-only version of AppFlowy stores data locally on each user's machine, which works well for individual use but breaks down immediately when you need team collaboration. AppFlowy Cloud is the self-hosted server component that adds real-time sync, shared workspaces, and multi-user access. Understanding its architecture before you deploy saves you from significant troubleshooting later.

AppFlowy Cloud is not a simple single-container deployment. It runs several services: the main AppFlowy Cloud server (Rust), GoTrue for authentication, PostgreSQL for persistent storage, Redis for session management, and MinIO for file and blob storage. The official repository includes a Docker Compose file that wires these together, but you'll need to configure each component correctly for your environment. The most common failure point is the GoTrue authentication service — it needs access to an SMTP server for email verification, and misconfigured SMTP settings cause silent failures where users appear to register but never receive confirmation emails.

For the reverse proxy, Caddy is the recommended option because it handles TLS certificate provisioning automatically. Configure it to proxy requests to AppFlowy Cloud's port 8000, and make sure your domain's DNS is pointed at the server before you start Caddy — otherwise the ACME challenge for certificate provisioning will fail. The AppFlowy client applications (desktop and mobile) require HTTPS; they will not connect to an HTTP-only server.

Storage configuration deserves particular attention. By default, AppFlowy Cloud uses MinIO for blob storage (images, file attachments). If you're running on a VPS with limited local disk, consider pointing MinIO at an S3-compatible bucket from the start rather than migrating later. The configuration is straightforward — MinIO supports S3 compatibility natively — and it eliminates disk space as a constraint for your team. For teams already running other Docker-based services, MinIO can coexist on the same server without issues as long as you allocate ports carefully.

User management in AppFlowy Cloud differs from Notion in one important way: there is no built-in organization-level user directory in the open source version. Users are invited to specific workspaces by email, and workspace owners control permissions at the workspace level. This is adequate for most small teams but means you'll need to manage invitations manually rather than syncing from an LDAP directory or SSO provider. The enterprise tier adds SSO support — something to consider if you're migrating a larger organization.

Preserving Your Workflow: Practical Notes for Power Users

Notion's most distinctive features are its relational databases — the ability to link records between databases, roll up values, and create filtered views that join data from multiple sources. AppFlowy does not yet support relations or rollups. For teams whose Notion workflow centers on linked databases (project management, CRM-style tables, content pipelines), this is the most significant functional gap.

The practical workaround that most teams find workable is to flatten relational data into single-table views during the migration. A Notion setup with a Projects database related to a Tasks database related to a People database can often be rebuilt as a single comprehensive task table with repeated fields for project name and assignee, or as separate unlinked grids with manual cross-referencing. It's less elegant than Notion's relations, but it works for most operational use cases. AppFlowy's development roadmap does include database relations, so this gap is likely to close over time.

Formulas are another gap. Notion's formula fields support complex calculated properties — days until deadline, status-based color coding, computed scores. AppFlowy grids support basic field types without formula computation. If you rely on formulas for operational data, plan to rebuild that logic in your actual application layer or accept that some views will require manual updating. For teams using Notion primarily as a document system with light database usage, formulas are rarely critical.

Templates are handled differently in AppFlowy. Notion's template gallery is large and community-maintained. AppFlowy's template system is functional but smaller. The practical solution is to build your key templates in AppFlowy directly after migration rather than trying to import Notion templates. Most teams find they only use three or four templates regularly — recreating those is a one-time two-hour investment.

For teams choosing between AppFlowy and other open source Notion alternatives, the tradeoffs are meaningful. Outline is a stronger choice if your primary use case is structured team documentation without database features — its editor is faster and cleaner than AppFlowy's for pure writing workflows. AFFiNE adds a whiteboard canvas that AppFlowy lacks, making it better for teams that combine written docs with visual thinking. The Notion, AppFlowy, AFFiNE, and Obsidian comparison covers all four tools in detail, including self-hosting Docker configurations for each. If your team is also evaluating Outline specifically as a standalone wiki, the AppFlowy vs Outline comparison goes deeper on the editing experience, database features, and SSO integration differences between the two leading self-hosted Notion alternatives.

Understanding the Cost Difference at Scale

The financial case for migrating from Notion to AppFlowy self-hosted is clear for teams of more than four people, but the full picture requires accounting for both directions of cost.

Notion charges per user, and the costs compound quickly. A team of 20 on Notion's Plus plan pays $200/month ($2,400/year). A team of 50 on Business plan pays $1,500/month ($18,000/year). These figures include Notion AI on the higher plans, which adds further per-seat cost. At enterprise scale, Notion pricing requires negotiation, but customers regularly report costs well into five figures annually.

AppFlowy Cloud self-hosted eliminates per-user licensing entirely. Your costs are the VPS running the stack (roughly $10-20/month for a properly sized server), the domain, and backup storage. For a team of 50, that's approximately $240/year in infrastructure — a 98% reduction against Notion Business. The hidden cost is maintenance time: expect one to two hours per month for updates, monitoring, and the occasional troubleshooting session. At an engineering hourly rate of $100, that's $100-200/month in time cost. Even factoring in maintenance, the economics strongly favor self-hosting for teams larger than ten people.

The break-even point for smaller teams is worth calculating honestly. If you're a solo user or a two-person team, Notion's free or Plus plan may be cheaper than the time cost of self-hosting. The framework for calculating ROI when switching to open source walks through this calculation in detail with worked examples — the same methodology applies to Notion vs AppFlowy as it does to any SaaS-to-OSS migration. The core insight is that the cost savings are real but the payback period depends on team size, your hourly rate for maintenance, and how many other tools share the same infrastructure.

Data ownership is a distinct benefit that doesn't appear in the cost calculation but matters for many organizations. With AppFlowy self-hosted, your knowledge base data never leaves your server. For teams handling client information, internal strategy, or regulated content, this eliminates a category of compliance risk that Notion's data processing agreements only partially address.


Compare knowledge base tools on OSSAlt — editing experience, collaboration features, and data ownership side by side.

See open source alternatives to Notion on OSSAlt.

The SaaS-to-Self-Hosted Migration Guide (Free PDF)

Step-by-step: infrastructure setup, data migration, backups, and security for 15+ common SaaS replacements. Used by 300+ developers.

Join 300+ self-hosters. Unsubscribe in one click.