---
title: "Webflow to Astro: How to Migrate a Webflow Site — Dardo"
description: "Webflow's code export skips CMS content, forms and locales. How to move a Webflow site to Astro: what to export, what to rebuild and how to keep SEO."
url: "https://dardo.studio/en/blog/webflow-to-astro/"
language: "en"
translations: {"es":"https://dardo.studio/es/blog/migrar-de-webflow-a-astro/","fr":"https://dardo.studio/fr/blog/migrer-webflow-vers-astro/","de":"https://dardo.studio/de/blog/webflow-zu-astro-migrieren/","it":"https://dardo.studio/it/blog/migrare-da-webflow-ad-astro/","pt":"https://dardo.studio/pt/blog/migrar-de-webflow-para-astro/","nl":"https://dardo.studio/nl/blog/webflow-naar-astro/","sv":"https://dardo.studio/sv/blogg/migrera-webflow-till-astro/","pl":"https://dardo.studio/pl/blog/migracja-z-webflow-do-astro/","uk":"https://dardo.studio/uk/blog/webflow-to-astro/","ru":"https://dardo.studio/ru/blog/webflow-to-astro/","ar":"https://dardo.studio/ar/blog/webflow-to-astro/","hi":"https://dardo.studio/hi/blog/webflow-to-astro/","th":"https://dardo.studio/th/blog/webflow-to-astro/","ja":"https://dardo.studio/ja/blog/webflow-to-astro/","ko":"https://dardo.studio/ko/blog/webflow-to-astro/","zh-Hans":"https://dardo.studio/zh-Hans/blog/webflow-to-astro/","zh-Hant":"https://dardo.studio/zh-Hant/blog/webflow-to-astro/"}
updated: "2026-10-13T02:13:41.010Z"
---

