CMS SEO is everything your content management system decides about how search engines and AI assistants see your pages. This page covers what makes a CMS SEO friendly, where headless setups go wrong, and how CoreCited sends finished drafts into 7 CMSes, as drafts only, so a person always presses publish.
What is CMS SEO?
SEO content management is the plumbing under every page: the fields where titles and descriptions live, the rules that build URLs, the sitemap, the redirects when a URL changes, and how the finished HTML is served. None of it makes a page worth citing. All of it can stop a good page from being found. A CMS is SEO friendly when it lets you get these right without a developer, and never quietly gets them wrong for you.
| WordPress | 40.2% |
|---|---|
| Shopify | 5.4% |
| Wix | 4.2% |
| Squarespace | 2.4% |
| Joomla | 1.1% |
| Webflow | 0.8% |
Third-party data [1]. Headless CMSes such as Contentful, Sanity, Strapi and Storyblok power sites that W3Techs generally cannot attribute to them, so they do not show up in surveys like this one.
The SEO-friendly CMS checklist
Use this to judge whether the CMS you have, or the one you are choosing, is an SEO friendly CMS. It is the same list whether the question is the best CMS for SEO or whether your current one is holding you back. Your ticks are saved in this browser.
To check the output rather than the settings, run a live page through the AI SEO Checker. For the robots.txt line, the robots.txt generator builds rules per crawler, and the schema markup generator produces JSON-LD you can paste into any CMS.
Headless CMS SEO: where it goes wrong
In a headless CMS, such as Contentful, Sanity, Strapi or Storyblok, the CMS only stores content. A separate front end turns it into pages, so headless SEO is really front-end SEO: titles, canonicals, sitemaps and structured data are all built in your code. That flexibility is the appeal, and the risk.
The biggest risk is rendering. Google processes JavaScript pages in three phases, crawling, rendering and indexing, and still says server-side or pre-rendering is a great idea because it is faster and “not all bots can run JavaScript”[2]. AI crawlers are the sharpest case: in Vercel’s December 2024 analysis, none of the major AI crawlers rendered JavaScript, including OpenAI’s, Anthropic’s and Perplexity’s[3]. A page built in the browser can rank in Google and still be empty to the assistants.
Webflow, WordPress, Contentful, Sanity and Strapi SEO
Each CMS puts the SEO controls in a different place. In short, for the ones CoreCited connects to:
- WordPress SEO. Titles, slugs and excerpts are core. Most sites add an SEO plugin for meta descriptions, sitemaps settings and structured data, and serve HTML from the server by default.
- Webflow SEO. Webflow generates a sitemap and updates it on every publish[5], and collection pages can pull their SEO title and meta description from collection fields[4].
- Contentful SEO, Sanity SEO and Strapi SEO. These are headless: add SEO fields such as a meta description and slug to your content types, and make sure your front end renders them into the HTML.
- Ghost has a fixed post model with titles, slugs and excerpts built in, and Storyblok is headless like Contentful.
How CoreCited publishes to your CMS
The other half of this page is the product. CoreCited finds questions AI assistants answer without naming you, and a content brief turns one into a page. CMS publishing is the last step: the finished article goes into your CMS as a draft, with its title, body, slug and excerpt, instead of being copied and pasted.
Two kinds of CMS, two ways to connect
WordPress and Ghost have a fixed idea of a post (title, body, slug, draft), so connecting takes one step. Strapi, Contentful, Sanity, Webflow and Storyblok let you design your own content types, so there is no universal “post”: CoreCited reads your content types and suggests which field is the title, the body, the slug and the excerpt, and you confirm the mapping before anything is written. It never guesses silently.
| Arrives as | Slug | Excerpt / description | Can update an existing entry | |
|---|---|---|---|---|
| WordPress | Draft post | ✓Yes | Excerpt | ✓Yes |
| Ghost | Draft post | ✓Yes | Custom excerpt | ✓Yes |
| Strapi | Draft (Draft & Publish on) | If mapped | If mapped | ✓Yes |
| Contentful | Unpublished entry | If mapped | If mapped | ✓Yes |
| Sanity | Draft document | If mapped | If mapped | ✓Yes |
| Webflow | Draft item | Always; derived from the title if blank | If mapped | ✓Yes |
| Storyblok | Unpublished story | If mapped | If mapped | ✓Yes |
| Custom endpoint | Signed JSON POST | ✓Yes | metaDescription | Sends the id; your endpoint decides |
Drafts only, in every CMS
The draft state is not an option in CoreCited. Each adapter sets it in code, and there is no parameter to override it. The reason is simple: we are writing into your live property, and a tool that can publish there is one bug or one wrong click away from doing so. People searching for auto posting to WordPress will not find it here, on purpose.
The connection test is a real write
When you connect, CoreCited does not just check that the token is valid. It runs the same code that will publish your articles, creates one draft titled as a connection test, and deletes it straight away. A read-only token that would have failed on your first real article fails here instead, with an error that says which setting to change.
Not on the list? Use the custom endpoint
Any site or CMS that can receive a POST can take articles. CoreCited sends the article as JSON over https, signed with an HMAC-SHA256 of the request body using a secret you set, in the X-CoreCited-Signature header. Answer with a 2xx and it counts as delivered. The same data is available to read through the REST API.
Which plan includes it
CMS connections are on the Agency plan and above, alongside the other features for managing client sites. Content briefs start on the Free plan and full drafts on Growth; without a connection you copy the finished draft into your CMS yourself. Full details are on the pricing page.
Questions people ask
What is CMS SEO?
CMS SEO is the part of search optimisation your content management system controls: whether you can set titles, meta descriptions and URLs per page, whether it produces a sitemap and redirects, how it outputs structured data, and whether pages reach crawlers as finished HTML. A good CMS makes those easy; a poor one makes them impossible without a developer.
What is the best CMS for SEO?
The one that gives you control of titles, descriptions, URLs, redirects, sitemaps and structured data, and serves pages as HTML rather than building them in the browser. WordPress, Webflow and a well-built headless setup can all do that. No CMS ranks a page by itself; it only removes or adds obstacles.
Is headless CMS bad for SEO?
No, but the SEO work moves to the front end. A headless CMS stores content and your website renders it, so titles, sitemaps and structured data are the front end's job. If that front end builds pages with client-side JavaScript, crawlers that do not run JavaScript, which Vercel reported includes the major AI crawlers, see an empty page.
Is Webflow good for SEO?
For Webflow SEO, the basics are native: it generates and updates a sitemap on publish, and CMS collection pages can take their SEO title and meta description from collection fields. As with any CMS, the content and the site's reputation matter more than the platform.
Does CoreCited auto-post to WordPress?
No, and deliberately. It creates a draft in WordPress, or in any of the other CMSes it connects to, and a person on your team reviews it and presses publish. The draft state is hard-coded in every adapter, with no setting to change it.
Which CMSes does CoreCited connect to?
WordPress, Ghost, Strapi, Contentful, Sanity, Webflow and Storyblok, plus a custom endpoint for any site that can receive a signed JSON POST. CMS connections are on the Agency plan.
Is CoreCited a WordPress AI content generator?
It writes drafts, but it starts somewhere most generators do not: a question your buyers ask AI assistants where you are not named. The brief says what the answer is missing, the draft is checked against the page audit as you edit, and the result lands in WordPress as a draft for a person to finish.
Is my CMS password stored?
CoreCited uses API tokens or, for WordPress, an application password rather than your login, and stores the secret encrypted. It is decrypted only at the moment of a call, and never sent to a browser.
