To add HubSpot forms to WordPress, either embed HubSpot's own form on the page with its embed code, or keep your WordPress form and send its submissions to HubSpot, for example through Google Tag Manager. Native embeds are the simplest because leads go straight into the CRM. I have used both: native HubSpot forms on a marketing agency's campaign pages earlier in my career, and Forminator forms synced through Tag Manager on Ravens Ait.
Why connect WordPress forms to HubSpot at all?
Because leads in an inbox get lost. When enquiries arrive as emails, someone has to copy them into the CRM, and some never make it. A form that writes straight to HubSpot puts every lead where the sales team already works, with its source page attached.
That was the brief on every page I built for that marketing agency, whose pipeline ran in HubSpot. Each campaign page had to start feeding the CRM the day it launched, with nobody handling data by hand.
The principle holds outside WordPress too. Whatever the platform, the form should end where the follow-up happens.
What are the ways to get WordPress leads into HubSpot?
| Method | How it works | Best for | Watch out for |
|---|---|---|---|
| Native HubSpot embed | Paste HubSpot's embed code into the page | Teams that build forms in HubSpot | Styling is limited to what HubSpot allows |
| Your form plugin plus a sync | Forminator, WPForms or a builder form sends data to HubSpot | Forms that need plugin features such as payments | One more link in the chain to test |
| HubSpot's WordPress plugin | Adds tracking, forms and popups from the WordPress admin | Small teams who want it all in one place | Another plugin to keep updated |
There is no wrong answer. Pick the one that matches where your team builds and edits forms.
How do native HubSpot embeds work?
You build the form in HubSpot, copy its embed code and paste it into an HTML or code block in Elementor, Bricks or the block editor. The form loads from HubSpot, and submissions are stored as contacts in the CRM, with the page they came from.
For that agency I worked across two platforms: the main site on WordPress with Elementor, and campaign pages in Webflow. Embedding native HubSpot forms on both removed an integration step and kept lead data in one place. CSS handled the styling so the forms matched each page.
How do you sync your own WordPress forms to HubSpot?
Use this when the form needs to do something HubSpot's forms do not. On Ravens Ait the venue takes paid bookings through Forminator with Stripe, and the enquiry forms sit alongside them in the same plugin.
Routing the sync through Google Tag Manager kept the CRM integration out of the theme code, so it can change without a developer editing templates. Every enquiry form has mandatory fields, so leads arrive complete rather than as a name with no date or event type.
Which fields should a HubSpot lead form require?
Only what the sales team needs for the first call, and nothing they will ignore.
- Name and a contact method the team actually uses.
- What they are enquiring about. On Aura Clips I built the contact form with a service dropdown covering SEO, ads, LinkedIn, digital PR and website development, so enquiries arrive sorted by service.
- The detail that qualifies the lead, such as an event date or a budget range.
- Consent where your privacy policy requires it.
What breaks HubSpot forms on WordPress?
Forms fail quietly
A broken form does not show an error to the owner. It just stops producing leads. Submit a test entry on every form after launch and after any change to caching, popups, consent tools or security headers.
The problems I see most:
- Popups that never fire. On the Warren House homepage project I diagnosed a HubSpot popup the marketing team relied on that was not firing.
- Host caching layers. On two client sites, a GoDaddy cache layer swallowed form submissions. A PHP upgrade from 8.0 to 8.3 fixed both.
- Security headers. A strict Content-Security-Policy blocks HubSpot scripts unless their domains are allowed. See how to add HTTP security headers to WordPress.
- Consent banners that block the HubSpot script until a visitor accepts, so the form never appears.
How do you test a HubSpot integration before launch?
- 1
Submit every form
Use a real-looking test entry with a tagged email address so you can find and delete it later.
- 2
Check the contact in HubSpot
Confirm every field mapped to the right property and the source page is recorded.
- 3
Check notifications
Make sure the right person got the email alert.
- 4
Check tracking
Confirm the submission fired as an event in GA4 through Tag Manager.
- 5
Repeat on mobile
Popups and embedded forms behave differently on small screens.
Tracking the same submissions in GA4 is covered in how to set up GA4 and Google Tag Manager for landing pages. I build lead pages with HubSpot through my landing pages with GA4, GTM and HubSpot service. Send me the campaign brief and I will reply with a plan.



