---
title: "HubSpot CMS to Webflow Migration: What Moves and What Breaks"
description: "Moving from HubSpot CMS to Webflow: what the export gives you, HubDB vs Collection limits, and the form rules that can silently drop your CRM data."
author: "Ognjen Martinovic"
datePublished: 2026-09-28
dateModified: 2026-09-30
readTime: "9 min"
canonical: https://www.flowhivedigital.com/insights/hubspot-cms-to-webflow-migration
---

# HubSpot CMS to Webflow Migration: What Moves and What Breaks

**Key takeaways**

- A HubSpot CMS to Webflow migration is really three jobs: moving the content (pages, blog, HubDB tables), rebuilding the templates (HubL templates and modules have to be rebuilt), and keeping every form and tracking event wired to the HubSpot CRM you are keeping.
- HubSpot's own export gives you HTML for pages and posts, CSV for blog data and CSV for each HubDB table. Webflow Premium ($25/mo billed yearly) takes 20,000 CMS items across 40 Collections, so size your HubDB tables against that before you promise anyone a date.
- The native Webflow-form route into HubSpot runs on HubSpot's non-HubSpot forms tool, which ignores hidden fields and maps only to single-line text properties. For lead forms that drive routing and lifecycle stages, embed a HubSpot form or use the Forms API instead.

Moving from HubSpot CMS to Webflow means moving the website and keeping the CRM. The pages, blog and HubDB tables export cleanly: HTML for pages and posts, CSV for blog data and for each table. The HubL templates and modules come out as files Webflow cannot run, so they are rebuilt as Webflow components. What actually decides whether the move succeeds is the part most migration guides give a paragraph: every form, tracking script and smart-content rule that currently talks to the CRM has to keep talking to it from a site HubSpot no longer hosts.

This guide is the inventory we would build before quoting a HubSpot CMS to Webflow migration: where each HubSpot object lands, what the export actually gives you, the form rules that silently drop data, and the short list of things with no Webflow equivalent. Every limit below was read from HubSpot's knowledge base and developer docs and from Webflow's pricing page on 28 September 2026.

## The HubSpot CMS to Webflow migration inventory

Start with a list of objects, not pages. A HubSpot site is a set of website pages, landing pages, a blog, HubDB tables, templates and modules, forms, CTAs and smart-content rules, all sitting on top of the CRM. Each one lands somewhere different in Webflow, and a few land nowhere. The table is the version we would fill in for a real account; the sources for every limit are in the sections that follow.

Table 1: Where each HubSpot CMS object lands in Webflow

| HubSpot object | Where it lands in Webflow | What to check first |
| --- | --- | --- |
| Website and landing pages | Static pages, or a Collection template for repeated layouts | Exported HTML is a reference, not an import |
| Blog | A CMS Collection (Premium: 20,000 items, 40 Collections) | Authors and tags become their own Collections |
| HubDB tables | CMS Collections | 10,000 rows and 250 columns per table in HubDB |
| Templates and modules (HubL) | Rebuilt as Webflow components | Nothing converts automatically |
| HubSpot forms | Native Webflow form, HubSpot embed, or iframe | Which path keeps hidden fields and lifecycle data |
| Smart content rules | Webflow Optimize add-on, partly | List and lifecycle-stage rules are not on its targeting list |
| Tracking code | Site-wide custom code in Webflow | Add the new domain in HubSpot's settings |

## What HubSpot's export actually gives you

HubSpot documents three exports, and you want all three before anyone opens the Webflow Designer.

-   **Pages and posts as HTML.** From Website Pages, Landing Pages or Blog, the Actions menu has _Export all pages and blog posts (HTML)_. It needs Super Admin or Publish permission, arrives as a download link by email, and puts the template files in a Styles folder. Treat this as an archive and a reference for rebuilding, not something Webflow imports.
-   **Blog post data as a spreadsheet.** Blog, then Actions, then _Export blog posts_, as CSV, XLS or XLSX. HubSpot notes it exports all blog posts regardless of the filters applied. This is the file that becomes your Webflow blog Collection, via Webflow's CSV import or the CMS API.
-   **Each HubDB table as CSV.** In HubDB, Actions, then Export. HubSpot's note matters here: images come out as image URLs, with any custom dimensions appended to the end of the URL.

