Matt Pallatt
OMVP
Jun 27, 2024
visibility 3209
star star star star star
(0 votes)

Integrating HubSpot CRM without the MA Connector

Have HubSpot CRM? Want to push user data into it from Optimizely? Don’t have any personalisation requirements with that data? Don’t want to pay $800 a month for the Marketing Automation Connector? Then I have something that might interest you.

Recently we were working with a client who sat very much in the audience segment outlined above – they have HubSpot, they collect data from their website, they aren’t quite at the point where they want to start using any data from HubSpot to deliver personalisation, and they definitely didn’t have a budget for Marketing Automation Connector monthly charges.

Their requirement was for two specific forms – a contact us form, and a newsletter subscription, and we reasoned we could give them something completely rigid, with set fields that would only answer their current need – but we also knew, as I think every agency does, that what was a single requirement today could easily snowball tomorrow; so we got to looking at Optimizely Form actors and the HubSpot API.

And it turns out that half the job of what the multi-thousand-dollar-a-year Marketing Automation Connector does is relatively straight forwards to replicate using the scaffolding that Optimizely have in place around their Forms implementation and the straightforward API implementation that HubSpot has.

With very little configuration (for my money, simpler than the MA connector), we built out an extension to Optimizely Forms that on data submission, makes a request to HubSpot for a form schema, then matches field names from HubSpot to Optimizely before submitting the data to HubSpot once the comparison is completed.

It works alongside all the existing features of Optimizely Forms – so you can continue to hold data in Optimizely if you want to use Visitor Groups/Audiences on the data you’re collecting, you can use the mail functionality to let users know you have their data (assuming you’re not sending that from HubSpot), as well as thank you pages and all the standard and bespoke fields that Optimizely offers. All you have to do is make sure that your Optimizely Form name is the same as your field in HubSpot – simples.

And there’s little reason that the same thing can’t be done with Salesforce, Dynamics and other CRM platforms.

Anyway, it was so simple and easy to use I thought I’d carve it off and make it available for anyone who wanted to send their user data to HubSpot – or extend it to other CRM platforms of their need. So by all means steal, doctor and reuse the code at https://github.com/mattpallatt/MP.OptiForm2HubSpotPush.

Jun 27, 2024

Comments

error Please login to comment.
Latest blogs
Queryable or Searchable? How indexing type changes your Optimizely Graph query

The Property Indexing Type on a CMS field decides whether Optimizely Graph will return it, filter it, or run full-text search on it. Default,...

Chirag Khanna | Oct 8, 2026 |

How to Build Optimizely CMS 13 with Visual Builder in .NET

A code-first guide for .NET developers moving from Optimizely CMS 12 to CMS 13, covering Visual Builder: ExperienceData, Sections, Elements, tag...

Andy Blyth | Oct 8, 2026 |

Supercharging Optimizely DXP Troubleshooting with the Azure Copilot Observability Agent

If you’ve logged into the Azure portal recently to check the Application Insights for your Optimizely DXP environment, you might have noticed a new...

Scott Reed | Oct 8, 2026

Writing a Catalog Entry the Low-Level Way. Part 2: The Writer

Upserting a catalog entry through CatalogContext and MetaDataPlus: ContentGuid, the meta class seam, response groups, and a create path that rolls...

Stanisław Szołkowski | Oct 7, 2026 |

Migrate Optimizely DAM Assets from CMS 12 to CMS 13

Sites that used Optimizely DAM in CMS 12 need their asset references moved to the new Graph-backed content sources after upgrading. CMS 13.3 includ...

Bartosz Sekula | Oct 6, 2026