Head to head
Stop guessing which one. Put them side by side.
Up to 4 tools, same rows for each: what it is, what it really costs, the trap, and how to wire it up. The URL carries your picks — send it to anyone.
Notion as a CMSKeystaticMDX
Quick read
- Free with no card: Keystatic, MDX.
| Field | Notion as a CMSnotion.com | Keystatickeystatic.com | MDXmdxjs.com |
|---|---|---|---|
| What it is | Notion's public API exposes databases and pages as JSON, letting a team draft in Notion and publish to a React front end. The free plan is unlimited for a solo user but applies a block limit once a workspace has multiple members. Notion runs an official hosted MCP server. | Keystatic from Thinkmill is an MIT-licensed CMS that makes Markdown, MDX, JSON and YAML in your repository editable through a React admin UI. There is no database. It runs against the local filesystem in development and against GitHub in production. | MDX is a format that lets you write JSX inside Markdown, so an article can embed live React components — charts, interactive figures, embeds — between paragraphs of prose. It compiles to a React component and is supported by Vite, Next.js and Astro. |
| Category | CMS & content infrastructure | CMS & content infrastructure | CMS & content infrastructure |
| Cost tier | mixed | free | free |
| Pricing | Free plan (block limits once a workspace has multiple members). Plus $10/member/mo, Business $20/member/mo, Enterprise custom. API access on all plans. | Free and MIT-licensed with no seat limits. Keystatic Cloud is an optional free add-on for GitHub auth and image handling. | Free, MIT-licensed open format. |
| Why builders pick it | Editors already live here, so adoption cost is near zero and the writing surface is genuinely pleasant. Works well for a small publication running its editorial calendar in the same workspace. | Zero cost and zero vendor lock-in — the schema is a TypeScript file and content stays as plain files you can grep and diff. Ships integrations for Next.js, Astro and Remix. | The reason a technical publication can ship an interactive explainer inside an ordinary article. Every file-based tool here — Tina, Keystatic, Outstatic, Velite — speaks it natively. |
| Watch out for | The API is rate-limited around 3 requests/second and paginates blocks, so builds slow badly past a few hundred posts — cache aggressively. Rich-text to HTML conversion is your problem, and there is no preview or publish workflow. | Smaller community and slower release cadence than Tina or Payload. No official MCP server, no built-in scheduling, and no multi-stage editorial workflow or approval chain. | MDX is a compiler, not a CMS: no editor, no media library, no workflow, no roles. Non-technical writers will not author raw MDX, so pair it with an editing layer. |
| How to wire it up | npm i @notionhq/client | npm create @keystatic@latest | npm i @mdx-js/rollup |
| Editor's pick | No | No | No |
Which one did you ship?
The grid says what these tools are. This says what builders did about it — one decision per person, changeable whenever you change your mind.
0/280Sign in to add yours.
Or try
Hand this to your Lovable agent
# Tool comparison — Notion as a CMS vs Keystatic vs MDX Source: Kbaise, a directory of tools that work with Lovable projects. Pick one and tell me why before writing any integration code. ## Notion as a CMS (notion-as-a-cms) - URL: https://www.notion.com - Category: CMS & content infrastructure - Cost: mixed — Free plan (block limits once a workspace has multiple members). Plus $10/member/mo, Business $20/member/mo, Enterprise custom. API access on all plans. - What it is: Notion's public API exposes databases and pages as JSON, letting a team draft in Notion and publish to a React front end. The free plan is unlimited for a solo user but applies a block limit once a workspace has multiple members. Notion runs an official hosted MCP server. - Why builders pick it: Editors already live here, so adoption cost is near zero and the writing surface is genuinely pleasant. Works well for a small publication running its editorial calendar in the same workspace. - Trap: The API is rate-limited around 3 requests/second and paginates blocks, so builds slow badly past a few hundred posts — cache aggressively. Rich-text to HTML conversion is your problem, and there is no preview or publish workflow. - Wiring: npm i @notionhq/client - Full dossier: /api/public/tools/notion-as-a-cms ## Keystatic (keystatic) - URL: https://keystatic.com - Category: CMS & content infrastructure - Cost: free — Free and MIT-licensed with no seat limits. Keystatic Cloud is an optional free add-on for GitHub auth and image handling. - What it is: Keystatic from Thinkmill is an MIT-licensed CMS that makes Markdown, MDX, JSON and YAML in your repository editable through a React admin UI. There is no database. It runs against the local filesystem in development and against GitHub in production. - Why builders pick it: Zero cost and zero vendor lock-in — the schema is a TypeScript file and content stays as plain files you can grep and diff. Ships integrations for Next.js, Astro and Remix. - Trap: Smaller community and slower release cadence than Tina or Payload. No official MCP server, no built-in scheduling, and no multi-stage editorial workflow or approval chain. - Wiring: npm create @keystatic@latest - Full dossier: /api/public/tools/keystatic ## MDX (mdx) - URL: https://mdxjs.com - Category: CMS & content infrastructure - Cost: free — Free, MIT-licensed open format. - What it is: MDX is a format that lets you write JSX inside Markdown, so an article can embed live React components — charts, interactive figures, embeds — between paragraphs of prose. It compiles to a React component and is supported by Vite, Next.js and Astro. - Why builders pick it: The reason a technical publication can ship an interactive explainer inside an ordinary article. Every file-based tool here — Tina, Keystatic, Outstatic, Velite — speaks it natively. - Trap: MDX is a compiler, not a CMS: no editor, no media library, no workflow, no roles. Non-technical writers will not author raw MDX, so pair it with an editing layer. - Wiring: npm i @mdx-js/rollup - Full dossier: /api/public/tools/mdx ## Quick read - Free with no card: Keystatic, MDX. ## Rules 1. Prefer the free tier when no budget was stated, and say what the ceiling is. 2. Read the full dossier before integrating. 3. Fetch /api/public/models before writing any AI model ID.
Agents can fetch the same thing: GET /api/public/compare?slugs=notion-as-a-cms,keystatic,mdx