That last detail is the one that bites after launch. If you import those URLs as they are, your new Webflow site is still loading images from HubSpot's file storage. Download and re-host them in Webflow's asset library before cutover, and strip the dimension suffix while you are at it, so that cancelling the HubSpot CMS subscription later cannot quietly break an image on a page nobody checks.

## HubDB tables to CMS Collections: size them before you promise a date

HubDB is where a HubSpot to Webflow move stops being a copy job. HubSpot's knowledge base says Content Hub Professional or Enterprise is required to use HubDB for dynamic pages, and its developer docs list the technical limits: **10,000 rows per table**, **250 columns per table**, 1,000 tables and 1 million rows per account.

Webflow counts differently. Its pricing page gives the Premium site plan **20,000 CMS items and 40 Collections** at $25/mo billed yearly, and Basic has no CMS at all. The item limit is shared across every Collection on the site, blog included. Two things follow:

-   **Rows are pooled, not per table.** A blog of 800 posts plus one HubDB table near its 10,000-row ceiling fits. Two full tables plus the blog do not.
-   **Columns may not fit either.** Webflow's pricing table lists a Collection structure of 100 fields, 20 of them reference fields. A HubDB table using more than 100 columns has to be split into related Collections or trimmed, which is a content-model decision, not an import setting.

Count your tables, rows and columns from the CSV exports on day one. If the totals are near the limits, that is a finding to put in the proposal, not something to discover while importing.

## Keeping forms wired to the HubSpot CRM

This is the section most HubSpot to Webflow migration guides compress into one line, and it is where lead data actually goes missing. Webflow's HubSpot App offers three paths: native Webflow forms, HubSpot's form embed, or an iframe. They are not equivalent.

### The native Webflow-form path

Webflow's app listing says native forms connect to HubSpot _using HubSpot's Non-HubSpot Forms feature_. That makes HubSpot's rules for that feature the rules for your forms, and its knowledge base spells them out:

-   **Hidden fields are not collected.** If your current forms pass UTM values, a campaign ID or a lead source through hidden fields, that data stops arriving.
-   **Fields map only to single-line text properties.** Other field types cannot be matched, and fields cannot be mapped manually. Unmatched values stay in the submission data but not on the contact record.
-   **Every click on submit is a submission.** A visitor who fails your validation once and then succeeds creates one partial and one complete submission.
-   **Submissions sharing a cookie go to one contact**, even when each uses a different email address.
-   **It depends on the tracking code loading.** A script conflict or a browser extension that blocks scripts means the submission is not collected at all.
-   **The form must be on the page at first load**, not in an iframe, and not on a single-page app.

The single-page-app rule is worth a second look on Webflow sites specifically. Some Webflow builds add a page-transition library that swaps the page content without a full reload; our own site runs one. On a site like that, a form reached by an in-site navigation was not present when the page first loaded.

### Which path we would pick

For a newsletter box that only needs an email address, the native path is fine and keeps the styling fully in Webflow. For demo requests and contact forms that feed lead routing, lifecycle stages or attribution reporting, use the HubSpot embed, or submit to HubSpot's Forms API from your own form, which is the alternative HubSpot itself suggests. Webflow's app page notes that the new form-editor compatibility and embed styling need Marketing Hub Professional or Enterprise, so check the plan before you design around them.

## The tracking code, and analytics that survive the move

On a HubSpot-hosted site the tracking code is simply there. On Webflow it is not, and HubSpot is explicit that externally hosted pages need it installed manually to capture analytics. In Webflow that means the site-wide custom code in Site Settings, installed once. HubSpot also warns against installing it twice, which causes duplicate data, so remove any copy a previous developer pasted into a page embed.

Two more steps from HubSpot's documentation that are easy to miss:

-   **Add the domain in HubSpot.** If an entire domain or subdomain is now hosted outside HubSpot, it has to be added in your HubSpot settings, and to the reports settings, before its traffic shows up in HubSpot analytics.
-   **Non-HubSpot form submissions depend on it.** Without the tracking code, native-form submissions are not captured. HubSpot's own form embed still receives submissions without it, but site tracking does not work.

Expect page-level reports not to line up across the cutover, because URL paths often change. Note the launch date in your reporting so nobody reads the break as a traffic drop.

## What genuinely has no one-to-one replacement

Three things, and it is better to hear them before the project than after it.

