At some point in a B2B company’s digital marketing strategy, they will need to consider a marketing automation platform, of which there are several top players — such as Marketo, Oracle Eloqua, Pardot, Act-On, and Hubspot — While I’m sure that there are many more available options (I found this great vendor comparison tool with some nice comparison guides), in this post I’m going to talk about the integration here at Acquia between Drupal and Marketo that we’ve developed over the last four years.
Setting up the connection
Connecting Drupal to Marketo is as simple as following these steps:
- Add the Marketo MA module to your website.
- Enable the module, and activate Marketo using your account ID key.
- Add a form to your website and data will start passing from your website into Marketo
This process allows you to add forms to your website that seamlessly collect and pass tracking data through to Marketo. The Marketo MA module itself allows for lots of additional things to be able to happen, such as:
- API integration
- Webform integration
- Rules integration
- Lead capture during user create
- Drush support
Creating your custom implementation
If you only need a few forms on your website, the basic setup is probably all you’ll need. We use a lot of different forms on our website and with a need for granular reporting, we’ve taken the basic setup to the next level. We have many ebooks, whitepapers, and webinars that get added to our website on a weekly basis, and we want individual reporting on each one.
Because of this, it isn't manageable or scalable to create a new form in Marketo for every item. If we needed to make a substantial change to our form, I would have to make that change to over 100 Marketo forms — that’s a good way to introduce potential errors, and is a huge waste of time for my team!
Instead, we created a folder for master forms, where we built one form for each type of asset that we publish. This leaves us with about five main forms across our website. Then we created fields on our pages that pass data into hidden fields on those forms, so that we can get the required precision from our form reporting. For example:
This is what renders on the page for the visitor: