Framer, Webflow or Next.js for AI search

Framer for a marketing or content site that has to stay readable to AI crawlers without an engineer on staff. Webflow once the archive outgrows Framer's ceilings and you need a mature CMS API. Next.js when the site is the product. Rendering is close on all three. Everything below it is where they split.

Oskar Mieta

Founder, Designer & Developer

Summarize with AI

Category

Platform

Reading time

6 min

Framer for a marketing or content site that has to stay readable to AI crawlers without an engineer on staff. Webflow once the archive outgrows Framer's ceilings and you need a mature CMS API. Next.js when the site is the product. Rendering is close on all three. Everything below it is where they split.

Desses builds in Framer and Next.js. We're a Framer Partner and a Framer Pro Expert, and we turn down Webflow builds and rebuilds. Read the rest with that in front of you. A Webflow buyer can't hire us for a Webflow site, which is the whole reason I'm willing to publish a Webflow column.

Every Webflow cell below is read from Webflow's own documentation and linked per row. We haven't run any of it against a live Webflow site, and I flag those cells. Framer sells AEO as a feature and runs a scanner behind a lead form. Webflow sells it as a paid product behind a Team or Enterprise plan and an add-on. Neither can be objective about the other.

"Legible to an AI crawler" has one useful meaning: the page returns its full text in the first HTML response, before any JavaScript runs. Every other row is downstream, and the evidence that this is what crawlers do sits in its own article.

Twelve rows that decide a platform


Framer

Webflow

Next.js

Server rendering by default

Yes. "Every page is pre-rendered to HTML on our servers before it is served"

Docs name no rendering model, only storage and delivery "by Cloudflare". The agent-markdown doc says "Your site's HTML is automatically converted into Markdown", so HTML leaves the server. Untested by us

A per-route build decision. Same output or the opposite one

Markdown delivery to agents

Native, zero config. Accept: text/markdown or ?md on any URL

Automatic HTML-to-Markdown, Enterprise Workspace only, needs a custom domain and migration to Webflow's Cloudflare infrastructure

You build the route

JSON-LD control

Full, via custom code in a <script type="application/ld+json"> in the head. No schema type is native

Full. Custom code in Site settings head and Page settings head, HTML, CSS and JS only

Full, with a documented XSS escape on the output

Dynamic schema from CMS

