June 30, 2018

How to Customize HubSpot's Salesforce Integration for Granular Reporting

SpringCM helps work flow for their customers by delivering an innovative document management and workflow platform, which powers their leading contract lifecycle management application. SpringCM empowers companies to become more productive by reducing the time spent on managing critical business documents and providing more visibility into document flow and content.

Their intelligent, automated workflows enable document collaboration across an organization from any desktop or mobile device. Delivered through a secure, scalable cloud platform, SpringCM document and contract management solutions seamlessly integrate with Salesforce or work as a standalone solution.

As a Salesforce Independent Software Vendor (ISV), SpringCM has attended the annual conference, Dreamforce, for years. In 2017, they increased their investment in Dreamforce and knew they needed to equally improve their reporting capabilities in order to accurately track the ROI from this investment. SpringCM was familiar with utilizing their HubSpot and Salesforce platforms to achieve their current level of reporting, but they needed more.

Their team decided to leverage the support and insight of New Breed, HubSpot’s Elite Agency Partner, to establish a more successful reporting structure that would easily grow with them.

Ultimate Guide to HubSpot Integrations: Get Insights from Top RevOps Experts  Here!

Their Challenge

SpringCM has a marketing and sales cycle with many touch points and transactions, sometimes spanning an entire quarter before getting to closed-won status. As a rapidly growing organization, they needed a healthy system to support their growth and to provide a unified buying experience from prospect to customer.

Due to this, they needed a deep understanding of their marketing channels (such as paid advertising, email marketing and events like Dreamforce) that continued to influence leads past their first touch. HubSpot’s Campaign Tool does a marvelous job of tracking ongoing influence on SpringCM's prospects, but didn’t always provide deeper insight into the specific channels driving these re-engagements after the first touch.

At the same time, they were on a legacy Salesforce platform filled with tons of data in need of cleaning and organization. As a Salesforce partner, SpringCM has several listings on the Salesforce AppExchange for Contract Management and Document Management, which visitors can download without interacting with SpringCM directly.

As a software vendor, SpringCM also receives conversions via software listing and review sites, like G2 Crowd, where HubSpot forms can’t be embedded. Though these events weren’t occurring natively in HubSpot, they’re still highly critical conversion points that needed to be tracked. And since these conversions weren’t being natively tracked, their source showed up as unknown data in SpringCM’s Salesforce platform.

In order to achieve this full understanding of their marketing channels, SpringCM sought to maintain more reliable data on both Salesforce and HubSpot. Then, they would need deeper reporting capabilities of this external and internal data in both platforms. Ultimately, SpringCM desired this granular insight into their audience in order to make better informed decisions on financial investments into their marketing channels and resource investments into content development.

In order to overcome these challenges, SpringCM required:

  • The ability to not only track the original touchpoint, but every subsequent one — as well as the ability to attribute each of these touches back to revenue and conversions.
  • The capacity to not only understand the ROI of each marketing channel, but the added capacity to understand what campaigns and content were resonating and delivering results within each of those channels.
  • A way to track overarching campaigns in HubSpot, but also a way to more granularly track the various marketing channels impacting the overarching campaign and compare each one.

SpringCM was in search of a partner who could provide this high visibility into their ROI, handle their web of integrations, manage the cleanup of their contact database and overcome their lack of clear data to support making tactical decisions about their marketing efforts. In the end, they came to New Breed Marketing as we could provide this extensive knowledge of the platform and the opportunities that existed to build layers of integration on top of it.

Ultimate Guide to HubSpot Integrations: Get Insights from Top RevOps Experts  Here!

Our Process:

1. Audit

First, we audited all of SpringCM’s existing conversion channels — both within HubSpot and their external conversion points. After compiling their current channels, we got everyone aligned on the organization of the campaigns, associated channels and lead sources they wanted to track. Our team also established naming conventions for consistent usage of UTM parameters for SpringCM’s tracker URLs. This way, our HubSpot workflows could consistently determine conversion source and add the conversion to the appropriate Salesforce campaign.

2. Standardize Internal and External Data

Our team built a custom configuration of all of SpringCM’s various conversion points to continuously import this external data and map it to a standard framework within HubSpot for easier attribution. This allowed the critical data to flow from the Salesforce AppExchange into their HubSpot portal automatically. The diagram below shows the complexity of some of the conversions occurring in the AppExchange (and some other external channels) and demonstrates why it all needed to be standardized for HubSpot attribution.

SpringCM Image 1-edited

Second, we integrated the external software listing and review sites using HubSpot Forms API, which allowed us to track this data in HubSpot as well. These two workarounds were established to start automatically integrating important external conversions into SpringCM’s HubSpot portal and eliminate the creation of even more unknown data in their platforms.

