Framer SEO automation

Framer SEO automation: ranking content for a design-first site

AutoSEO writes and optimises the articles, then delivers each one as a signed webhook payload that your handler writes into the Framer CMS.

Try AutoSEO with Framer

Quick answer

How do you publish SEO content to Framer automatically?

AutoSEO delivers each finished article as an HMAC-signed JSON webhook to an endpoint you control, and that endpoint writes the item into your Framer CMS collection. Everything before the publish — keyword research, writing, on-page optimisation, meta, schema and internal linking — is automated; the hand-off into Framer is a handler you wire up once.

How AutoSEO publishes to Framer

The signed webhook. AutoSEO POSTs the article as HMAC-signed JSON — title, slug, HTML body, excerpt, meta title and description, canonical, keywords, hero image, structured data and a stable external ID — to an HTTPS endpoint you run. That handler holds your Framer credentials and creates the CMS item, which keeps your Framer access on your side rather than ours.

Automated

  • Keyword research, writing and on-page optimisation
  • Meta, Open Graph and structured data generated with the article
  • Signed delivery with a delivery log and a stable external ID
  • Refresh cycles that reuse the external ID so items update rather than duplicate

Still needs a human

  • Building the handler that writes into your Framer CMS collection (once)
  • Designing the CMS collection and its template
  • Framer site settings: robots.txt, redirects, custom code

Step-by-step setup lives in the Framer setup guide.

Where Framer sites get stuck

Fast, beautiful sites that never accumulate any ranking content
Copy work crowding out the design iteration you actually enjoy
CMS items published without meta descriptions or OG tags
No research step, so posts target phrases nobody searches

What automation changes

Signed delivery of finished articles to a handler that writes your CMS collection
Meta title, description, OG fields and schema generated with the article
Keyword research and topic planning before a word is written
Decay detection so older posts get refreshed rather than forgotten

What's genuinely different about SEO on Framer

Generic SEO advice fails on Framer for platform-specific reasons. These are the ones that actually change what you should do.

Framer is fast — that is not the ranking problem

Framer sites tend to score well on performance out of the box, which means Core Web Vitals is rarely the constraint. The constraint is almost always that there are twelve pages and no ongoing publishing.

The CMS collection defines what you can fill

A Framer collection only holds the fields you created. If you want meta descriptions, OG images and author references populated automatically, those fields have to exist on the collection and be bound in the template first.

Design systems make consistency free

Once the collection template is right, every article published afterwards inherits correct headings, spacing and schema binding. Getting the template right once is worth more than editing posts individually.

GEO on Framer: getting cited by AI answer engines

Generative engine optimisation is a different job from ranking. An answer engine lifts a passage and decides whether to credit a source — so the questions that matter on Framer are whether AI crawlers can read the page, whether you control what they're told, and whether the page carries attribution they can resolve.

Can AI crawlers read a Framer page?
Framer publishes pre-rendered pages, so AI crawlers get the article text in the initial HTML response.
Crawler control: robots.txt and llms.txt
Framer exposes robots.txt editing in its site settings, so you can allow or block individual AI crawler user-agents there. Check what your plan allows for additional root-level files before planning an /llms.txt around one.
FAQ and Article schema
Add FAQ or Article JSON-LD through Framer's custom code on the CMS template, bound to collection fields so the markup always matches what a reader sees.
Byline and dates — the real blocker
Add an author field to the collection and render the byline plus published and updated dates on the template. Design-led sites omit this more often than any other category, and it is the main reason their content goes uncited.

The pattern across every platform is the same: content quality is rarely what stops a citation — missing attribution is. Check what an engine can currently see with the free SEO tools, or read the SEO automation overview.

The Framer SEO playbook

What is Framer SEO automation?

Framer SEO automation means running the recurring parts of SEO — keyword research, article writing, on-page optimisation, publishing and tracking — as a scheduled system rather than as manual work. On Framer specifically it also means working with the platform's own constraints, starting with the one most sites hit first: Fast, beautiful sites that never accumulate any ranking content. What it does not mean is removing judgement — the decisions about what to sell, what to claim and what to say stay with you.

