Word & Press · 24 publishing platforms profiled Updated 10 October 2026

Compare

Strapi vs Payload for publishers: admin-first or code-first?

Strapi and Payload are self-hosted, MIT-licensed headless CMSs on Node.js. How they differ on roles, drafts, preview, databases and what developers must build.

By Word & Press Published 10 October 2026 Facts verified 10 October 2026 Read 4 min

The short answer

Pick Strapi if you want built-in editor roles, an admin-panel content builder and a paid tier for review workflows. Pick Payload if your developers want everything in code inside a Next.js app, with free versions and drafts but no built-in roles. Both are free to run and both leave the site, sitemaps and redirects to you.

STRAPI VS PAYLOAD

The short version

Pick Strapi if you want editors to have named roles from day one and developers to model content in an admin panel. Author, Editor and Super Admin roles are built in on the free tier. If you later need enforced review stages, they are available, but only on the Enterprise plan.

Pick Payload if your developers want the CMS and the front end in one Next.js codebase and are happy to write access rules as code. Versions, drafts and autosave are documented and need no subscription. The catch is that the roles a newsroom needs do not exist until someone builds them.

Both are free software you host yourself, and both are headless. The full profiles are Strapi and Payload. This is a documentation review, not a test.

At a glance

Feature Strapi Payload
Licence MIT Expat (Community Edition); code under ee/ has a separate Enterprise licence MIT
Latest version 5.57.0 (7 October 2026) 3.90.2 (23 September 2026)
Written in Node.js (LTS v22, v24 or v26 per the docs) JavaScript on Node.js 20.18.1 or higher, installed into Next.js
Hosting Self-hosted; MySQL, MariaDB, PostgreSQL or SQLite Self-hosted anywhere Next.js can run; MongoDB, PostgreSQL or SQLite
Editorial roles/workflow Author, Editor, Super Admin; Review Workflows Enterprise only No built-in roles documented; access control in code; versions and drafts
SEO & structured data Not documented as built in Official SEO plugin stores meta fields; JSON-LD via custom fields
Multilingual 500+ locales, one at a time Field-level localisation with fallbacks
Headless/API REST and GraphQL on all plans REST, GraphQL and Local API
Typical cost Community free; Growth $45/month with 3 seats Free software; no paid plan verified
Best for Teams wanting built-in roles and a paid upgrade path Next.js teams comfortable building the editorial layer

Editorial workflow

Strapi’s Draft & Publish is free, with entries marked Draft, Modified or Published. Scheduling goes through Releases on Growth or Enterprise. Review Workflows, with four default stages and role-controlled movement, and Audit Logs are Enterprise only.

Payload stores version history in a separate collection and can run as versions only, versions plus drafts, or drafts with autosave. Editors can browse, compare and restore versions. Drafts add a _status field. Scheduled publishing needs a job queue. Roles are a field you define on the user collection, with access functions that check it. The pages we read describe no staged review workflow, so you would build one.

For a small newsroom, Strapi’s roles save design work. For a team that wants autosave and version diffs without paying, Payload offers them directly.

What each leaves to the front end

Strapi needs a preview handler and a preview route that your front-end developer builds; full-screen preview is free, Live Preview is paid. Payload’s Live Preview shows your front end in an iframe in the admin panel, and the front end must listen for window.postMessage events and re-render, and work when framed.

Both also leave site templates, sitemaps, structured data, canonical tags, feeds and redirect handling to your code. Payload’s redirects plugin stores from and to pairs but does not perform the redirect; your front end does.

Search, structured data and feeds

Payload has an official SEO plugin that adds title, description and image fields, a snippet preview and character counters, and can be extended with Open Graph or JSON-LD fields. It stores values, and your pages must output them. For Strapi, the documentation we read describes no equivalent, so add meta fields to content types yourself.

On both, build Article or NewsArticle JSON-LD and sitemaps from published content only, and keep preview routes out of search indexes.

Hosting, performance and security

Strapi needs a supported Node.js LTS and a SQL database; MongoDB is not supported. Payload needs Node.js 20.18.1 or higher, works only with specific Next.js ranges, and has adapters for MongoDB, PostgreSQL and SQLite. Pin versions deliberately in both.

Uploads default to local disk in both. Strapi’s official providers are Amazon S3 and Cloudinary, and Payload’s Sharp-based image sizes need configuring. On ephemeral hosts such as Heroku or DigitalOcean Apps, Payload’s uploaded files vanish on restart without third-party storage. Plan persistent storage, backups and patching either way. Caching and CDN setup sit in your front end and hosting.

Cost of ownership

Both licences are free. The real cost is developer time. Strapi’s Growth plan is $45 per month with three seats (the currency is not stated on the page), and Enterprise is custom. We did not verify a paid Payload plan, so we quote none. Budget for hosting, a database, storage, email and a CDN on either. See the cost guide and licence guide.

Migrating between them

We found no official Strapi-to-Payload or Payload-to-Strapi migration tool. Both use SQL databases (Payload can also use MongoDB), so expect a scripted export through the APIs, remodelled collections and redirects handled at the front end.

Which should you choose?

  • Editors need defined roles immediately: Strapi.
  • You want enforced review stages and are willing to pay: Strapi Enterprise.
  • Your front end is already Next.js and you want one codebase: Payload.
  • You need MongoDB: Payload.
  • No developers: neither. See the comparison hub.

Related: Strapi vs Sanity, Strapi vs Directus and the CMS profiles.

Questions people ask

Is Payload or Strapi better for a news site?

Neither is a news site out of the box. Strapi gives you built-in Author and Editor roles and an admin-panel content builder. Payload gives you versions, drafts and autosave on the free tier, but you write the roles. The better fit depends on whether your developers prefer configuration or code.