**Smart content.** HubSpot's smart rules can show different content by ad source, country, device type, referral source, preferred language, query parameter, contact list membership and lifecycle stage. Webflow's nearest equivalent is the Optimize add-on, listed at $299/mo on the pricing page, billed by page views, with audience targeting by device type, behavioural signals, UTM and geolocation. Rules keyed to _who the visitor is in your CRM_, list membership and lifecycle stage, are not on that list. If your homepage shows customers something different from prospects today, plan how that survives, or accept that it will not.

**HubL templates and modules.** The export does include the template files, in a Styles folder, but they are written in HubL, HubSpot's own templating language, which Webflow cannot run. Every module your marketing team uses has to be rebuilt as a Webflow component, and the content editors will need a short walkthrough on the new ones.

**Anything whose data outgrows a Collection.** See the HubDB section above. The limit is rarely the blog; it is the product catalogue, integrations directory or partner list that someone built as a HubDB table years ago.

What does _not_ break, because it never leaves HubSpot: your contacts, lists, workflows, marketing emails and email templates. You are changing where the website is hosted, not your CRM.

## The SEO half, briefly

Rankings in a platform move are lost to missing redirects and dropped metadata, not to the platform. Map every old URL to its new path with a 301, carry titles, descriptions and canonical tags across, and check the new sitemap in Search Console after launch. The full process, including redirect mapping and post-launch checks, is in our [WordPress to Webflow migration guide](https://www.flowhivedigital.com/insights/wordpress-to-webflow-migration-seo); the steps are the same for a HubSpot source.

## When staying on HubSpot CMS is the right call

A migration is not automatically an upgrade, and we would rather say so here than in a proposal. Stay on HubSpot CMS, or at least delay the move, if any of these is true:

-   Your site depends on smart content keyed to list membership or lifecycle stage, and that personalisation measurably drives pipeline.
-   Your HubDB tables together hold more rows than Webflow's item limit, and nobody wants to redesign the content model.
-   Your marketing team builds landing pages in HubSpot every week and has no appetite to learn a second editor.

If none of those apply and the reason for moving is design freedom, a faster editing loop or a site the team is not afraid to touch, the move is usually worth it. If you are still weighing platforms rather than a specific move, our [Webflow vs WordPress comparison](https://www.flowhivedigital.com/insights/webflow-vs-wordpress-b2b-saas) covers the same buyer from the other direction.

Table 2: HubSpot CMS to Webflow, by situation

| Your situation | Our pick | Why |
| --- | --- | --- |
| Blog plus marketing pages, forms feed the CRM | Move | Content exports cleanly; use the HubSpot embed or Forms API for lead forms |
| HubDB tables near their row limits | Size first | Webflow Premium pools 20,000 items across all Collections |
| Smart content by list or lifecycle stage drives pipeline | Stay, or plan it | Webflow Optimize targeting does not list CRM-based rules |
| Team builds landing pages in HubSpot every week | Stay | The editing habit is the asset; a second editor is a cost |

**Planning a HubSpot CMS to Webflow move?**

Send us your HubDB table list and the forms that feed your CRM, and we will tell you what fits, what has to be redesigned and what should stay on HubSpot.

[Tell us what you're working with](https://www.flowhivedigital.com/contact)[See our pricing](https://www.flowhivedigital.com/pricing)

## FAQ

**Can you export a HubSpot website?**

Partly. HubSpot exports all pages and blog posts as HTML files, blog post data as CSV, XLS or XLSX, and each HubDB table as CSV. The template files come along too, but they are written in HubL, which no other platform runs, so templates and modules are rebuilt.

**Do HubSpot forms work on a Webflow site?**

Yes. Webflow's HubSpot App supports native Webflow forms, HubSpot's form embed and iframes. The native path runs on HubSpot's non-HubSpot forms tool, which skips hidden fields and maps only to single-line text properties, so for lead forms that carry UTM or lifecycle data we would use the embed or the Forms API.

**Can I keep the HubSpot CRM if I move the website to Webflow?**

Yes, and most teams do. Contacts, lists, workflows and marketing emails stay in HubSpot. You install the HubSpot tracking code in Webflow's site-wide custom code, add the new domain in HubSpot's settings, and connect the forms through one of the three paths above.

**Does Webflow have an equivalent of HubSpot smart content?**

Partly. The Webflow Optimize add-on, listed from $299/mo, offers personalisation with targeting by device type, behavioural signals, UTM and geolocation. HubSpot rules based on contact list membership or lifecycle stage are not on its targeting list.
