Troubleshooting HubSpot forms on your site
Learn how to diagnose and fix common HubSpot form issues on your Framer site.
My HubSpot form is showing up multiple times
This is almost always caused by the form being rendered more than once on the same page.
Most common causes:
The HubSpot component is placed inside a structure that repeats, such as a CMS Collection List item, a duplicated component instance, or a variant that can render more than once at the same time.
The form is embedded twice — once via the HubSpot component and once via a manual embed in a Code or Embed component.
The page contains multiple HubSpot components that point to the same
portalIdandformId.
Recommended fixes:
Confirm there is only one HubSpot form source. Use either the HubSpot component (recommended) or a manual embed via the Embed component — never both for the same form.
Check whether the form sits inside a CMS item or repeated component. Each CMS item in a CMS template renders its own copy. Move the HubSpot form to a single, non-repeating section on the page.
Avoid placing the HubSpot form in variants that can overlap. If the form exists in multiple variants, make sure only one variant is visible at a time.
Test on the published site in an incognito window. This rules out browser extensions and cached scripts that can occasionally cause duplicate renders during debugging.
If you need a form on many CMS pages, we recommend using one form per page template (not per CMS item), or linking to a dedicated contact page that contains a single form instance.
The form is blank, partially loaded, or doesn’t appear
If the HubSpot component renders but no form fields show up, something is blocking HubSpot’s embed script from loading.
Most common causes:
Ad blockers, privacy tools, or strict corporate policies are blocking HubSpot scripts.
HubSpot assets are blocked by a Content Security Policy (CSP) or network filter on the visitor’s network.
The form is still loading. HubSpot’s embed script runs on the published site and may take a moment to initialize.
Recommended fixes:
Test on the published site (not the canvas or preview) — HubSpot’s script behaves most reliably in production.
Open the site in an incognito window with extensions disabled.
Try a different network, or test on mobile data, to rule out network-level filtering.
If this is for a locked-down environment, ask the customer’s IT team to allowlist the HubSpot resources used by embedded forms.
Open the browser console (right-click → Inspect → Console) and look for errors mentioning
hsforms,hs-scripts, orhubspot.com. These usually point to what’s being blocked.
The form loads, but styling looks wrong
HubSpot forms are styled and configured within HubSpot, not in Framer.
In Framer, you control the layout around the component — its position on the page, the space it occupies, and the section it lives in. The fields, labels, button colors, and validation styles all come from HubSpot’s form editor. Keep form-specific styling changes in HubSpot so the form stays consistent everywhere it’s embedded.
Submissions are not showing up in HubSpot
If the form looks fine and the submit button works but no entries appear in HubSpot, you’re almost always pointing at the wrong form.
Most common causes:
The
portalIdorformIdis incorrect or mistyped.The embedded form is not the same form the team is checking in HubSpot — for example a different account, a staging form, or a duplicated form.
Recommended fixes:
Re-copy the
portalIdandformIddirectly from HubSpot’s embed dialog and paste them into the component’s properties.Confirm the HubSpot account and portal being used matches where the team expects submissions to land.
Publish the site, submit a test entry, then check HubSpot’s form submission logs to confirm whether the submission was received.
Make sure the form in HubSpot is published and not in draft state.
The submit button doesn’t do anything
If clicking submit has no effect, the page is usually missing context the HubSpot script needs.
Test on the published site, not in canvas or preview mode.
Check the browser console for JavaScript errors mentioning
hsformsorhubspot.Make sure no custom code on the page is blocking page scripts or overriding
window.hbspt.Confirm the form isn’t inside a section that’s hidden at the time of submit — HubSpot needs the form to be visible to mount correctly.
The form layout looks too tall or has a scrollbar
HubSpot forms render inside an iframe sized to their content. If the form looks unexpectedly tall or shows a scrollbar:
Make sure the HubSpot component is set to hug its content vertically, not fixed to a small height.
Avoid wrapping the component in a container with a fixed height that’s smaller than the form.
Adjust the form’s own height and padding inside HubSpot’s form editor — that’s where the form’s intrinsic size is controlled.
If you’re still stuck after trying the steps above, reach out to us through our contact page.
FAQ
Can I use Framer’s native forms to submit directly into HubSpot without webhooks or third-party tools?
Not currently. The only way to send submissions directly into HubSpot is by embedding a HubSpot form via the HubSpot component. Native Framer forms submit via email, Google Sheets, or webhooks — you can route those to HubSpot using a webhook automation, but not directly.
Why does my HubSpot form behave differently in preview than after publishing?
HubSpot’s embed script behaves most reliably on the published site. Always verify form behavior on the live URL after publishing, not just in canvas or preview.
Can I style my HubSpot form in Framer?
You can control the form’s position and the space around it in Framer, but field styles, button colors, and form behavior are configured in HubSpot’s form editor. This keeps the form consistent across every site where it’s embedded.
Can I add multiple HubSpot forms to one page?
Yes — add a separate HubSpot component for each form and give each one its own
formId. Just make sure you’re not accidentally rendering the same form twice.Where can I learn more about forms in Framer?
See How can I add a contact form to my Framer website for an overview of all form options, including native Framer forms and other integrations.
Updated