Do Strapi and Payload both cost nothing?

The software is free under MIT in both cases, apart from Strapi's separate Enterprise Edition code. You still pay for hosting, a database, storage and developer time. Strapi lists paid Growth at $45 per month. We did not verify any paid Payload plan.

Does Payload need Next.js and does Strapi?

Payload 3 installs inside a Next.js app and works only with specific Next.js version ranges. Strapi is a separate Node.js application, and your front end can use any framework, such as Next.js or Astro.

Which one supports scheduled publishing?

Both, with conditions. Strapi schedules through Releases, which need the Growth or Enterprise plan. Payload documents scheduled publishing and unpublishing but requires a job queue to be set up.

Can I use MongoDB with Strapi or Payload?

Payload offers adapters for MongoDB, PostgreSQL and SQLite. Strapi's documentation says it does not support MongoDB or other NoSQL databases, only MySQL, MariaDB, PostgreSQL and SQLite.

Sources

  1. Strapi's Community Edition is provided under the MIT Expat licence; any component residing under an ee/ directory is the Enterprise Edition and is not licensed under MIT Expat. — source, checked 10 October 2026.
  2. The latest Strapi release on GitHub is v5.57.0, published 7 October 2026. — source, checked 10 October 2026.
  3. Strapi supports only Active LTS or Maintenance LTS Node.js versions, listed as v22, v24 and v26. — source, checked 10 October 2026.
  4. Supported databases are MySQL (minimum 8.0), MariaDB (minimum 10.3), PostgreSQL (minimum 14.0) and SQLite 3; Strapi does not support MongoDB or other NoSQL databases. — source, checked 10 October 2026.
  5. The self-hosted pricing page lists Community as free, Growth at $45 per month including 3 seats (+$15 per month per extra seat), and Enterprise at custom pricing. — source, checked 10 October 2026.
  6. On the pricing page, Live Preview and Releases are marked for Growth and Enterprise, Content History is 14 days on Growth, and Review Workflows and Audit Logs are marked for Enterprise only; all plans include REST and GraphQL APIs and role-based access control. — source, checked 10 October 2026.
  7. Review Workflows are available exclusively on the Enterprise plan; the default workflow has four stages (To do, In progress, Ready to review, Reviewed) and each stage has configurable roles allowed to move content into and out of it. — source, checked 10 October 2026.
  8. Draft & Publish is a free feature; entries are Draft, Modified or Published, and scheduled publication is done by including an entry in a Release, which requires the Growth or Enterprise plan. — source, checked 10 October 2026.
  9. Preview needs a preview handler configured in /config/admin.ts and a front-end preview route that the front-end developer builds; the free plan has full-screen preview only, while Live Preview with side-by-side and inline editing is on Growth and Enterprise. — source, checked 10 October 2026.
  10. Strapi provides three built-in admin roles (Author, Editor, Super Admin) and role-based access control is a free feature. — source, checked 10 October 2026.
  11. Strapi's internationalization is a free feature with a pre-created list of 500+ locales; content is managed one locale at a time, and AI translation needs the Growth or Enterprise plan. — source, checked 10 October 2026.
  12. The Media Library is free and supports folders, alt text and captions, cropping with focal point, and responsive image generation; official upload providers are Local (default), Amazon S3 and Cloudinary, with a default maximum file size of 1GB. — source, checked 10 October 2026.
  13. Payload's repository is licensed under the MIT Licence, copyright Payload CMS, LLC, 2018-2026. — source, checked 10 October 2026.
  14. The latest Payload release on GitHub is v3.90.2, published 23 September 2026. — source, checked 10 October 2026.
  15. Payload requires Node.js 20.18.1 or higher and any JavaScript package manager, works only with specific Next.js version ranges, and offers database adapters for MongoDB, PostgreSQL and SQLite. — source, checked 10 October 2026.
  16. Payload's Versions feature stores version history in a separate collection and can be configured as versions only, versions plus drafts, or versions plus drafts plus autosave; versions can be browsed, compared and restored. — source, checked 10 October 2026.
  17. Drafts add a _status field (draft, published, changed); scheduled publishing and unpublishing are supported but require a job queue to be set up, and draft visibility can be restricted with access control on _status. — source, checked 10 October 2026.
  18. Payload does not describe built-in roles; access control is written as functions in code, and roles are fields you define on your user collection. — source, checked 10 October 2026.
  19. Live Preview renders the front end in an iframe in the Admin Panel, and the front end must listen for window.postMessage events from the Admin Panel and re-render with the data it receives. — source, checked 10 October 2026.
  20. The @payloadcms/plugin-seo package adds a meta field group (title, description, image) with auto-generation functions, a search snippet preview and character counters, and can be extended with custom fields such as Open Graph tags or JSON-LD. — source, checked 10 October 2026.
  21. The redirects plugin adds a redirects collection with from and to fields but, according to the documentation, does not handle the redirect itself; the front end must apply the redirects. — source, checked 10 October 2026.
  22. Payload localisation is field-level (localized: true on a field), supports fallback locales, and an experimental beta feature allows publishing status to vary by locale. — source, checked 10 October 2026.
  23. Upload-enabled collections add filename, mimeType and filesize fields; with imageSizes configured, Payload uses Sharp to crop and resize uploads; files are stored locally by default unless a storage plugin such as S3 is used. — source, checked 10 October 2026.
  24. Payload can be deployed anywhere Next.js can run, and on ephemeral filesystem hosts such as Heroku or DigitalOcean Apps uploaded files are deleted on restart unless third-party storage is used. — source, checked 10 October 2026.