How do you improve SEO on Framer?

Publish keyword-targeted content on a cadence you can actually sustain, fix the on-page basics on what you already have (titles, meta descriptions, internal links, schema), and measure both search rankings and AI citations. AutoSEO runs all three on Framer: it researches winnable keywords, writes and optimises the article, delivers it via a signed webhook to an endpoint you control, and tracks what happens next.

The recurring Framer SEO mistakes

  • Fast, beautiful sites that never accumulate any ranking content.
  • Copy work crowding out the design iteration you actually enjoy.
  • CMS items published without meta descriptions or OG tags.
  • No research step, so posts target phrases nobody searches.

What a working Framer system looks like

  • Signed delivery of finished articles to a handler that writes your CMS collection.
  • Meta title, description, OG fields and schema generated with the article.
  • Keyword research and topic planning before a word is written.
  • Decay detection so older posts get refreshed rather than forgotten.
Manual Framer SEO vs automated
Manual on FramerAutoSEO
Keyword researchOccasional, when someone has timeScheduled, before every article
WritingIn-house hours or a freelancerAI-drafted, reviewed as much or as little as you want
Getting it into FramerCopy, paste, format, fixSigned delivery to your endpoint
Meta, schema, internal linksRemembered sometimesApplied to every article
Refreshing old contentRarely — nothing prompts itDecay detection flags it
Rank + AI-visibility tracking
Ongoing costWriters and tools billed separatelyOne subscription — see pricing

Key takeaways

  • Framer can rank as well as any platform. The gap is a sustained content and on-page system, not the CMS.
  • On Framer the publish step is a signed webhook to an endpoint you control, not a direct API write.
  • For AI citation on Framer, attribution beats volume: a visible byline, a published date and an updated date matter more than another thousand words.
  • Automation removes the recurring work, not the judgement — you still decide cadence, claims and what gets reviewed.

How Framer Sites Are Structured for SEO

Framer publishes sites as server-side rendered (SSR) React applications hosted on Framer's global CDN. Every published page ships pre-rendered HTML to the browser, which means search engine crawlers receive full content on the first HTTP response — no JavaScript execution required to index your text, headings, or links. This architecture gives Framer a meaningful crawlability advantage over purely client-side React frameworks where content arrives only after JavaScript runs.

Each Framer project maps to a custom domain or a framer.app subdomain. Pages are organized in the left-panel sitemap inside the Framer editor. The hierarchy you build there — parent pages and nested child pages — directly determines your URL structure and the internal link graph that crawlers follow. A page nested under a parent automatically inherits a path segment: /parent/child. Flat pages sit at the root: /page-name.

Framer also supports CMS Collections, which generate dynamic pages from structured content. Each collection item produces its own crawlable URL using a slug field you define. These dynamic pages are fully SSR-rendered just like static pages, so they are indexable without any additional configuration.

Exact Technical SEO Levers Inside Framer

Framer exposes a focused but sufficient set of technical SEO controls. Knowing exactly where each control lives and what it does prevents the most common configuration errors.

URL Slugs and Site Structure

Every page in Framer has a slug field accessible in the page settings panel (click the page name in the left panel, then open the gear icon). The slug becomes the URL path segment. Rules that matter for SEO:

  • Use lowercase letters, hyphens as word separators, and no trailing slashes — Framer handles trailing-slash redirects automatically.
  • Keep slugs short, descriptive, and keyword-relevant. /seo-services-new-york outperforms /page-3 or /untitled.
  • CMS Collection slugs are set per item in the slug field of the collection. If you leave it auto-generated from the title, check that special characters and stop words are stripped.
  • Changing a slug after publishing creates a broken URL unless you add a redirect. Framer supports 301 redirects under Site Settings → SEO → Redirects. Add the old path and the new destination before republishing.

Metadata: Title Tags and Meta Descriptions