[Yes. `{{Title \

json}} escaping, built-in {{Created}} and {{Updated}}`, Collection Reference lookups](https://www.framer.com/help/articles/structured-data-through-json-ld/)

Yes. Custom code in a Collection page template head, fields bound with "+ Add Field". Docs name no escaping filter

Whatever your CMS exposes

Sitemap control

Auto-generated and maintained by Framer

Auto-generated on publish, and "you can write your own custom sitemap.xml". SEO-enabled plan

You build it

robots.txt control

Auto, overridable by file upload on Pro and above

Editable in Site settings, SEO, Indexing. Paid plan

You write the file

Redirect when a slug changes

None. "If you change a sub-path from the canvas or CMS, it won't automatically update in your redirect settings." Manual rules with wildcards and capture groups on Pro and above

A "Permanently redirect the old URL to this new one" checkbox in Page settings, on pages and Collection items. Wildcards and capture groups. Paid plan, 1,000 rules recommended as a ceiling

You configure it

RSS

Not possible

Native. An "Enable RSS 2.0 feed" toggle on a Collection page, fields mapped in settings

You build the route

Paginated URLs

No numbered URLs. Infinite scroll or Load More, and past the first batch it loads client-side

Query strings like _page=2, and Webflow's own lesson says "Only the first pagination page will be indexed"

Any URL shape you want

CMS ceilings

Basic 2 collections and 1,000 items. Pro 10 collections then $40 per 10 to a hard 40, 2,500 items then $20 per 10,000 to a hard 40,000

Premium 40 collections and 20,000 items, both raised in May 2026. Team goes to 100 collections. 100 items per Collection list on the canvas unless paginated

Whatever your CMS imposes

CMS API

Server API since 12 February 2026. Streaming WebSockets, syncs collections with external sources, publishes changes. REST is a layer you write

Data API v2, "an extensive set of RESTful endpoints", bearer auth, staged and live items, publish

Whatever your CMS exposes

What it costs to run

Pro $30/month, plus collection and item add-ons

Premium $25/month yearly or $39 monthly. AEO and agent-markdown sit above that on Team and Enterprise

Hosting, plus a CMS, plus an engineer who can deploy. The engineer is the line item

Two Webflow cells carry a warning label. Nobody at Webflow publishes a rendering model, so the first row infers one from a sentence in a different help article. The schema-escaping cell reports an omission in the docs. Three checks close both gaps in an afternoon: fetch a live Webflow page with JavaScript off and count the body characters, bind a quote-heavy CMS field into head JSON-LD and view source, then rename a slug and watch the old URL.

Rendering is the row the others hang on

Framer's documentation puts it flatly: "Although Framer sites are built with React, every page is pre-rendered to HTML on our servers before it is served. AI agents and crawlers that do not execute JavaScript still receive the full text of your page." We checked it the boring way. A curl against a Framer content page as GPTBot returns two JSON-LD blocks, one H1, the canonical link and 160,000 characters of body text in the initial response.

Next.js can produce the same full-text response and it can produce an empty shell with a script tag. That's the whole trade in one line. Control you're obliged to use.

The Markdown row is the widest gap on the list

Framer serves a markdown version of any page to anything that asks, on every paid plan, nothing to configure. The output covers optimised pages only and drops out while a site is rate-limited. Webflow runs the same conversion automatically for LLM requests, on Enterprise sites, after a custom domain and a migration to Webflow's Cloudflare infrastructure. Same capability, four gates in front of it. On Next.js it's a route you write in an afternoon.

Weigh the row carefully. Neither vendor has published a number on how often crawlers request the markdown version, and neither have we. A feature nobody has measured demand for is worth nothing to plan around.

What the schema rows are worth, honestly

Less than three tidy rows suggest. The one controlled study found AI Overview citations falling 4.6% on pages that added JSON-LD, and no AI system tested extracted anything from JSON-LD on a direct fetch. The full evidence walk is its own article. Treat those three rows at a tenth of the weight of the first one, and treat llms.txt as decoration.

The robots.txt row is the one that can lose you everything

Blocking the wrong crawler costs more than picking the wrong platform. GPTBot builds training corpora and blocking it costs nothing in AI search. OAI-SearchBot builds the index ChatGPT cites from, and blocking that removes you from ChatGPT search. Same shape at Anthropic. The crawler article has the full table.

All three platforms hand you the file. Framer gates the override at Pro, which is the practical reason a content site starts at Pro whatever the CMS math says. Most sites that lose AI visibility lose it by being unreadable, not by being blocked.

When not to pick Framer

Forty collections and 40,000 items are hard ceilings, fully loaded, with every add-on paid. There's no enterprise phone call that moves them. Webflow's Premium plan sits at 40 collections and 20,000 items and its Team plan goes to 100, so the collection ceiling has somewhere to go over there. A publisher sitting on a 60,000-item archive has already made this decision and doesn't know it yet.

The API argument I made in the first version of this page no longer holds, and I'd rather retire it in public than leave it standing. Framer shipped a Server API on 12 February 2026 that syncs CMS collections with external sources like Notion or Airtable, publishes changes and updates project settings, from any server, triggered by a webhook, a scheduled job or an agent. CI-driven content pipelines run on Framer now. So does bulk migration by script. Anyone still writing that the Framer CMS is unreachable outside the editor is working from a stale page. Mine included.

The maturity gap survives. The Server API runs on streaming WebSockets, and Framer's own FAQ answers the REST question with "you can see how you could expose the API as REST endpoints in the example here", plus a reminder to add strong authentication yourself. That's a wrapper you own and maintain. Webflow's Data API v2 has been a documented REST surface for years. Moving 12,000 articles onto a seven-month-old WebSocket API is a different risk from moving them onto a mature one, and the client carrying it should be told which one they're taking.

A large editorial operation with real workflow, roles and approvals is not a Framer job. I say that as a Framer Partner whose revenue depends on Framer builds, because the alternative is hitting the ceiling in month nine and having that conversation with a client who paid me to see it coming.

Where Framer is the right call: a marketing site, a product site, a content hub in the low thousands of items, a team where the people publishing aren't engineers. Most companies reading this.

When Next.js is the answer, and when it's overkill

Next.js earns its place when the site is the product, when the content pipeline needs an API you can write against without a wrapper, or when you need URL shapes the hosted platforms can't make. It earns it again when the thing is app-shaped: accounts, real-time state, permissions, anything where the CMS is the smallest part of the build.

It's overkill for a 40-page marketing site with a blog. Hosting is the cheap part. Every copy change goes through a deploy, and whoever owns the site waits for someone who reads code. Marketing teams that need a sprint ticket to ship a landing page ship fewer landing pages, and that shows up in the numbers long before rendering does.

Next.js gives you every row in that table and hands you the bill for maintaining all of them.

What we'd run before deciding anything

Fetch your three most important pages with JavaScript off and count what comes back. If the body text is there, the platform is doing its job and the rest is content work. If nothing is crawling your site, a replatform won't fix that, so check the size of the prize before anyone signs anything.

Read your robots.txt and check OAI-SearchBot, Claude-SearchBot and PerplexityBot are allowed, verified by IP against Anthropic's published ranges. Then pull a month of server logs and count AI bot hits per page template. That's your baseline, measured from real requests.

Count your CMS items and multiply by your publishing rate for three years. If that number crosses 40,000, Framer is off the table today rather than in year three.

If you want us to run all of that against your build, how we scope and price this work is the place to start.

If you're weighing a replatform, send me your current URL and a rough item count, and I'll tell you whether the move is worth it. Fairly often it isn't, and I'll say so.

Questions people ask about this

Will moving to Framer get me cited in ChatGPT?

No platform does that. Framer removes rendering as a reason you can't be cited, which matters because no major AI crawler executes JavaScript. Content, brand presence and whether you rank decide the rest. Ahrefs found 76.1% of pages cited in AI Overviews already rank top-10.

Does Webflow handle any of this better than Framer?

On three rows in its documentation, yes. Renaming a slug offers a redirect checkbox. RSS is a native toggle on a Collection page. The Data API v2 is a mature REST surface where Framer's Server API is seven months old and speaks WebSockets. Framer answers back on markdown for agents, zero-config on every paid plan against Webflow's Enterprise-only version. Read them as documentation claims we haven't tested.

What's the real CMS ceiling on Framer, and when does it bite?

Basic is 2 collections and 1,000 items. Pro starts at 10 collections and 2,500 items and buys upward with add-ons to a hard 40 and 40,000. An Articles plus Categories plus Authors hub needs three collections, which puts Pro at the floor at $30 a month.

Can I keep my URLs if I move to Framer?

You can set slugs to whatever you want and build redirect rules with wildcards and capture groups on Pro and above. The trap comes afterwards. Framer's docs say changing a sub-path from the canvas or CMS won't update your redirect settings, so every rename needs a manual rule beside it.

Does the new Framer Server API change the Next.js decision?

For some teams. Syncing a Framer CMS from Notion, Airtable or a git-triggered job is a real capability now, and it removes the cleanest reason to reach for Next.js on a content site. The 40,000-item ceiling stands where it was. The API is new enough that I'd want a migration rehearsal on staging first.

Questions people ask about this

Will moving to Framer get me cited in ChatGPT?

Does Webflow handle any of this better than Framer?

What's the real CMS ceiling on Framer, and when does it bite?

Can I keep my URLs if I move to Framer?

Does the new Framer Server API change the Next.js decision?