FNJ

Framer to HTML on Cloudflare Pages: Deploy and Connect Your Domain

A step-by-step path from an FNJ HTML ZIP to Cloudflare Pages, with preview testing, custom-domain setup, redirects, and post-launch checks.

PublishedOctober 8, 2026
Read time4 min
Written byFNJ team
All posts ↗

You can host a Framer-to-HTML export on Cloudflare Pages by uploading the static files, testing the pages.dev preview, and then attaching your domain. No Next.js build is needed for the HTML bundle. The important part is checking paths, forms, and search metadata before the DNS change.

This guide is for the Framer to HTML converter output: HTML, CSS, JavaScript, and assets. A Framer to Next.js project is a different deployment type and should not be uploaded as unbuilt source files to a static Pages project.

1. Export and inspect the bundle

Convert the published Framer URL and download the HTML ZIP. Extract it and find the folder whose top level contains index.html. That is the folder you want Cloudflare to serve. If you upload an extra wrapper folder, the public root may not contain index.html and the homepage can fail even though the deployment succeeds.

Before uploading, count the generated HTML pages against the public routes on your original site. Open the bundle's nested page folders and note any path that has changed. Static files can preserve your design and much of the responsive layout, but forms, CMS updates, custom scripts, and complex interactions still need testing on the new host. Use the independence audit before turning off the original service.

2. Create a Cloudflare Pages preview

For a one-off upload, Cloudflare's Direct Upload instructions say to open Workers & Pages → Create application → Get started → Drag and drop your files. You can upload a ZIP or a single folder there. Cloudflare gives the project a pages.dev URL after deployment. Inspect that preview before connecting your domain.

If you prefer the CLI, Cloudflare documents this flow:

npx wrangler login
npx wrangler pages project create
npx wrangler pages deploy ./site-files

Replace ./site-files with the folder containing index.html. Wrangler accepts a folder, not the ZIP. Cloudflare's dashboard drag-and-drop accepts a ZIP or folder. For repeatable updates, keep your export and deployment process in version control rather than manually uploading an unknown bundle each time.

3. Test the preview URL like a customer

Open the pages.dev homepage and at least one direct nested URL. Refresh a nested page to make sure its route resolves without first loading /. On a narrow phone viewport, open and close the navigation and inspect sticky elements. Check images, fonts, video, the 404 page, and important calls to action. Send a synthetic form submission and verify it reaches the right inbox or service.

Use Developer Tools → Network to find 404s and unexpected external requests. A page can render while a lazy-loaded image, video, or third-party widget fails further down. If you see a broken nested path, inspect the exported folder structure and the exact URL before adding a rewrite. Do not hide a missing page by sending every request to the homepage.

4. Attach the real domain

Cloudflare's custom-domain instructions say to open the Pages project, choose Custom domains → Set up a domain, and enter the domain. Do this through the Pages project before changing DNS: Cloudflare notes that adding only a manual CNAME, without associating the domain in Pages, can fail. For an apex domain, the zone must use Cloudflare nameservers; a subdomain can use a CNAME at another DNS provider.

Keep the old site available during the transition. If the public URLs remain identical, Google treats this primarily as a hosting move. If URLs change, create a one-to-one redirect map and follow Google's URL-change migration guidance. Check the live page's title, description, canonical, Open Graph image, sitemap, and robots rules after the domain is attached.

5. Watch the first days after launch

Open important pages from the real domain, not only from pages.dev. Test the homepage, contact path, nested pages, and any older URLs that should redirect. Check Search Console for crawl or indexing errors, and monitor form delivery and analytics. Leave the old host running until you are confident the new site is serving real traffic and its remaining external dependencies are understood.

Cloudflare Pages is a convenient place to serve the static bundle. It does not turn an exported form into a new backend or replace a live CMS automatically. If those features matter, connect their replacements before launch. Start with the Framer to HTML converter, then use the preview URL as your release gate.

#Framer to HTML#Cloudflare Pages#deployment

Convert your Framer site next

Takes about a minute, and you can preview the result before deploying.

Convert your site →
Up nextFramer to HTML: How to Check Whether Your Export Works Without Framer

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.