Title tags and meta descriptions are set per page in Page Settings → SEO. For CMS-driven pages, Framer allows dynamic metadata using collection field bindings — you can bind the title tag to a CMS field called "SEO Title" so every collection item gets a unique, populated title automatically.

  • Title tag recommended length: 50–60 characters. Framer does not enforce a character limit, so you must count manually or use a preview tool.
  • Meta description recommended length: 120–155 characters. Write it as a direct summary of the page's value; it influences click-through rate even though it is not a direct ranking factor.
  • Framer also exposes Open Graph fields (OG title, OG description, OG image) in the same SEO panel. Set a custom OG image at 1200×630 px for every key page. If left blank, Framer may fall back to a generic image or none at all.

Canonical Tags

Framer automatically generates a self-referencing canonical tag on every published page pointing to the page's own URL. You cannot manually override the canonical URL through the standard Framer UI on most plans. This means if you syndicate content from your Framer site elsewhere, the canonical signal originates from Framer's auto-generated tag — which is correct behavior. If you need custom canonical logic, it currently requires injecting a custom canonical tag via Site Settings → General → Custom Code → Head and suppressing the automatic one, which is only reliable on plans that allow full custom code injection.

Sitemaps

Framer auto-generates an XML sitemap at yourdomain.com/sitemap.xml the moment you publish. The sitemap includes all pages that are not marked noindex. CMS collection pages are included automatically once the collection is published. You do not need a plugin or third-party tool to generate the sitemap.

What Framer's sitemap does not do automatically: set custom lastmod dates, assign priority values per page, or exclude specific pages beyond the noindex toggle. For most sites this default sitemap is sufficient. Submit it in Google Search Console → Sitemaps immediately after launch.

Robots.txt and Noindex Controls

Framer generates a robots.txt file automatically at /robots.txt. It references the sitemap and allows all crawlers by default. You can append custom directives under Site Settings → SEO → Robots.txt. Use this to block crawlers from staging paths, thank-you pages, or internal search result URLs that have no indexing value.

Individual pages can be set to noindex via the toggle in Page Settings → SEO → Search Engine Visibility. Turning this on injects a noindex, nofollow meta robots tag and removes the page from the auto-generated sitemap simultaneously — both actions happen together, which is the correct behavior.

Schema Markup and Structured Data

Framer has no native UI for adding JSON-LD schema. The correct method is to paste your JSON-LD script block into Page Settings → Custom Code → Head for page-specific schema, or into Site Settings → General → Custom Code → Head for sitewide schema such as Organization or WebSite. Useful schema types for Framer sites include:

  • Organization — sitewide, establishes brand entity signals
  • WebPage or WebSite — sitewide, enables Sitelinks Searchbox eligibility
  • Article or BlogPosting — per CMS blog post page
  • Product — for product landing pages or SaaS pricing pages
  • FAQPage — for pages with question-and-answer sections
  • LocalBusiness — for location-based service businesses

Validate all schema using Google's Rich Results Test after publishing. A common error is pasting schema into the Body code section instead of Head — both locations work for Google parsing, but Head placement is the standard convention and avoids render-blocking concerns.

Page Speed and Core Web Vitals

Framer's hosting infrastructure handles most performance fundamentals automatically: HTTP/2 delivery, Brotli compression, and a global CDN with edge nodes. Images uploaded directly to Framer are served in modern formats (WebP/AVIF) with automatic resizing. However, several speed issues are entirely within your control:

  • Oversized images: Upload images at the largest display size you need. Uploading a 6000 px wide image for a 600 px thumbnail wastes bandwidth even with Framer's resizing, because the original file still transfers before resizing occurs client-side in some configurations.
  • Third-party scripts: Every embed — analytics, chat widgets, heatmap tools — added via custom code adds network requests. Load non-critical scripts with defer or async attributes inside the custom code panel.
  • Custom fonts: Framer loads Google Fonts via its own optimized pipeline. If you upload custom font files, ensure you upload WOFF2 format only and limit font weights to those actually used on the page.
  • Animations: Heavy scroll-triggered animations and large Lottie files increase Interaction to Next Paint (INP) scores. Test with PageSpeed Insights and Chrome DevTools Performance panel after adding complex interactions.

Most Common Framer SEO Mistakes

The following mistakes appear repeatedly on Framer sites and are directly responsible for poor crawlability, thin indexation, and low rankings.

