Forms and landing pages
Forms render in iframes that resist CSS, pages live on HubSpot's CMS with no export, and a lapsed plan freezes your published URLs.
What people actually say
✕Embedded HubSpot forms ship inside an iframe by default, making it effectively impossible to style the contents to match your site or meet accessibility color-contrast standards.
Source: HubSpot Community, new form styling idea ↗✕Users report the new forms tool removed styling controls like padding and button position, and forms look totally different in the builder, on the landing page and when embedded externally.
Source: HubSpot Community, form editing broken ↗✕There is no official way to migrate HubSpot website or landing pages between accounts; the API explicitly excludes website and blog content.
Source: HubSpot Community, migrating CMS pages ↗✕When a plan lapses, HubSpot-hosted landing pages go into a read-only state — content stays live but you lose the ability to edit links, code or republish until you pay again.
Source: HubSpot Community, landing page lock issues ↗
Your landing pages live in your own Next.js repo on your own domain — Tailwind-styled, version-controlled and deployable to Vercel or Cloudflare in seconds. Forms are real HTML elements you can theme without fighting an iframe, submissions post to your API and write straight into your CRM. If we ever part ways, you keep the source; nothing goes read-only because no one is holding hosting hostage.