[Blog](https://dardo.studio/en/blog/)

# Webflow to Astro: how to migrate a Webflow site without losing content, design or rankings

Webflow's code export leaves out the CMS, forms, search and localized pages. What to take out of Webflow, what to rebuild in Astro and how to keep rankings.

By [Nicolás Cerón](https://dardo.studio/en/studio/) ·October 12, 2026

![An old stone canal lock at night, its wooden gates open as a small crimson boat glides out of a fast-flowing canal into a calm harbour, with a lit observatory on the hill above.](https://dardo.studio/_astro/01M4SGD5R7TZ48H2M3RJ9DSK7D_Z2nrI.webp)

## Key takeaways

- Webflow exports HTML, CSS, JavaScript and images on paid Workspace plans, but not CMS content, form processing, site search, password protection or secondary locales.
- Export each CMS Collection to CSV, once per locale, or read it through the Webflow Data API, and download every image: exported image fields still point at Webflow's hosting.
- Treat the code export as a reference, not the new site: it ships Webflow's JavaScript, jQuery and empty Collection lists.
- Webflow serves URLs without a trailing slash; set Astro's trailingSlash and build.format to match, and add 1:1 server-side 301s for anything that changes.
- Before closing the Webflow project, check that no image, PDF or Open Graph image is still served from website-files.com.

## The short answer

Webflow is easier to leave than Framer, which has no HTML export at all, but only part of the way. On paid Workspace plans you can export your site's HTML, CSS, JavaScript and images and host them anywhere. Webflow's help center is just as clear about what stays behind: CMS content, form processing, site search, password protection, localized pages and code components aren't in the export, and Collection lists show their empty state ([Webflow Help](https://help.webflow.com/hc/en-us/articles/33961386739347-How-do-I-export-my-Webflow-site-code)).

So moving from Webflow to Astro is part export, part rebuild. You export what Webflow gives you, pull the CMS out as CSV or through the API, rebuild each template as Astro components, replace forms and search, recreate the interactions you want to keep and give every URL that changes a permanent redirect. Done in that order, the new site keeps its design, its content and its rankings.

## Why teams move from Webflow to Astro

Webflow is a strong visual builder, and plenty of marketing teams should stay on it. The reasons to leave are usually about ownership and cost rather than design:

- **The site becomes engineering-owned.** When developers make most changes, a codebase in your own repository is faster to work in than a visual canvas, and it can sit next to your product, your backend and your tests.
- **Plan costs per site.** On Webflow's [pricing page](https://webflow.com/pricing), checked on 13 October 2026, the Basic site plan is USD 15 a month and Premium, the plan with the Webflow CMS, is USD 25 a month, both billed yearly. Localization is an add-on from USD 9 a month.
- **Features that need a real backend:** forms that write to your CRM, gated content, search across more than one site or anything that has to run on your own infrastructure.
- **Exporting doesn't get you out on its own.** Code export needs a paid Workspace plan, not just a site plan, and it leaves out the CMS. A clean exit takes planning either way.

If your marketing team publishes pages visually every week and the site does its job, staying on Webflow is a reasonable choice. A migration should buy something specific.

## What Webflow's code export includes and leaves out

| Part of the site                          | In the code export?                                 | What to do in Astro                            |
| ----------------------------------------- | --------------------------------------------------- | ---------------------------------------------- |
| Static pages                              | Yes, as .html files, primary locale only            | Rebuild as Astro pages and components          |
| Styles                                    | Yes: your site's CSS, webflow.css and normalize.css | Use as a reference; keep only the CSS you need |
| Interactions and components               | Yes, through Webflow's JavaScript files             | Recreate with CSS or a small script            |
| Images in the Assets panel                | Yes                                                 | Optimize them with astro:assets                |
| CMS Collection items and lists            | No; lists show their empty state                    | Export to CSV or read through the API          |
| Form submissions                          | No processing                                       | Point each form at your own endpoint           |
| Site search                               | No                                                  | Add a static search index or a search service  |
| Password protection                       | No                                                  | Protect pages at your host or in your app      |
| Secondary locales                         | No; only the primary locale                         | Rebuild with Astro's i18n routing              |
| Ecommerce, user accounts, code components | No                                                  | Plan each one as its own project               |

Source: Webflow's help article on [exporting site code](https://help.webflow.com/hc/en-us/articles/33961386739347-How-do-I-export-my-Webflow-site-code).

## What we saw inspecting published Webflow sites

On 13 October 2026 we downloaded the homepages of seven sites built with Webflow, including webflow.com itself, and looked at what a migration would have to carry over:

- **All seven load jQuery and their images from Webflow's servers.** Images come from cdn.prod.website-files.com, and Webflow's own help center notes that image and file fields exported to CSV are links to the original project's hosting, which break if that project is deleted ([Webflow Help](https://help.webflow.com/hc/en-us/articles/33961290794771-How-do-I-import-content-into-the-Webflow-CMS)). Every asset has to be downloaded and hosted again.
- **All seven serve their social share image from Webflow too.** The Open Graph image is easy to forget, and link previews on LinkedIn or WhatsApp lose their image once the old project is closed.
- **All seven render their CMS lists directly in the published HTML**, between 3 and 19 Collection lists per homepage. That's good news: unlike a Framer site, which our [Framer to Astro guide](https://dardo.studio/en/blog/framer-to-astro/) shows is rebuilt by a runtime after it loads, a published Webflow page is a complete reference for what content goes where, even though the code export leaves those lists empty.
- **Five of the seven use Webflow Interactions**, marked by data-w-id attributes on up to 109 elements of one homepage. Each one is a small piece of behavior to recreate, or a decision to drop it.

## Webflow to Astro, step by step

1. **Inventory every URL.** Webflow generates /sitemap.xml automatically when that option is on ([Webflow Help](https://help.webflow.com/hc/en-us/articles/33961355371667-Create-a-sitemap-in-Webflow)). Add every Collection page, pull the Pages report from Google Search Console for the longest range available, and export your existing 301 redirects as CSV from Site settings, Publishing ([Webflow Help](https://help.webflow.com/hc/en-us/articles/33961211526291-Import-export-301-redirects)).
2. **Export the content.** Export each CMS Collection to CSV from the CMS panel, once per locale if you use Localize, and keep the Item ID column. The CSV flattens things: reference fields come out as plain text, multi-references as comma-separated text and rich text as HTML. For anything with references, the [Webflow Data API](https://developers.webflow.com/data/reference/cms/collection-items) lists items with their fields and locales, which is usually cleaner than stitching CSV files back together.
3. **Download every asset.** Images, PDFs, fonts you're licensed to self-host, the Open Graph images and the favicon. Don't close the Webflow project until the new site no longer points at website-files.com.
4. **Export the code as a reference.** If you're on a paid Workspace plan, export the HTML and CSS. Don't deploy it as the new site: it would carry webflow.js, jQuery and empty CMS lists. Use it to read exact spacing, breakpoints and class structure.
5. **Model the content in Astro.** Turn each Collection into an Astro [content collection](https://docs.astro.build/en/guides/content-collections/) or a headless CMS model, with references kept as references, then rebuild each template as Astro components and move images to [astro:assets](https://docs.astro.build/en/guides/images/).
6. **Recreate the interactions that carry meaning.** Most Webflow Interactions become CSS transitions, keyframes or a few lines of JavaScript. For heavier motion, GSAP has been free for commercial use since Webflow made it so in April 2025 ([Webflow](https://webflow.com/blog/gsap-becomes-free)). Respect prefers-reduced-motion either way.
7. **Replace forms, search and protected pages.** Give each form a real endpoint (a Cloudflare Worker, a form service or your CRM), add a static search index such as [Pagefind](https://pagefind.app/) if the site needs search, and move any password protection to your host or app.
8. **Rebuild localized pages properly.** Only the primary locale comes out in the code export, so build each language with [Astro's i18n routing](https://docs.astro.build/en/guides/internationalization/), one URL per language, with hreflang between them.
9. **Match the URL format.** Webflow serves pages without a trailing slash and redirects /pricing/ to /pricing. Set Astro's trailingSlash and build.format so the new site produces the same addresses ([Astro configuration reference](https://docs.astro.build/en/reference/configuration-reference/)); every mismatch is a redirect you didn't need.
10. **Redirect at the server, then launch and watch.** A static Astro build without an adapter turns configured redirects into meta-refresh pages, so set 1:1 301s where the site is hosted, for example in a Cloudflare \_redirects file. Switch DNS, keep the Webflow project until the new site is verified, and follow Search Console's indexing reports for the next few weeks. Our [website migration SEO checklist](https://dardo.studio/en/blog/website-migration-seo-checklist/) covers launch day and the 90 days after it.

## What changes after the move

| Area         | On Webflow                                 | On Astro                                             |
| ------------ | ------------------------------------------ | ---------------------------------------------------- |
| Editing      | Visual Designer and the Webflow CMS editor | CMS fields or code, depending on what you choose     |
| Hosting      | Webflow's hosting, billed per site         | Any static host or edge platform, such as Cloudflare |
| CMS          | Webflow Collections                        | Content collections or a headless CMS                |
| Forms        | Webflow form handling                      | Your own endpoint and storage                        |
| Search       | Webflow site search (Premium)              | A static index or a search service                   |
| Localization | Webflow Localize add-on                    | Astro i18n routing, one URL per language             |
| Motion       | Webflow Interactions and GSAP              | CSS and JavaScript you own and can measure           |

## Keeping SEO intact

Google's guidance on [site moves with URL changes](https://developers.google.com/search/docs/crawling-indexing/site-move-with-url-changes) applies here: map every old URL to its closest new equivalent, use permanent server-side redirects and keep them for at least a year. If the URLs stay identical, which a careful rebuild can often achieve with Webflow, you mostly need to check that titles, descriptions, canonical tags, structured data and Open Graph images came across.

The Webflow-specific traps are the leftovers: an Open Graph image or a PDF still served from website-files.com, a webflow.io staging address still indexed, or a CMS page whose slug changed in the move. Check all three before you close the Webflow project.

## How Dardo runs a Webflow migration

We run Webflow moves as part of our [website migration](https://dardo.studio/en/services/website-migration/) service: URL and content inventory, CMS export, a representative page rebuilt first and reviewed at agreed widths, then the rest of the templates, forms and redirects. The build itself is [web development](https://dardo.studio/en/services/web-development/) in Astro, and motion work is [creative development](https://dardo.studio/en/services/creative-development/). This site, dardo.studio, runs on Astro on Cloudflare Workers with its content in a headless CMS, and we write and publish this blog through that CMS.

If you're weighing a move, [send us the site and what you want to change](https://dardo.studio/en/contact/?service=website-migration). We'll tell you whether leaving Webflow is worth it before quoting one.

## Common questions

**Can I export my Webflow site to HTML?**

Yes, on paid Workspace plans: Webflow exports HTML, CSS, JavaScript and images, and you can host them anywhere without attribution. Site plans alone don't include code export, and the export leaves out CMS content, form processing, site search, password protection and secondary locales.

**Does Webflow's code export include CMS content?**

No. Collection lists show their empty state and Collection pages lose the content bound to their fields. Export each Collection to CSV from the CMS panel, or read it through the Webflow Data API, which keeps fields and locales together.

**Will I lose my Google rankings moving from Webflow to Astro?**

Not if every URL that earns traffic keeps working. Keep the same paths, including Webflow's no-trailing-slash format, add permanent 301 redirects for anything that changes, carry over titles, descriptions and structured data, and watch Search Console for a few weeks after launch.

**Do Webflow interactions work in Astro?**

Not as they are. They run on Webflow's JavaScript, so each interaction you keep is rebuilt with CSS or a small script. For heavier motion, GSAP has been free for commercial use since April 2025.

**What happens to Webflow forms after migrating?**

Exported forms don't submit anywhere, because Webflow processes submissions on its own hosting. Point each form at your own endpoint, such as a Cloudflare Worker, a form service or your CRM, test delivery before launch, and export past submissions from Webflow separately.

**Can my team still edit the site without code after leaving Webflow?**

Yes, if the Astro site uses a headless CMS. Editors work in a web interface and the site rebuilds from that content. dardo.studio works this way.

## Sources & further reading

Sources behind this page, with further detail from the original publishers.

- [Webflow Help: How do I export my Webflow site code?](https://help.webflow.com/hc/en-us/articles/33961386739347-How-do-I-export-my-Webflow-site-code) · help.webflow.com
- [Webflow Help: Import and export CMS Collection content](https://help.webflow.com/hc/en-us/articles/33961290794771-How-do-I-import-content-into-the-Webflow-CMS) · help.webflow.com
- [Webflow Help: Import and export 301 redirects](https://help.webflow.com/hc/en-us/articles/33961211526291-Import-export-301-redirects) · help.webflow.com
- [Webflow Help: Create a sitemap in Webflow](https://help.webflow.com/hc/en-us/articles/33961355371667-Create-a-sitemap-in-Webflow) · help.webflow.com
- [Webflow pricing](https://webflow.com/pricing) · webflow.com
- [Webflow Data API: List Collection Items](https://developers.webflow.com/data/reference/cms/collection-items) · developers.webflow.com
- [Webflow: Webflow makes GSAP 100% free](https://webflow.com/blog/gsap-becomes-free) · webflow.com
- [Astro docs: Content collections](https://docs.astro.build/en/guides/content-collections/) · docs.astro.build
- [Astro docs: Images](https://docs.astro.build/en/guides/images/) · docs.astro.build
- [Astro docs: Internationalization (i18n) routing](https://docs.astro.build/en/guides/internationalization/) · docs.astro.build
- [Astro docs: Configuration reference](https://docs.astro.build/en/reference/configuration-reference/) · docs.astro.build
- [Pagefind: static search](https://pagefind.app/) · pagefind.app
- [Google Search Central: Site moves with URL changes](https://developers.google.com/search/docs/crawling-indexing/site-move-with-url-changes) · developers.google.com

[Nicolás Cerón](https://dardo.studio/en/studio/)

Nicolás Cerón is the founder of Dardo, a brand, web design and development studio in Bogotá, Colombia.

## Related articles

- [**Framer to Astro: how to move a Framer site without losing its design or rankings**Framer has no HTML export, so moving to Astro is a rebuild. What to capture first, what breaks, and how to keep the design, URLs and rankings.](https://dardo.studio/en/blog/framer-to-astro/)
- [**Website migration SEO checklist: change platforms or domains without losing rankings**Rankings rarely drop because of the new platform; they drop because URLs that earned traffic stopped answering. A checklist from URL inventory to day 90.](https://dardo.studio/en/blog/website-migration-seo-checklist/)
- [**WordPress to Astro: how to migrate a WordPress site, headless or all the way, without losing rankings**Two ways to move from WordPress to Astro, what to export, how to keep Yoast titles, permalinks and uploads, and the WordPress URLs most migrations forget.](https://dardo.studio/en/blog/wordpress-to-astro/)
- [**WordPress or a custom website? How to choose, and when each one pays off**When WordPress is the right choice, when a custom site pays off, and the middle path of headless WordPress, compared on cost, speed, updates and ownership.](https://dardo.studio/en/blog/wordpress-vs-custom-website/)

## Keep exploring.

- [Service · **Website migration without losing SEO**](https://dardo.studio/en/services/website-migration/)

- [Your project · **Start a conversation**](https://dardo.studio/en/contact/)