Mistake What Goes Wrong Fix
Publishing on the framer.app subdomain All authority and backlinks build on Framer's domain, not yours Connect a custom domain before any promotion or link building
Leaving default page titles ("Untitled" or page slug only) Google rewrites titles; CTR drops; no keyword targeting Write a unique, keyword-relevant title for every page before publishing
No 301 redirects after slug changes Old URLs return 404; crawl budget wasted; backlinks broken Add redirects in Site Settings before republishing changed slugs
CMS slugs left as auto-generated IDs URLs like /blog/a1b2c3 carry no keyword signal Add a dedicated SEO Slug field to every CMS collection and populate it
Noindex left on after moving from staging Site is invisible to Google; no pages appear in search results Check Site Settings → SEO → Search Visibility before launch
Missing alt text on images Image search traffic lost; accessibility failures; crawl signals weakened Fill the Alt Text field on every content image in the Framer image panel
Embedding all content in frames or components with no text layer Crawlers see empty pages; headings and body copy are not in the DOM Use native Framer text elements for all primary content; reserve embeds for decorative or interactive elements only
No sitemap submission to Search Console Discovery relies entirely on crawl; new pages indexed slowly Submit yourdomain.com/sitemap.xml in Google Search Console on day one

The Framer-Specific Heading Hierarchy Problem

Framer's design-first interface makes it easy to style any text element to look like a heading without assigning it the correct HTML heading tag. A large bold text block styled to appear as an H1 may actually be set to Paragraph in the text element's tag dropdown. Crawlers read the tag, not the visual size. Check every page by opening Chrome DevTools → Elements and confirming that your primary page heading uses an h1 tag, section headings use h2, and subsections use h3. In Framer, change the tag by selecting the text element, opening the right panel, and changing the Tag dropdown from P to the appropriate heading level.

Step-by-Step SEO Workflow for Framer Sites

Ranking a Framer site requires a repeatable process: research keywords, write optimized content, configure every on-page field inside Framer's CMS, submit pages for indexing, and track performance in a single dashboard. The steps below cover that full cycle, including where AutoSEO plugs in to remove the manual bottlenecks.

Step 1: Keyword Research Scoped to Your Framer Niche

Start with a seed list of five to ten topics your site covers. Feed them into a keyword tool and filter for three criteria: monthly search volume above 100, keyword difficulty below 50, and clear informational or commercial intent. Cluster related terms into topic groups — each cluster becomes one Framer CMS collection item, not ten separate pages.

AutoSEO's research module pulls search volume, difficulty, and SERP features directly from live index data, then groups terms into clusters automatically. You review the clusters, approve them, and move to writing without switching between four different tabs.

Step 2: Write Content Structured for Framer's CMS Fields

Framer's CMS stores content in discrete fields: title, slug, rich text body, SEO title, meta description, and Open Graph image. Write with those fields in mind from the start rather than retrofitting a Word document afterward.

  • Title field: Use the primary keyword near the front, keep it under 60 characters.
  • Rich text body: Open with a concise answer to the search query in the first paragraph. Use H2s for major subtopics and H3s for supporting points. Aim for one internal link every 300 words.
  • SEO title: Can differ from the display title. Add a brand suffix or a differentiating modifier if the display title is already long.
  • Meta description: 140–155 characters, include the primary keyword, end with a clear action phrase.
  • OG image: 1200 × 630 px. Framer renders these at publish time, so design a template in Framer itself and bind the CMS title field to it.

AutoSEO generates a draft for every field — not just the body copy — so the title, meta description, and OG image alt text arrive pre-filled and within spec. You edit, approve, and the content is ready to push.

Step 3: Configure On-Page SEO Inside Framer

