Stefan Maritz··6 min read

CMS for Vercel websites: what to use when Vercel hosts the site but not the words

Vercel runs your builds and serves your pages, it holds none of your words. Here is how to choose what sits behind the frontend, and why the wiring is the easy half.

The short answer

Vercel runs your builds and serves your site, it does not hold your content. So the decision sits behind the frontend: a headless CMS such as Sanity, Payload, Storyblok, or Contentful, markdown files committed to the repo, or a database provisioned through the Vercel Marketplace. Whatever you pick has to fire a webhook on publish so Vercel revalidates the right pages, and support Next.js Draft Mode so a post can be read on the real layout before anyone else sees it.

That is the plumbing sorted. Someone still has to research the piece, write it in your voice, and check it before it ships, which is the half no CMS was ever built for.

What Vercel handles, and what it leaves to you

Vercel is hosting, builds, and an edge network with a preview URL for every branch. If you shipped the site through v0, Claude Code, or Codex, that part already works and rarely needs thinking about again.

Storage is a different story. Vercel retired its own Postgres product and moved those databases to Neon in December 2024, so provisioning now runs through Marketplace integrations from Neon, Supabase, Upstash, and others, with credentials injected into your project as environment variables. Vercel Blob covers files and images. None of that is a place where a person sits down and writes a blog post.

Four places your content can end up

Hard-coded in components. Fine for the first handful of posts, painful by post 20, when fixing a typo means editing JSX and redeploying.

Markdown or MDX in the repo. You get version control, pull request review, and no monthly fee, in exchange for asking everyone who touches content to be comfortable in git, which rules out most of the people you want writing.

A database from the Marketplace. Neon or Supabase will store posts happily, then you are building the admin screens yourself, which is a side project nobody asked for.

A headless CMS. Sanity, Payload, Storyblok, and Contentful all sit behind a Next.js frontend without a rebuild, and each one gives a non-developer somewhere to type. Our guide to CMS options for AI-native websites compares them properly.

What to check before you commit

Webhooks that drive revalidation. When a post publishes, the CMS should call your revalidation route so Vercel purges the affected pages within seconds. Vercel's own guidance on choosing a headless CMS is blunt about it: anything that cannot reliably trigger tag-based revalidation should not make your shortlist. Rebuilding the entire site because someone fixed a typo is a 2019 workflow.

Draft Mode support, tested. Draft Mode bypasses the cache and renders unpublished content on your live layout, and it was called Preview Mode until Next.js 13.4. Integration quality varies a lot between platforms, so prototype it rather than trusting a documentation page.

Who holds publish rights. If the answer is whoever has repo access, you do not have a review step, you have a deploy button.

Field structure. Posts with named fields for title, slug, body, and meta description can be read and updated by an agent a year from now. Posts stored as one lump of HTML cannot, which is the same reason agent-friendly websites keep their content structured.

Draft Mode is a review step you already paid for

Plenty of Vercel setups skip this. Between the CMS and the live site you get a preview deployment per branch, plus a Draft Mode route that shows unpublished content to authorised eyes only. Wire both, send your co-founder the preview link, and there is your review workflow without buying anything extra.

Neither of those features solve the writing problem though, they give you a safe place to look at the writing.

The part the CMS conversation skips

A CMS gives content a home. It does not research a keyword, hold your brand voice steady across 40 posts, or catch the paragraph that reads like it came out of a chat window with nobody editing it. For a solo founder on Vercel, that work lands on the same person who built the site, usually on a Sunday.

Contengi sits on the other side of that line. A knowledge base holds your voice, strategy, and rules, agents research and draft against it, and a review layer catches drafts before they go anywhere near your deploy pipeline. Pair it with whichever CMS fits your stack and the blog stops being the one part of the site still running on unreviewed chat output. That is the same trap covered in how to prevent AI slop.

How to pick without losing a week

If you have a developer on hand, or you are comfortable in a terminal yourself, Sanity or Payload give you the most control and the tightest structure, and the setup cost is real but one-off.

If you are building solo with no appetite for schema configuration, Storyblok's visual editing layer or a markdown setup with a friendly editor will have you publishing this week. Sites built through prompt-to-code tools have their own quirks, which we covered in choosing a CMS for a V0 website.

If you are already on WordPress and dreading the migration, keep it, put Next.js in front of it, and spend the saved time on the content itself.

The technical fit takes an afternoon either way. What decides whether the blog survives past month three is who writes the posts, and what checks them.

Frequently asked questions

Does Vercel have a built-in CMS?

No. Vercel hosts and builds your site and offers storage through Marketplace integrations, with no editorial interface for writing or reviewing posts. Content needs a separate layer, whether that is a headless CMS, markdown in the repo, or a content system sitting alongside.

Which CMS works best with Next.js on Vercel?

Sanity, Payload, Storyblok, and Contentful are all proven pairings. The right one depends on whether you have developer support for schema setup, and how much a non-technical editor needs to drive it day to day.

Can I keep my blog posts as markdown files in the repo?

Yes, and plenty of technical founders do. It gives you version control and pull request review for free, though it puts a git workflow between your writers and publishing, which slows everything down once anyone non-technical joins.

How do content updates go live without a full rebuild?

Through on-demand revalidation. Your CMS fires a webhook when a post publishes, your app revalidates the affected paths or cache tags, and the updated page is served from the edge in seconds.

Do I need a developer to add a CMS to a Vercel site?

For a headless CMS with custom schemas, developer help saves real time. Lighter visual platforms and markdown setups can be configured by a non-technical founder, though someone has to wire the webhook and Draft Mode route once.

Content like this, in your own voice

The workflows behind this blog run inside Contengi. A strategist sets up your knowledge base, and the agents write to your rules.

Request beta access