Since SpringCM is growing rapidly, they needed the ability to pivot their marketing tactics and tools to keep up the pace (e.g., live chat and event registration plugins). Knowing this, we built out this framework to allow for new integrations with HubSpot, using workflows to convert each integration's default data format into standardized format for further processing.

Ultimate Guide to HubSpot Integrations: Get Insights from Top RevOps Experts  Here!

3. Implement Hidden Form Fields on HubSpot Forms

In addition to standardizing the input data from SpringCM’s internal and external conversion sources, we also expanded upon the capabilities of their existing HubSpot forms to capture “Most Recent Channel” and “Campaign” from UTM parameters.

Now, when visitors come to their site via Tracker URL and convert on a form, the form would be able to capture this data in associated contact properties and store it on this new contact’s record in HubSpot. SpringCM needed to capture this information in order to trigger marketing attribution workflows and set the associated Salesforce campaign.

Not all of SpringCM’s website visitors were coming from Tracker URLs, but they still needed to know the channel from which they were sourced. Therefore, our team added several more hidden fields to capture more implicit details about the source of a visitor’s conversion.

We used custom-coded JavaScript to set these values and implemented it across the entire site with the help of HubSpot Content Settings. In essence, this could interpret the source of a visitor’s conversion in cases where UTM parameters weren’t available and input it into the hidden form fields in a format similar to those parameters.

The custom JavaScript code would also pull in the HubSpot campaign associated with the visitor’s current landing page just in case the campaign wasn’t specifically associated with that traffic source.

By capturing these details, we could continue mapping all of the conversions taking place on SpringCM’s various channels without losing out on valuable data.

Custom Hidden Form Fields set by Javascript:

SpringCM Image 2

4. Build Custom Contact Properties

Once this external data was flowing into HubSpot, our team coded a series of custom contact properties to accurately store this data on contact records. One of these custom properties, Recent Lead Source Detail, captures conversion data from sources such as the Salesforce AppExchange or standard HubSpot forms and stores it as a contact’s most recent channel of interaction.

Regardless of how a contact was interacting with SpringCM, all data is routed through this new property to standardize internal and external data and enable revenue attribution.

Other custom contact properties included:

  • Recent Lead Source
  • Recent Lead Source Detail
  • Original Lead Source
  • Original Lead Source Detail

5. Custom HubSpot Workflows

Our team then implemented two custom HubSpot workflows to process the details of external conversions and add “Recent Lead Source” and “Recent Lead Source Detail” properties to contact properties, as well as to add the appropriate Salesforce campaign based on this recent lead source.

  • Set Recent Lead Source: First, a recent lead source workflow gets triggered after any HubSpot form submission or external conversion. It would consider any data brought in from these integrated sources or from hidden attribution fields on SpringCM’s HubSpot forms to code “Recent Lead Source” and the additional details of that source to represent the channel of a particular conversion.

lead source hubspot

  • Set Salesforce Campaign: After the details of the recent lead source were added to the contact record, this workflow would use branching workflow logic to add this contact to a Salesforce campaign representing three points of data:

    • The overarching HubSpot campaign

    • Channel of the recent conversion (Recent Lead Source)

    • And the calendar quarter this conversion occurred

campaign tracking6. Templatize HubSpot Campaigns

Since SpringCM wanted to track re-conversions through the funnel, we created templatized campaign structures that could be reused in both of their platforms. These structures allowed us to keep the high-level campaigns and associated assets organized in their HubSpot portal, using the Campaigns Tool, while enabling the more granular attribution in Salesforce that they desired. It also enabled scalable implementation of new campaigns each quarter as SpringCM continued to grow.

The HubSpot campaign workflow “templates” could be cloned and configured to the specific campaigns they wanted to run in each quarter. After cloning the Campaign Template, SpringCM’s branching logic is already set up to capture Recent Lead Source Details, which would be complicated and time consuming to redo for every single campaign.

SpringCM IMage 5By using the templates, SpringCM only needed to update the workflow for:

  • Enrollment criteria for the specific campaign
  • Appropriate Salesforce sub-campaign details for Campaign, Channel and Quarter

The templated campaign structures in HubSpot enabled SpringCM to use Salesforce to track attribution across three dimensions: campaign, conversion channel and quarter. Once a lead converted into an Opportunity in Salesforce, any associated conversions throughout the marketing and sales cycle could be attributed as influencing that opportunity.

7. Integrate with Salesforce