Framer surfaces SEO controls at two levels: the page level (Settings → SEO) and the CMS collection level. Work through this checklist for every published page.

  1. Canonical URL: Framer sets this automatically to the published domain, but verify it points to the primary domain, not a staging subdomain like yoursite.framer.website.
  2. Robots tag: Leave as index, follow for all public pages. Set noindex on thank-you pages, internal search results, and duplicate filter pages.
  3. Structured data: Framer does not inject schema automatically. Add JSON-LD via a custom code embed in the page's Head section. For blog posts, use Article schema; for product pages, use Product schema.
  4. Image alt text: Framer's image component has an alt field. Fill it for every image — decorative images get an empty alt attribute, not a skipped field.
  5. Heading hierarchy: Framer lets you set any text element to any heading level. Confirm each page has exactly one H1 (the CMS title), then H2s and H3s in logical order. Use the browser's accessibility inspector to audit.
  6. Internal links: Use Framer's rich text link tool to link to related CMS items. Avoid generic anchor text like "click here"; use descriptive phrases that include the target page's keyword.
  7. Page speed: Enable Framer's built-in image optimization and lazy loading. Avoid embedding heavy third-party scripts in the global head unless they are critical.

Step 4: Publish to Framer and Submit for Indexing

Publishing in Framer is one click, but indexing is a separate action. After publishing, open Google Search Console, navigate to URL Inspection, paste the new page URL, and request indexing. For sites publishing more than a few pages per week, submit an updated XML sitemap instead — Framer generates a sitemap automatically at yourdomain.com/sitemap.xml.

AutoSEO connects to Search Console via API and triggers indexing requests immediately after each page publishes to Framer. It also pings the IndexNow endpoint, which notifies Bing and other participating engines simultaneously. Pages that would otherwise wait days in a crawl queue are typically indexed within hours.

Step 5: Track Rankings and Iterate

Connect Framer's published domain to Google Search Console and Google Analytics 4. In Search Console, monitor the Performance report filtered by page to see which CMS items are gaining impressions and clicks. Sort by impressions descending to find pages with high visibility but low click-through rate — those need a stronger SEO title or meta description.

In AutoSEO's tracking dashboard, every approved keyword cluster shows current rank, rank change over 30 days, impressions, and clicks pulled from Search Console. When a page drops more than five positions, AutoSEO flags it for a content refresh and pre-fills a suggested update based on current SERP analysis. You approve the update, it publishes to the Framer CMS via API, and the indexing request fires automatically.

Workflow Stage Manual Framer Method With AutoSEO
Keyword research Multiple tools, manual clustering Automated clustering, one approval step
Content writing Write, then map to CMS fields All CMS fields pre-filled at generation
Publishing Manual Framer publish button Triggered via Framer CMS API
Indexing Manual Search Console submission Automatic GSC + IndexNow ping
Rank tracking Search Console + spreadsheet Unified dashboard with refresh alerts

Frequently Asked Questions: SEO on Framer

The answers below address the most common technical and strategic questions from Framer users working to improve organic search performance.

Does Framer generate clean HTML that search engines can crawl?

Yes. Framer renders pages as static HTML at publish time, which means Googlebot and other crawlers receive fully rendered content without needing to execute JavaScript first. This is a meaningful advantage over purely client-side frameworks. The HTML output includes proper semantic tags when you use Framer's heading, paragraph, and list components correctly. The main risk is using generic div or text elements with visual styling instead of semantic heading components — that produces visually correct pages that are structurally flat for crawlers.

Can Framer handle large CMS collections without hurting SEO?

Framer CMS collections scale to thousands of items, and each item publishes as a static page with its own URL, meta tags, and sitemap entry. SEO performance at scale depends on content quality, not collection size. The practical risk is publishing thin or duplicate CMS items — for example, location pages or product variants with near-identical body text. Each item needs unique, substantive content to avoid crawl budget waste and duplicate content signals.

How do I add schema markup to a Framer page?

Framer does not have a native schema builder, so you add JSON-LD manually. Open the page settings, go to the Custom Code section, and paste your JSON-LD script block in the Head field. For CMS-driven pages, you cannot dynamically bind CMS field values to a static code embed, so you have two options: write a generic schema block that applies to all items in the collection, or use a third-party script injected via Framer's site-wide head code that reads page metadata and builds schema dynamically. AutoSEO generates and injects Article or Product schema per CMS item through the API, which removes this limitation.

