What changed in Notion's 2026 pricing
In May 2025, Notion removed the standalone AI add-on (previously billed separately) and integrated the full Notion AI suite — autonomous agents, summaries, contextual search — directly into the Business plan. Free and Plus plans now receive only a limited trial. For an agency of 15 people that did not use AI or had deliberately avoided the add-on, this is a forced increase with no perceived functional counterpart. If the agency also maintains separate workspaces for its clients — each billed per seat — the invoice growth is directly proportional to the number of active clients on the platform.
Why the increase is non-linear for agencies
- Separate client workspaces — each distinct Notion workspace consumes independent seats; a portfolio of 10 clients with 2 accesses each represents 20 additional Business seats.
- AI forced into the plan — the add-on was optional; the Business plan now includes Notion AI with no opt-out, even if AI is unused.
- No intermediate plan without AI — the Plus plan no longer provides full AI access, blocking agency workflows that depend on it.
- Per-seat billing — there are no floating licenses or shared quotas across workspaces; each active member is counted individually.
- Portfolio growth = linear cost growth — going from 10 to 20 clients mechanically doubles the Notion cost if workspaces remain separate — no volume pricing.
Docmost: what the AGPL-3.0 license covers
Docmost is released under the AGPL-3.0 license, with the LICENSE file available on the GitHub repository github.com/docmost/docmost. This license permits commercial use without royalties: an agency can deploy Docmost for its teams and clients without paying license fees to the publisher. The only AGPL constraint applicable to this use case is: if the agency modifies Docmost's source code and exposes that code as a network service, it must publish its modifications under the same license. In a standard internal deployment — without a distributed fork — this constraint does not apply. Additional enterprise features (SAML SSO, advanced audit log) are available under a separate commercial license, not required for the use case documented here.
Docmost vs Notion: the honest comparison
| Feature | Notion Business | Docmost (AGPL) |
|---|---|---|
| Nested pages and rich editing | Yes | Yes — real-time collaborative editor |
| Team wiki / knowledge base | Yes | Yes — primary use case |
| Multi-team Spaces | Yes | Yes — isolated spaces with permissions |
| Page history and restore | Yes | Yes — full history |
| Comments and annotations | Yes | Yes |
| Diagrams (Draw.io, Mermaid, Excalidraw) | Limited (embed) | Yes — native in the editor |
| Relational databases | Yes — core feature | No — absent, not planned short-term |
| Kanban, gallery, calendar views | Yes | No |
| Formulas and computed properties | Yes | No |
| Public API | Yes (official REST API) | No — no documented public API |
| Native Slack integration | Yes | No — no native integration |
| Native GitHub integration | Yes | No — no native integration |
| Notion AI (summaries, agents) | Yes (included Business) | No |
| Monthly cost (15 people) | Business plan per seat, billed per member | VPS monthly fee only |
Which use cases migrate well — and which do not
The distinction matters and deserves to be addressed clearly before committing to a migration.
Docmost covers well: internal knowledge bases (procedures, onboarding, technical guides), client-facing documentation (specifications, meeting notes, product tutorials), project wikis where pages are the unit of work, and technical documentation (code, API, architecture). These are cases where Notion is used as a structured collaborative text editor — and that is precisely what Docmost does.
Docmost does not cover: project portfolio management in Notion databases with filtered views, dashboards with formulas and rollups, lightweight CRMs built on relational databases, and workflows that rely on the Notion API to sync external data. If your Notion usage depends on these features, Docmost is not a replacement — it is a different tool. In that case, looking at NocoDB or Grist for the data layer, and Docmost for documentation, is a more realistic architecture.
Requirements for hosting Docmost on a VPS
Docmost runs with three Docker components: the application itself, PostgreSQL for persistence, and Redis for real-time collaboration and task queues. These three containers run comfortably on a VPS with 2 vCPU and 4 GB RAM for a standard agency team. For teams with many simultaneous editors, 8 GB RAM provides comfortable headroom. Storage depends on the volume of files attached to pages — plan for at least 20 GB beyond the databases.
Other requirements: Docker and Docker Compose installed on the VPS, a reverse proxy (nginx or Caddy) for HTTPS, and a domain name pointing to the server. The complete Docker installation guide is documented in the self-host-docmost-vps article — this article focuses on the migration decision and import procedure, not system configuration.
Migrating Notion content to Docmost
Export the Notion workspace
In Notion, go to Settings → Workspace → Export content. Choose the Markdown & CSV format with sub-pages included. Notion generates a ZIP file containing pages as Markdown and databases as CSV. This ZIP is the format Docmost imports directly.
Inspect the ZIP before importing
Unzip locally and browse the structure. Each page becomes an .md file. Notion databases (tables, kanban, calendars) are exported as .csv — these files will not be imported by Docmost as databases, but as plain text. Identify at this stage what will be lost (views, formulas, relations) and what will survive (text, headings, internal links).
Create spaces in Docmost
In Docmost, create one space per team or per client before importing. The Docmost space structure is equivalent to Notion workspaces — it carries permissions and isolation. Naming spaces consistently with the Notion exports makes the correspondence easier.
Run the import in Docmost
In the target space, go to Settings → Import. Click Notion (the specific Notion option, not the generic Markdown option). Upload the ZIP file exported from Notion. Docmost parses the structure and reconstructs the page tree preserving parent-child relationships.
Review the import page by page
After the import, browse through critical pages. Items to check: internal links between pages (resolved if slugs are consistent), images and attached files (re-imported from the ZIP), and blocks that were Notion databases (they appear as plain text or simple tables — rework manually where needed).
Configure permissions per space
Docmost manages permissions at the space level: a space can be private (explicitly invited members), open to the organization, or public. For client spaces, create a group per client (client-x-group), invite the relevant members, and assign that group to the space with Editor or Viewer role as needed.
Progressively wind down Notion spaces
Do not delete Notion spaces immediately. During a transition period (two to four weeks depending on team size), keep Notion accessible in read-only mode while teams get comfortable in Docmost. Post a banner in each Notion space indicating the final cutover date.
Back up PostgreSQL before each bulk import
A large Notion ZIP import writes many pages to the database in a short time. Before launching a major space import, take a PostgreSQL snapshot: docker exec docmost-db pg_dump -U docmost docmost > backup-before-import.sql. If the imported structure is incorrect, a psql restore is sufficient to return to the previous state without rebuilding the entire instance.
What migration does not solve — an informed decision
Two trade-offs deserve attention before committing.
First trade-off: if your teams use Notion databases to manage projects (task tracking, client pipeline, operational dashboards), Docmost does not replace that part. Migrating to Docmost solves the cost problem for documentation, not the problem of managing structured data. These two needs are distinct and warrant distinct tools.
Second trade-off: migration has a real cost in recovery time. Reorganizing imported content, reconfiguring permissions, training teams and clients on a new interface represents a non-trivial investment. For an agency with a stable portfolio and primarily documentary content, the calculation is generally favorable from 10 Business seats onward. For an agency where Notion is deeply embedded in operational workflows, a partial migration (Docmost for documentation + another tool for data) is the most realistic path.
To structure the decision before starting, the SaaS to self-hosting migration checklist raises the right questions in the right order.
Troubleshooting: common errors at install and import
Three errors appear repeatedly in Docmost's GitHub issues and migration feedback.
Error: connect ECONNREFUSED 127.0.0.1:5432 — Docmost cannot reach PostgreSQL. In Docker Compose, the Docmost service sometimes starts before PostgreSQL has finished initializing. Adding a depends_on directive with condition: service_healthy and a PostgreSQL healthcheck in the docker-compose.yml resolves the issue.
Import stuck on "Processing..." indefinitely — Symptom of an oversized Notion ZIP (beyond a few hundred megabytes) or a Redis timeout. Check that Redis is running (docker ps), increase the APP_URL parameter in .env if the reverse proxy is truncating requests, and retry the import on a page subset first.
New import feature keeps failing with Markdown but HTML works (GitHub issue #91) — Docmost's Markdown parser can fail on Notion exports with non-standard Markdown extensions (nested YAML front matter, special blocks). In this case, use the Notion HTML export instead of Markdown: Docmost imports both formats from the same dialog, and HTML format produces more reliable results on complex exports.
Pages imported without images — Notion images are stored on Notion's servers and referenced by URL in the Markdown export. These URLs expire after export. Use the HTML export which includes images in the ZIP, or manually re-download images from the export before the URLs expire.