Payload CMS

Developer-First, TypeScript-Native Headless CMS

Headless CMSDeveloper-FirstTypeScriptOpen SourceSelf-HostedAPI-FirstREST APIGraphQLNode.js

Overview

Payload is a headless CMS and application framework built with TypeScript, Node.js, and React. Code-first configuration with incredible developer experience.

Best for:

Next.js projectsTypeScript developersEnterprise applicationsCustom admin panels

Features

REST API
GraphQL API
Access Control
Localization
Versions & Drafts
Live Preview
Block Editor
TypeScript Types

Pricing

Free TierYes
Free LimitUnlimited for self-hosted
0
Self-hostedYes

Compatible Technologies

Databases
MongoDBMongoDB
PostgreSQLPostgreSQL
Cloud Servers
VercelVercel
Render Pro
DigitalOcean App Platform Pro
AWS AmplifyAWS Amplify
Fly.io Launch
Server Requirements

2+ cores

CPU

4 GB+

RAM

32 GB+

Disk

18.x, 20.x

Node.js

Technical Features

GraphQL API
REST API
Webhooks
Headless
Visual Editor
Live Preview
Media Library
Image Optimization
CDN Included
i18n
Version History
Drafts
Role-Based Access
Multi-Tenant
Audit Logs
TypeScript
Official SDK
CLI Tool
Plugin Ecosystem
SSO / OAuth
CI/CD Integration
Caching
Edge Deployment
Auto Scaling

Community

40.2

GitHub Stars

254k/week

NPM Downloads

10k+

Discord Members

2026-02-02

Last Update

Enterprise Features

Scalability

Horizontal scaling and high-availability deployments

Security & Compliance

Compliance Certifications

GDPR Compliance SSL/TLS

* Compliance depends on implementation and hosting provider. Payload CMS itself does not provide compliance certifications.

Payload is an open-source, code-first CMS and application framework

that installs directly into a Next.js app folder. Collections, fields,

and access control are defined in TypeScript config files, generating

a REST API, GraphQL API, and Local API automatically. It supports

MongoDB, PostgreSQL, and SQLite through swappable database adapters.

Key Highlights

- Auto-generated REST, GraphQL, and server-side Local API

- Code-defined collections with TypeScript type generation

- Swappable database adapters for MongoDB, Postgres, and SQLite

Why It Fits Jamstack Workflows

- The Local API queries the database directly within React Server Components, eliminating HTTP round-trips; REST and GraphQL endpoints serve external consumers and static site generators

- Webhooks, draft/publish workflows, and on-demand revalidation hooks let build pipelines respond to content changes in real time

Typical Implementations

- Marketing websites with visual editing

- Headless e-commerce storefronts

- Internal tools and enterprise dashboards

- Multi-tenant SaaS applications

Setup Snapshot

Hosting: "Self-hosted or deployed serverlessly on Vercel and Cloudflare"

Content: "Collections and globals defined in TypeScript config files"

Delivery: "REST API, GraphQL API, and direct Local API within Node.js"

Notes

- Payload lives inside your Next.js /app folder — it is not a standalone server but a set of libraries embedded in your application

- Requires a database adapter; MongoDB needs no migrations, while Postgres and SQLite require migration scripts for schema changes in production