FNJ

Own Your Framer Site as Real Next.js Code

Paste a published Framer URL and get a real, deployable Next.js App Router project — one statically-prerendered route per page that renders identically to the original, animations included. Stop paying for Framer hosting and own the code instead.

Loading converter…

Why real Next.js code, not just faster hosting

Own the code, not a subscription

No more monthly Framer hosting fee, no editor lock-in. Deploy the project to your own Vercel or Netlify account and it's genuinely yours from that point on.

Accessibility fixed automatically

Framer's own export always ships without html[lang], iframe titles, a main landmark, or accessible names on icon-only links. This conversion fixes all four — measured improving on 10/10 real templates we tested.

Deploy anywhere, extend forever

A real package.json, tsconfig, and App Router project — open, editable, and portable to any host that runs Next.js, not tied to this tool after you download it.

Prefer the terminal? There's a CLI

The same converter as an npm package — works from your published Framer URL, no login here either. One command writes the full Next.js project to disk (or the runtime-stripped static bundle with --mode hybrid):

npx framer-to-nextjs https://your-site.framer.website

Free on npm — scriptable in CI, Makefiles, or a nightly rebuild job.

How to convert Framer to Next.js

  1. 1Publish your Framer site

    Make sure the site is live on a public URL, like https://your-site.framer.website or a custom domain.

  2. 2Paste the URL and convert

    The converter discovers every page and generates one prerendered Next.js route per page — no plugin or code needed.

  3. 3Download the project

    Get a complete Next.js App Router project as a .zip: run npm install && npm run build and it's ready.

  4. 4Deploy anywhere

    Push it live to Vercel or Netlify in one click, or deploy through your own pipeline like any Next.js app.

Convert Framer to Next.js — FAQ

Does Framer officially support Next.js export?+

No. Framer has no built-in code export — published sites stay on Framer's hosting. This converter fills that gap: it turns your published Framer site into a real Next.js App Router project you own and can deploy anywhere.

What exactly do I get from the Next.js export?+

A complete, deployable Next.js project: your sections as named React components under src/sections, one view per Framer page under src/views, an App Router route per page, plus package.json, tsconfig, and config. Run npm install && npm run build and it deploys like any Next.js app.

Do my Framer animations and interactions still work?+

Yes — exactly, because each page keeps Framer's own runtime and CDN assets intact. The Next.js project just wraps and serves the original page verbatim, so every animation, hover, and interaction behaves identically to the source instead of being approximated.

Do I need my Framer login or an API key?+

No. Only the public published URL is needed — no Framer account access, no Framer API key, no plugin, nothing to install. You do sign in to an account here so your conversions are saved to your dashboard, but that's an account with us, never with Framer.

Are SEO meta tags, Open Graph, and canonicals preserved?+

Yes. Each exported page keeps its title, description, and Open Graph tags. The Hybrid (HTML) mode additionally rewrites canonicals to your new domain and runs a full SEO pass.

Can I host the export on Vercel, Netlify, or Cloudflare?+

Yes. It's a standard Next.js project, so it deploys to Vercel or Netlify in one click from this tool (or anywhere Next.js runs, including Cloudflare). You can also download the .zip and use your own pipeline.

Next.js export vs HTML export — which should I choose?+

Choose Next.js when you want a real Next.js App Router project — package.json, TypeScript config, npm install && npm run build — with your page split into editable React components that still render every animation and interaction exactly as authored. Choose the HTML export when you want plain static files with zero framework, or when maximum Lighthouse score matters more than fidelity, since that mode strips Framer's runtime and rebuilds for speed. You can run both and compare.

Is exporting my Framer site legal?+

Yes, for your own site. The converter only works with public published URLs, and you should only convert sites you own or have permission to export. It never bypasses logins or accesses private drafts.

Is this an official Framer export tool, or affiliated with Framer?+

No. This is an independent, third-party developer tool — it isn't affiliated with, endorsed by, or sponsored by Framer. Framer has no official code export; this fills that gap using each site's own public published URL.

How long does the conversion take?+

Usually under a minute. Multi-page sites are discovered and converted automatically; larger sites can take a few minutes.

Is it free?+

No — converting needs a plan, from $15/month at launch, and there is no free tier or pay-as-you-go. What costs nothing is everything after: the exported project is yours to keep, and a static host like Cloudflare Pages can serve it free with no bandwidth cap. There are no per-site fees.

Will this make my site faster?+

Not necessarily, and we'd rather tell you that upfront than oversell it. This export keeps Framer's own runtime intact so animations and interactions stay exactly as authored — which means it carries over the same JS/image weight the original had. We tested this directly across 10 real templates and published the honest results. If maximum Lighthouse score matters more than pixel-perfect fidelity for your site, use the Hybrid HTML export instead, which strips the runtime and rebuilds for speed.

Is there a CLI or npm package?+

Yes. Run npx framer-to-nextjs <your-framer-url> in a terminal and the same converter writes the full Next.js project straight to disk — or the runtime-stripped static bundle with --mode hybrid. It works from a published Framer URL you own or are authorized to convert, with no login or plugin, and being a normal npm package, it's scriptable in CI or a nightly rebuild job.

Is the generated code clean, hand-editable React components?+

Yes. Each page is split into named React component files — Hero.tsx, Pricing.tsx, Footer.tsx — taken from the section names you already gave them in Framer, composed by one page file per route. This genuinely used to be impossible: decomposing the markup broke Framer's runtime hydration, and we said so here for a long time. What changed is the cause, not a workaround — Framer's hydration markers turned out to be ordinary React Suspense boundaries, so once each pair becomes a real boundary the components re-render the original DOM exactly. On the sites we've measured, every element matches the source: 100% parity, animations and interactions included. To be clear about what it is: your own markup organised into files you can read, edit, and diff — not a hand-written rewrite. Framer's runtime and its inline styles come across as authored, so treat this as fidelity plus editability, not as a performance rebuild.

More on the components question above: why the export isn't pre-split into components, and how to refine it into clean ones with Cursor or Claude Code.

Ready to convert your website?

Paste your published Framer URL to generate a production-ready project in minutes.

Example: https://your-site.framer.websiteYour published site’s address — the one visitors see. A custom domain works too.