What is the correct way to set canonical URLs in Framer?

Framer sets canonical tags automatically based on your published custom domain. The most common mistake is publishing before connecting a custom domain — pages published under the default yoursite.framer.website subdomain get canonicalized to that subdomain. If you later connect a custom domain, Framer updates the canonical, but any links or indexed URLs pointing to the subdomain create a redirect chain. Always connect your custom domain before publishing content intended for indexing.

Why are my Framer pages not appearing in Google after publishing?

Publishing in Framer makes a page publicly accessible, but it does not notify Google. Google discovers pages through sitemap crawling or direct URL submission. Framer generates a sitemap automatically, but Google may take days or weeks to recrawl it. For faster indexing, submit the URL directly in Google Search Console using the URL Inspection tool and click Request Indexing. If you publish frequently, submit your sitemap URL in Search Console's Sitemaps section so Google recrawls it on a regular schedule. AutoSEO automates this submission step immediately after each Framer publish.

How should I structure internal links across a Framer CMS site?

Internal links in Framer CMS work best when you treat your collection as a topic cluster. Identify one high-authority pillar page per topic and link to it from every related collection item. Within the rich text body of each item, link out to two or three closely related items using descriptive anchor text. Avoid linking every page to every other page — that dilutes link equity and makes your site structure harder for crawlers to interpret. Framer's rich text editor supports inline links; use those rather than adding a separate related posts section that only appears visually.

Does Framer support hreflang for multilingual SEO?

Framer does not have a built-in hreflang manager. If you run multilingual content — either through separate Framer projects per language or through CMS collections with language variants — you need to add hreflang link tags manually in the page head. The correct implementation uses link rel="alternate" hreflang="[language-code]" tags pointing to each language version, including a self-referencing tag for the current page. This is most reliably done through a site-wide script in Framer's global head code that reads the current URL and outputs the appropriate hreflang set.

Is Framer fast enough to meet Google's Core Web Vitals thresholds?

Framer sites routinely pass Core Web Vitals when configured correctly. The static output, built-in CDN, and automatic image optimization handle the heaviest performance factors. The most common causes of failure are embedding large third-party scripts — chat widgets, video players, analytics suites — in the global head without deferring them, and using full-resolution images in hero sections without enabling Framer's responsive image settings. Run PageSpeed Insights on your published Framer URL rather than the editor preview, since the editor loads additional tooling that inflates load times and does not reflect the production experience.

Framer SEO automation — frequently asked

How do I connect Framer to AutoSEO?

Framer connects with a webhook URL you own + a shared secret for the HMAC signature. AutoSEO signs and delivers the finished article; the endpoint that places it in Framer is one you control.

Will AutoSEO change my existing Framer content?

Only what you ask it to. New articles are delivered on the cadence you choose — as drafts for review, or published straight away. Existing pages are audited and surfaced as recommendations first; nothing is rewritten in place until you turn that on.

How long until SEO automation shows results on Framer?

It depends on the domain, not the platform. An established site with existing authority usually sees movement on long-tail queries within weeks; a new domain in a competitive niche takes considerably longer. Publishing consistently is what compounds — which is the part automation actually fixes.

What does AutoSEO cost for a Framer site?

Plans are per site with volume discounts as you add more, and there is a trial. Current numbers are on the pricing page rather than repeated here, so they cannot go stale.

Can I keep my current Framer SEO tools?

Yes. AutoSEO is built to sit alongside what you already run rather than take over the page head — on WordPress it writes into your existing SEO plugin's fields instead of adding a competing set of tags, and on every platform it leaves the platform's own SEO settings alone.

Do I have to give AutoSEO my Framer account?

No. The handler you build holds your Framer credentials; AutoSEO only sends a signed payload to your endpoint. That is a smaller blast radius than handing over platform access.

How hard is the handler to build?

It is a single HTTPS endpoint that verifies an HMAC signature and creates a CMS item. The webhook guide in the docs covers the payload shape and signature verification.

Keep reading

Other platforms

Automate the recurring SEO work on Framer

Works alongside your existing Framer setup. See pricing for plans and the trial.

Connect Framer