What does Framer AEO actually involve?
Framer AEO is the platform-specific half of answer engine optimization: giving AI search engines clean, quotable pages and setting the few files and snippets Framer leaves to you. Strategy, meaning which prompts to target and where to earn mentions, is the same on any platform.
Framer starts from a strong position. Its help center says pages are rendered on Framer's servers before delivery, so crawlers that don't run JavaScript still receive the text, metadata and structured data, and every published site gets a sitemap.xml and robots.txt. That's why Framer sits in the low-risk row of our AI-search-ready website guide.
What's left is the work Framer can't do for you: page structure, schema, crawler rules that match your intent, and checking the published site. Here it is in the order we do it.
Layer | What Framer gives you | What you still own |
|---|---|---|
Rendering | Pre-rendered HTML on every page | Embeds and code components that load content late |
Crawler access | Auto robots.txt that allows AI and search crawlers | A custom file only if you need to block something |
Sitemap | Auto sitemap.xml from published pages and CMS items | Hiding pages that shouldn't be found |
Schema | Custom code slots and CMS variables | Writing and validating the JSON-LD |
Structure | Headings, rich text and CMS fields | Answer-first templates and real tables |
llms.txt | Static file hosting on Pro and Enterprise | Writing the file and keeping it current |
Can AI search engines read a Framer site?
Yes, in almost every case. Framer serves pre-rendered HTML, so OAI-SearchBot, PerplexityBot and Claude-SearchBot see your copy without running scripts. The exceptions are embeds, iframes and some code components, which may load late or live on another domain.
Framer's help center also says it serves a Markdown version of a page on the same URL when a request sends an Accept: text/markdown header or adds ?md. It's aimed at AI agents and only covers optimized pages, so treat it as a bonus.
Test the pages that matter rather than trusting the defaults. Disable JavaScript and reload your homepage, pricing page and one CMS page. Anything that disappears is invisible to non-rendering crawlers too, as our server-side rendering guide explains, and the fix is usually native Framer text.
How should you structure Framer pages for AI search?
Structure Framer pages answer-first: a short plain-text answer under the H1, question-style H2s, a direct answer opening each section, and comparisons in real text. Engines quote passages, so each section has to stand alone. The writing rules are in our answer-first content structure framework; here's how they map onto Framer.
- Set heading levels on purpose. Choose the tag for each text layer: one H1 per page, H2s for sections, and no paragraphs styled to look like headings.
- Add a short answer field to each CMS collection. A required 40–60-word plain-text field under the title means every item ships with a quotable summary.
- Keep FAQs visible. If you use an accordion, check with JavaScript disabled that the answers are still in the HTML.
- Build tables as text. A comparison grid of Framer text layers is readable. A screenshot of a table isn't.
- Template titles with CMS variables such as {{Title}}, and include the category, not just the item name.
Hypothetical example: a Framer use-case template rebuilt for AEO
For example, suppose a startup has 12 use-case pages in a Framer CMS collection, each with a headline, an image and three feature cards.
The rebuilt collection adds a 50-word short answer field, a 'who it's for' line, a rich text body with question H2s and four FAQ pairs stored as separate fields. The template shows the short answer under the H1, renders the FAQs as visible text and outputs the same answers as FAQPage JSON-LD, so every new use case ships with the structure.
How do you add schema markup to a Framer site?
You add schema markup to Framer as JSON-LD in custom code. Framer doesn't generate structured data, but it offers three places for it: site-wide custom code, page-level custom code, and custom code on CMS pages, where you can insert collection fields.
The CMS option is the one that scales. Framer's structured data help article shows a BlogPosting block on a CMS page with values written as {{Title | json}}. The json filter formats values safely, {{Created}} and {{Updated}} exist on every item, and referenced fields such as an author work too. You can also store a whole JSON-LD block in a text field with the unsafeRaw filter, but it escapes nothing, so malformed JSON can break the page.
Put Organization schema site-wide
Add one Organization block with your name, URL, logo and sameAs links to your official profiles in the site-wide head custom code.
Template Article or BlogPosting on CMS pages
Add a JSON-LD block to the blog's CMS detail page using {{Title | json}}, {{Updated}}, the cover image and the author reference fields.
Add FAQPage where answers are visible
Only mark up questions that appear on the page. Store them as CMS fields so the visible FAQ and the schema can't drift apart.
Validate the published page
View the live page source to confirm the variables rendered real values, then run Google's Rich Results Test on a few items.
Keep expectations honest: Ahrefs' controlled 2026 test found no lift in AI citations from adding schema, so treat it as hygiene for entity parsing and rich results. The evidence is in does schema markup help you get cited by ChatGPT.
How do you control AI crawlers and robots.txt in Framer?
Framer's auto-generated robots.txt allows all AI and search crawlers by default, which suits most marketing sites. Act only if you want to block a specific bot, such as a training crawler.
To change the rules, upload your own robots.txt as a static file at the root path. Framer's help center says a custom file replaces the auto-generated one, and static files, found under site settings in the hosting section at the time of writing, are a Pro and Enterprise feature. Because your file replaces Framer's, add a Sitemap line pointing to yoursite.com/sitemap.xml.
If you do block bots, block training crawlers such as GPTBot and ClaudeBot by name, never search crawlers like OAI-SearchBot and Claude-SearchBot, which keep you in ChatGPT search and Claude's web answers. Our guide on whether to block or allow AI crawlers has the user-agent table. For single pages, a page-settings toggle hides the page from search engines with a noindex tag.
Should you add llms.txt to a Framer site?
Add llms.txt to a Framer site only if it's cheap for you, because the 2026 evidence shows no citation lift from the file. SE Ranking's study of 300,000 domains found no measurable effect, and Google says no special files are needed for its AI features. We explain why in what llms.txt is and whether it helps.
If you want one anyway, upload it as a static file at the root, publish and check yourdomain.com/llms.txt. Framer lists file hosting on Pro and Enterprise, with 50 static files per project on Pro. Our free llms.txt generator builds a correctly formatted file from your site name, summary and key pages.
How do you check whether your Framer AEO work is working?
Check it in two passes: a technical audit of the published site, then measurement of whether engines cite you and send visitors. The audit takes an afternoon; measurement takes months to show a trend.
- Fetch key pages without JavaScript and confirm headings, prices and FAQ answers are in the HTML.
- Open /robots.txt and /sitemap.xml on your live custom domain, not Framer's free subdomain, and confirm they say what you expect.
- View source on CMS pages and check that JSON-LD variables output real values, not empty strings.
- Run Framer's free AEO scanner at framer.com/aeo for a second opinion. It scores pages on Framer's own method and uses AI, so treat it as a checklist, not a verdict.
- Add an AI channel in GA4 so ChatGPT, Perplexity and Copilot referrals show up separately. Our guide to tracking AI referral traffic in GA4 has the regex.
- Run a monthly prompt test of the 20–30 questions buyers ask, and record who gets cited.
For entities, indexing and CDN rules, use our AI visibility audit checklist.
What are the limits of Framer for AI search?
Framer's AEO limits are about structure and control, not visibility. The constraints show up when content gets large or relational, or when you want control over every file the site serves.
- Schema is hand-built. There's no native generator, so someone writes and maintains the JSON-LD templates, or vets a marketplace plugin.
- Root files depend on your plan. A custom robots.txt or llms.txt needs static file hosting on Pro or Enterprise.
- Late-loading content is invisible. Embeds and browser-fetched components may never reach non-rendering crawlers.
- Complex content models strain the CMS. Large, deeply linked collections are harder to template than in a code-based CMS.
None of these are reasons to leave Framer for a typical startup site. If you run a large content operation, the trade-offs are in our Framer to Next.js migration cost guide. Otherwise, our Framer agency service builds sites that stay on Framer and are set up this way.