SpringCM was doing an amazing job utilizing the HubSpot Campaign Tool to define and execute their marketing campaigns, but this provided high-level reporting. Due to their sales cycle and numerous touch points along the way, SpringCM needed to report with more granularity on their prospects' entire journey through the marketing funnel. As they were pushing their HubSpot platform to its limits, we finessed a very unique Salesforce integration on top of the platform that provided them with further insights.

Our team continued to use the Campaign Tool to organize the assets and themes of each of their campaigns, but customizing the integration to Salesforce enabled SpringCM to begin tracking the assets, channels and timelines associated with each overarching campaign and the influence of these touch points on the customer journey.

Several of their campaigns are run repeatedly as they represent important areas of their business. While the assets may be reused, SpringCM wanted new contacts to only remain associated with the exact campaign they converted on.

By keeping the high-level campaigns in HubSpot Campaigns, they can easily duplicate these long-running “parent” campaigns and assets. Then, they just have to set up a new “child” campaign in Salesforce that gets associated with the “parent”. This campaign separation and customized Salesforce integration provide the necessary reporting details to accurately calculate the ROI from each channel and asset.


  1. Before this project, 16% of SpringCM’s leads were tagged as coming from an unknown source and the SpringCM team lacked full confidence in the accuracy of the remaining 84% of their lead sources. Today, 0% of their leads are from unknown sources and SpringCM now has trust in the source data that is being captured.
  2. 100% of their revenue and marketing opportunities can now be tracked with this improved integration and reporting structure.
  3. So far in FY19, SpringCM has reported on multiple high-level marketing campaigns across more than a dozen unique channels and can attribute the influence of each one on generated pipeline.

In addition, SpringCM now knows that inbound marketing, Events and Paid marketing are their best-performing marketing channels in terms of generating pipeline. It’s a good day when you know all of your inbound marketing efforts have paid off!

Ultimate Guide to HubSpot Integrations: Get Insights from Top RevOps Experts  Here!


Since SpringCM is growing rapidly, they’re always looking for new ways to engage with their leads and grow their business, so they needed a solution that allowed for new conversion channels. Even though the Salesforce integration with HubSpot isn’t as new as other integrations, our team worked tirelessly to build a unique configuration of it in order to better serve our client. And ultimately, what we built for them wasn’t just an integration, but an entire reporting structure that easily folds in new communication channels without disrupting their capabilities.

By continuing to work creatively with their evolving technology stack, we’ve been hard at work adding further integrations to expand SpringCM’s reporting capabilities between their HubSpot and Salesforce platforms. Since the initial setup of their reporting structure, we’ve been working on three additional HubSpot Connect integrations for SpringCM.

As HubSpot Connect partners, the initial integration between these platforms and HubSpot already existed, but we’re continuing to further customize each one in order to standardize the data produced and easily incorporate it into SpringCM’s new reporting structure.

  • Eventbrite: Eventbrite is an event registration platform. We integrated it into their HubSpot portal in order to capture registrations and attendance at events, add this data to contact records in HubSpot and standardize the reporting of that information between HubSpot and Salesforce.
  • Drift: Drift is a live chat tool that enables on-demand conversational marketing with website visitors. Despite the initial integration, Drift didn’t capture attribution data in the same way as HubSpot. Therefore, our team built another round of custom workflows that used HubSpot Analytics data to code the source a visitor came from before starting the Drift conversation. For example, the workflow enabled Drift to code whether this visitor came to the website via a paid ad or organic traffic before engaging with the chat bot. This continues to keep SpringCM’s data clean and organized in the structure we had already established.
  • Wistia: Wistia is a video hosting platform with “Turnstile” forms that appear halfway through a video to enable lead generation. Wistia’s Turnstile forms captured data differently than a standard HubSpot form. So, more importantly, we had to configure the data these forms collected into the overall reporting structure to keep lead data clean and organized.

Though the timeline for this project started due to SpringCM's increased investment into Dreamforce, the impact far exceeds this single event and marketing channel. With all of this reporting - both from a high-level down to the nitty gritty - SpringCM is now able to make better informed investment decisions in their various marketing channels and it allows them to fearlessly try new channels as they know they’ll be able to accurately calculate this new source of ROI.

According to Katie Gutwein, former Inbound Marketing Manager at SpringCM, and current Senior Solution Consultant at DocuSign, and our main contact during this project,


“With this integration, New Breed not only provided deep problem-solving capabilities, they gave us a scalable solution for our reporting needs. As a software vendor, we’re familiar with building extensive partnerships, but our relationship with New Breed is truly above and beyond. I appreciate all of the hard work their team dedicated to launching this really creative configuration between our HubSpot and Salesforce platforms.”

New call-to-action

Julia Woodward

Julia is a former New Breeder.


Ready to jumpstart your acquisition, retention and expansion efforts?

Request Assessment