Skip to main content

How to Migrate from Confluence to Outline

·OSSAlt Team
confluenceoutlinemigrationwikiguide

How to Migrate from Confluence to Outline

Outline has a native Confluence importer — making it the easiest Confluence migration path among open source wiki tools. Export your Confluence spaces, upload to Outline, and your pages transfer with formatting intact.

What Transfers

ContentStatus
✅ Pages and hierarchyNative import
✅ Text formattingWell preserved
✅ ImagesImported
✅ TablesSupported
✅ Code blocksSupported
✅ Links between pagesInternal links mapped
⚠️ MacrosSome need manual cleanup
⚠️ AttachmentsMost import, large files may need re-upload
❌ CommentsNot preserved
❌ Page history/versionsNot preserved

Step 1: Export from Confluence

  1. Go to your Confluence space → Space Settings
  2. Click Content ToolsExport
  3. Select HTML or XML export
  4. Choose Full Export
  5. Download the ZIP file

Repeat for each space you want to migrate.

Step 2: Deploy Outline

git clone https://github.com/outline/outline.git
cd outline/docker
cp .env.sample .env
# Configure: DATABASE_URL, REDIS_URL, SECRET_KEY, URL, AUTH provider
docker compose up -d

Requirements: PostgreSQL, Redis, S3 storage (MinIO), auth provider (OIDC/Google/Slack).

Step 3: Import via Native Importer

  1. Open Outline → SettingsImport
  2. Select Confluence as the source
  3. Upload the exported ZIP file
  4. Outline processes the export and creates documents

Pages maintain their hierarchy as nested documents within a collection.

Step 4: Organize Collections

Map Confluence spaces to Outline collections:

ConfluenceOutline
SpaceCollection
Page tree rootTop-level documents
Child pagesNested documents
LabelsTags (manual)
TemplatesDocument templates

Step 5: Set Up Auth and Permissions

Configure OIDC (Keycloak, Authentik, Google):

OIDC_CLIENT_ID=outline
OIDC_CLIENT_SECRET=your-secret
OIDC_AUTH_URI=https://auth.yourdomain.com/authorize
OIDC_TOKEN_URI=https://auth.yourdomain.com/token
OIDC_USERINFO_URI=https://auth.yourdomain.com/userinfo
OIDC_DISPLAY_NAME=SSO Login

Set collection-level permissions for team access control.

Step 6: Handle Confluence Macros

Confluence MacroOutline Handling
Code block✅ Preserved
Info/Note/WarningConvert to blockquote or callout
Table of contentsAuto-generated sidebar
Jira linksConvert to plain URLs
Page includeLink to document instead
Draw.ioExport as image, embed
ExpandNot supported (flatten)

Cost Savings

Team SizeConfluence StandardOutline Self-HostedSavings
10 users$61/month$15/month$552/year
50 users$303/month$30/month$3,276/year
100 users$578/month$50/month$6,336/year

Migration Timeline

WeekTask
Week 1Deploy Outline, import Confluence spaces
Week 2Clean up macros, organize collections, set up auth
Week 3Invite team, run both platforms
Week 4Primary docs move to Outline, sunset Confluence

Compare wiki platforms on OSSAlt — editing experience, import support, and self-hosting side by side.