How to pass values from Google Analytics into a form and onto a Salesforce Campaign

The holy grail of attribution within Salesforce is to be able to pass values from Google Analytics (including UTM parameters) into hidden form fields and then pass those values into a Salesforce Campaign Member record.

Here’s a brief video of the end result:

In this blog post I’m going to take you step-by-step through how to set this up. While the number of steps might seem a little daunting at first, I assure you this is a relatively easy process that will pay dividends for years to come.

1.) Add Google Analytics to your website

Most likely you already have Google Analytics installed on your website. If you do, you can skip this step. If not, follow these steps to install Google Analytics.

First, go to the Google Analytics website and create an account if you do not already have one.

Once logged in, click on “Admin”.

Then under “Property”, click on “Tracking Info” then “Tracking Code”.

Under “Website Tracking”, follow the instructions to add the Google Analytics tracking code to your website.

2.) Add Google Tag Manager to your website

If you haven’t already, go to Google Tag Manager and create an account. It is a free service offered by Google.

Once logged in, find and click on your Workspace ID:

You should now see instructions for installing Google Tag Manager on your website. Note that you need to add two snippets of code to your website.

Do not use the code above – copy and paste from your Google Tag Manager account.

3.) Configure script in Google Tag Manager to parse Google Analytics cookie and set custom cookie

First, download the GA Custom Cookie Script (credit goes to E-Nor).

Second, you will see a line to set your top-level domains. Replace “align.ly” with your website domain. This also supports multi top-level domains – simply add commas (ie “align.ly”,”alignly.com”).

Now that your script is ready, go to Google Tag Manager and click on “Tags” -> “New” -> Name it “GA Custom Cookie Script” and then click on “Tag Configuration” -> “Custom HTML” -> and paste in your script.

Next, click on “Triggering” and select “All Pages”.

4.) Configure script in Google Tag Manager to apply values from cookie to hidden form fields

First, download the GA Cookie Extraction Script (credit goes to Pepperland Marketing).

Next, update your domain in the script.

Now that your script is ready, go to Google Tag Manager and click on “Tags” -> “New” -> Name it “GA Cookie Extraction Script” and then click on “Tag Configuration” -> “Custom HTML” -> and paste in your script.

Next, click on “Triggering” and select “All Pages”.

5.) Push Google Tag Manager changes live

In Google Tag Manager, click on “Submit” and then “Publish”.

Congrats! The hardest part is over.

6.) Add properties/fields to contact in your marketing automation platform

Properties/fields to create on contact in your marketing automation platform:

  • GA Campaign
    • Field type: text
    • Field name: ga_campaign
  • GA Source
    • Field type: text
    • Field name: ga_source
  • GA Medium
    • Field type: text
    • Field name: ga_medium
  • GA Content
    • Field type: text
    • Field name: ga_content
  • GA Term
    • Field type: text
    • Field name: ga_term
  • Landing Page
    • Field type: text
    • Field name: landing_page
  • Conversion Page
    • Field type: text
    • Field name: conversion_page

7.) Create fields on Lead, Contact, and Campaign Member in Salesforce

We are going to want to create the following fields on Lead, Contact, and Campaign Member in Salesforce. Yes, unfortunately we have to create the same fields 3 times 🙂

  • GA Campaign
    • Field type: text (255)
    • Field name: GA_Campaign
  • GA Source
    • Field type: text (255)
    • Field name: GA_Source
  • GA Medium
    • Field type: text (255)
    • Field name: GA_Medium
  • GA Content
    • Field type: text (255)
    • Field name: GA_Content
  • GA Term
    • Field type: text (255)
    • Field name: GA_Term
  • Landing Page
    • Field type: text (255)
    • Field name: Landing_Page
  • Conversion Page
    • Field type: text (255)
    • Field name: Conversion_Page

8.) Map Lead fields to Contact fields in Salesforce

In Salesforce Lightning, go to Setup -> Object Manager -> Lead – > Fields & Relationships -> then click the “Map Lead Fields” button.

Map all the Lead fields created in Step #7 to the Contact fields also created in Step #7. Click “Save”.

9.) Map Lead/Contact fields in Salesforce to the Contact properties/fields in your marketing automation

This will most likely be done in your marketing automation tool and since each platform is different, I can’t give detailed instructions.

The goal is to sync the Contact fields from your marketing automation platform to the Lead/Contact fields in Salesforce.

10.) Add hidden fields to your forms

Now that we’ve created all our fields and they are syncing, we want to add hidden fields to our forms. At Align.ly, we use HubSpot, so I’m going to show you how we set this up internally. For other marketing automation platforms the process should be similar.

Note that it is important that the “name” fields in your GA Cookie Extraction Script match up with the “name” fields in your hidden form fields.

Once this step is complete, you should now be able to pass values from your Google Analytics cookie into the hidden form fields. Upon form submission the values will populate in your marketing automation platform and then sync over to Salesforce – brilliant!

11.) Populate GA values on Campaign Member when a Lead/Contact is added into a Salesforce Campaign

Up until this step, you have the GA values on Lead/Contact in Salesforce, but what happens if someone interacts with more than one campaign? Do you overwrite the values? Not record subsequent engagement? Of course not. This is where mapping values to Campaign Member is super valuable. Here are the steps…

In Salesforce, go to Setup -> Create -> Workflows & Approvals -> Workflows

Click “New Rule” -> Select “Campaign Member” -> Name it “Update GA Values on Campaign Member” and then configure as follows:

Now we are going to add 7 field updates to map the values from Lead/Contact to Campaign Member.

Click “Add Workflow Action” -> “New Field Update” and configure as follows:

Note the Field API Name in the formula field.

Now add field updates for the remaining 6 fields making sure to swap out the Field API Name in the formula field. It should look like this when done:

Now go ahead and “Activate” the workflow rule.

12.) Clear GA Values on Lead/Contact in our marketing automation platform and Salesforce

Now that we mapped the GA Values to Campaign Member, we can now clear the values in our marketing automation platform and Salesforce.

There are a few different way to accomplish this in either your marketing automation platform or Salesforce. Here’s how we did it in HubSpot:

This is just a partial snapshot of the workflow. We check to see if any of the GA field have a value and if they do we clear them all.

Conclusion

That’s it! If you made it this far – congratulations! This was an epic blog post, but we think this can transform how you track and measure your marketing campaigns.

If you have any questions, please feel free to reach out to me at andrew[at]align.ly.

Best of luck and enjoy!

[Framework] Salesforce Campaign Naming Conventions and Best Practices

If you are in sales or marketing and you’ve tried to utilize Salesforce Campaigns for attribution, you know that properly naming Salesforce Campaigns in a consistent and scalable way is nearly impossible.

Over the last several years I’ve helped countless high-growth companies implement and utilize Salesforce Campaigns to track KPIs, measure multi-touch attribution, and more. Over time, I’ve developed best practices and a framework for naming Salesforce Campaigns that I’m going to outline in this article.

Goals

  • Keep it simple
  • Enable grouping, slicing, and filtering of Campaign data
  • Utilize Salesforce Campaigns as a way to align sales & marketing

Best Practices

  • Make it human readable
  • Utilize standard Salesforce fields as much as possible
  • Breakout key components into separate fields
  • Utilize Google Analytics cookies and UTM parameters to limit the number of Salesforce Campaigns you need to create

The Framework

[Status] [Name] [Type] via [GA Medium] from [GA Source] engaging with [GA Content] searching [GA Term]

Examples:

  • Downloaded ABM for Dummies eBook via PPC from Google Adwords engaging with Banner Ad 10 searching “Account-Based Marketing Guide”
  • Attended Account-centric Sales 101 Webinar via Retargeting from RollWorks engaging with Ad Creative #3
  • Did Not Attend ABX from 0 to 60 Event via Email from House Database engaging with Email A

Breakdown of Framework

Campaign Name (standard SFDC field on Campaign)

  • What is the event/asset name?
    • ABM 101
    • Account-centric Sales
    • How to deploy ABM in 7 days
    • Measuring ABM Success

Campaign Type (standard SFDC field on Campaign)

  • What was it?
    • Webinar
    • eBook
    • Case Study
    • Conference

Member Status (standard SFDC field on Campaign Member)

  • What action did they take?
    • Attended
    • Did Not Attend
    • Registered
    • Read
    • Downloaded
    • Submitted

GA Medium (custom SFDC field on Campaign Member)

  • How did they get it?
    • PPC
    • Paid Social
    • Organic Search
    • Email
    • Retargeting

GA Source (custom SFDC field on Campaign Member)

  • Where did they get it from?
    • Google Adwords
    • House Database
    • Facebook Ads

GA Content (custom SFDC field on Campaign Member)

  • Which call-to-action or content-targeted ad was engaged with?
    • Homepage Banner
    • Creative Ad #5
    • Footer CTA

How to Implement, Automate, and Analyze

In our follow-up blog post, we discuss in-depth how to implement and automate using Google Analtyic cookies, Google Tag Manager, your favorite marketing automation platform and Salesforce.

Align.ly Now Available on the Salesforce AppExchange

It’s a big day for us at Align.ly.

Align.ly is now available on the Salesforce AppExchange!

Even better – the app is 100% free to install and use with no limitations.

So if you are thinking about implementing lead-to-account matching, multi-touch attribution, or want to get a better handle on how your sales team is following up on leads, go install Align.ly from the AppExchange.

Align.ly on the Salesforce AppExchange: https://appexchange.salesforce.com/appxListingDetail?listingId=a0N3A00000FMkrOUAT

How to pass UTM parameters into a HubSpot form

HubSpot makes it relatively easy to pass UTM parameters from a URL into hidden fields in a HubSpot form. In this blog post, we will outline step-by-step how to do so.

Step #1: Create HubSpot properties for UTM parameters

We will want to create HubSpot properties for the 5 standard UTM parameters:

  • utm_campaign
  • utm_source
  • utm_medium
  • utm_term
  • utm_content

To do so, in HubSpot click on Settings -> Properties -> Create a property under Contact Properties.

I also like to create a Property group called “UTM Parameters”. It should look like this when you’re done.

UTM parameters

Note that the “Internal Name” of the HubSpot property should be all lowercase to match the URL parameter name in the URL.

Step #2: Insert UTM parameter properties as hidden form fields in your HubSpot forms

Go to Marketing -> Lead Capture -> Forms and select a form you want to update.

Add your newly created UTM parameter properties as hidden form fields to your form.

Save your form!

Step #3: Test your HubSpot form

Append URL parameters to a landing page with your HubSpot form. Here is a string of URL parameters you can use for testing:

?utm_campaign=lead-to-account matching&utm_medium=ppc&utm_source=google adwords&utm_content=ad1&utm_term=lead-to-account matching salesforce

Now submit your form and go view the contact in HubSpot. It should look like this:

If you see the above, everything is working and you’re all set – congratulations!

How Lead-to-Account Matching Drives an Account-Based Strategy

Looking for a Lead-to-Account Matching solution for Salesforce? Download Align.ly Lead-to-Account Matching for free.

If you’re deploying Account-Based Marketing (ABM), but you’re still working out of Leads in Salesforce, this post is for you. Every time someone asks me what is the first step to deploying ABM my answer is always the same: Lead-to-Account Matching.

How Lead-to-Account Matching Drives ABM

There are several reasons why Lead-to-Account Matching is foundational to an Account-Based Marketing and Sales strategy.

#1.) Focus

I wrote about why going Account-Based is about Focus in a previous blog post, so I won’t elaborate on the details. However, Lead-to-Account Matching will help sales and marketing align and focus on the best fit accounts leading to greater efficiency with marketing budgets and increased productivity from sales.

#2.) Efficiency

Poor routing of marketing activity to sales is a productivity killer. I think in most companies this inefficiency is chalked up as the cost of doing business. However, a good Lead-to-Account Matching solution can solve 95% of this problem resulting in much more efficient sales follow-up.

#3.) Effectiveness

Delivering a great buyer experience is the future of B2B marketing and sales. Matching new inbound Leads with existing Accounts helps with delivering on this promise.

For example, let’s say you were engaged in a sales cycle with an Account, but ultimately lost the deal. Three months later a new Lead from the same company responds to a marketing campaign. Without a Lead-to-Account Matching solution in place your inbound sales rep might not realize that there was prior history in the Account and follow-up cold. Now, what if that new inbound Lead was matched to the Account and now the rep could research the history and follow-up strategically?

#4.) Accountability

Without a good Lead-to-Account Matching solution it is almost impossible to accurately measure B2B KPIs and conversion rates. If you’re interested, I wrote about this in detail in the blog titled 11 Reasons Why Measuring B2B Conversion Rates is (Nearly) Impossible. However, once marketing deploys Lead-to-Account Matching and can accurately measure their ability to source net new opportunities or accelerate existing opportunities it creates a level of urgency and accountability across the entire marketing team, which typically bleeds into the sales team.

#5.) Organization

Finally, a good Lead-to-Account Matching solution helps organize your Salesforce database. It drives data hygiene, CRM adoption, and overall reliability of the data. More importantly it helps marketing run targeted campaigns and for sales to quickly and effectively follow-up with the entire buying committee for true Account-Based Sales Development (ABSD).

So, if you’re thinking about going Account-Based or already have a strategy in place, but are missing a Lead-to-Account Matching solution, do yourself a favor and go download Align.ly Lead-to-Account Matching for Salesforce for FREE.

 

Is Align.ly an alternative to LeanData?

We are frequently asked if Align.ly Lead-to-Account Matching for Salesforce is an alternative to LeanData, so we decided to write a blog post explaining the differences.

Free vs Paid

Align.ly Lead-to-Account Matching is offered as a free solution. Yes, you read that right, the full version of the software is 100% free. LeanData on the other hand is a paid solution. They don’t have pricing on their website, but I don’t know it isn’t cheap.

SMB/Mid-Market vs Enterprise

Align.ly Lead-to-Account Matching is really focused on serving B2B companies in the SMB and Mid-Market. This means companies that have fewer than 1,000 employees. As you grow to 1,000+ employees most likely your needs will become much more sophisticated and you’ll probably outgrow Align.ly’s solution and be ready to invest in LeanData. LeanData is an outstanding solution for enterprise companies as it has all the bells and whistles needed to do complex account matching and lead routing.

Lightweight vs Robust

Align.ly Lead-to-Account Matching is a simple, light-weight solution designed to solve 95% of the problem. LeanData is a more robust solution that solves 100% of the problem. However, solving “the last mile” definitely adds a lot of complexity to the solution. The questions you’ll want to ask yourself are what is “good enough” and what is “overkill” in your environment?

So, is Align.ly Lead-to-Account Matching a competitor to LeanData? In my opinion, no, as we are two solutions solving the same problem, but we are both meant for two very different audiences.

Interested in Align.ly Lead-to-Account Matching? Download the Salesforce App here and view our install videos and documentation here.

Account-Based is About Focus

If you’re thinking about Account-Based Marketing and Sales, it probably means the following:

  1. You can define a good fit account
  2. You can define the right personas within those accounts

So, why do you insist on counting leads that don’t fall into #1 and #2 towards your MQL goal? Why are you wasting valuable resources by passing these “MQLs” to your sales team for follow up? Why are you wondering why your conversion rates are low?

I know what you’re thinking, “But they could buy!”

You are right, they could buy, but there is a cost.

  • The 5 calls and 5 emails by your sales development rep costed the company $50.
  • The discovery call with an Account Executive and Sales Engineer – another $300.

But more importantly are the opportunity costs.

  • What if your SDR booked a meeting with the right persona in an ideal account?
  • What if your AE was focused on progressing a deal vs taking the discovery call?
  • What if your SE spend the time making an existing customer more successful?

Now let’s assume they do buy…

  • Most likely it will be a smaller deal with a higher cost to support that churns quicker than average.

All this because a marketer passed an “MQL” they shouldn’t have.

Going Account-Based means focusing. Focusing on the right personas in the right accounts at the right time that will maximize revenue.

It’s okay to not pass an inbound “MQL.” The sales team will thank you.

Why Align.ly Lead-to-Account Matching and Auto-Convert for Salesforce is Free

Yes, you read that right. We are releasing Align.ly Lead-to-Account Matching and Auto-Convert for Salesforce as a free download.

Now I know you’re probably thinking – “Other vendors charge thousands of dollars a year for a similar solution, why is Align.ly giving it away for free?” – and our response is pretty simple…

We believe lead-to-account matching and auto-conversion in Salesforce is foundational for a successful account-based marketing and sales strategy. Being able to quickly and easily match new leads to accounts drives the following:

  • Lead Routing
  • Account Ownership
  • Campaign Attribution
  • Marketing Metrics & KPIs
  • Email Nurturing
  • Account-Based Advertising
  • Sales Productivity
  • Conversion Rates
  • Database Hygiene
  • and More

We’ve seen too many B2B companies struggle in all these areas and the root cause is typically an unorganized Salesforce database. A good lead-to-account matching and auto-conversion solution is required to start to get a better handle on your database.

Unfortunately, most companies don’t have $10,000+ a year to spend on a solution, which is why we’re making our product free.

Our hope is that by making this product free that more B2B companies will be able to embrace account-based marketing and sales to build more scalable and more predictable sales pipeline.

Free Download: Align.ly Lead-to-Account Matching and Auto-Convert for Salesforce

If you have questions, feel free to email me directly at andrew@align.ly.

– Andrew Nadeau

11 Reasons Why Measuring B2B Conversion Rates Is (Nearly) Impossible

As a marketer the question you probably hate the most from executive management is “What is our MQL-to-Opportunity conversion rate?”

Why is this question so frustrating? It’s a simple question and you should be able to answer it, but it’s actually extremely complex. Why? Let’s dig in.

Why #1: Many MQLs on an Account

Let’s start with an example… You have 5 MQLs from the same Account. You are able to qualify and create an opportunity with one of the MQLs. What is your conversion rate? 1/5 = 20%? Or 1/1 = 100%?

In B2B we sell to Accounts NOT Leads, so MQL-to-Opportunity conversion is the wrong metric. We really should be measuring MQA-to-Opportunity conversion rates where MQA means “Marketing Qualified Account.”

Our MQA-to-Opportunity conversion rate is 100%.

Why #2: Timing of Opportunity Creation

Another example… Your SDR cold calls a prospect and opens an opportunity. The next day the same prospect visits your website and becomes an “MQL.”

Should this MQL count?

No. Since the opportunity was already created, this “MQL” should not be counted when measuring top-of-funnel conversion rates.

However, marketing should attribute this activity to helping accelerate the opportunity, just not sourcing the opportunity.

Why #3: “Re-MQLing”

Example… You have a prospect that becomes an MQL on October 15th, 2017. You set an “MQL Date” field to 10/15/2017 and pass the prospect to sales. Sales is unsuccessful in booking a meeting. On February 1st, 2018 the same prospect comes back to your website.

What do you do?

  • You already counted this prospect towards your Q4 2017 MQL goal, do you count them again?
  • Do you update the “MQL Date” from 10/15/2017 to 02/01/2018? But this will skew all you historical conversion rates.
  • What is the right time period to wait before you can “Re-MQL” a prospect? 30… 60… 90 days?

See how this is getting complex quickly?

Why #4: Timing of Account Stage

Example… An account is an existing customer, but a net new prospect at the Account engages and qualifies to become an MQL – do you count it?

No, since there is no potential for a new opportunity. But what if the net new prospect is part of a different buying committee that represents a net new opportunity? Then yes, it should count, but how do you actually track and measure all this?

Why #5: Orphaned Leads

If you’re using Salesforce and not automating lead-to-account matching and/or converting all leads into contacts/accounts, you’re probably counting “MQLs” that are at existing pipeline accounts or customer accounts and not even realizing it. These “MQL” should really be filtered out of your reporting.

In the end it means your overstating your MQLs and understating your conversion rates.

Why #6: Many Opportunities on an Account

Example… you have 10 MQLs at an Account. That same Account has 5 Opportunities.

How do you know which MQLs, if any, influenced the 5 Opportunities?

Why #7: Multi-Touch Attribution

Example… a prospect does the following:

  1. 12/15/2017 attends a trade show
  2. 1/15/2018 attends a webinar
  3. 2/15/2018 requests a demo

On 2/16/2018 an opportunity is created for $90,000.

Here’s how you’d break out attribution based on various models:

And based on the timing of the activities, here’s where you’d attribute marketing sourced pipeline:

There’s no right or wrong attribution model. However, if you’re only using one model you probably have a drastically distorted view of how your marketing is actually performing.

Why #8: Account Types

In order to get an accurate conversion rate only end-user prospects should be counted. This means technology partners, resellers, analysts, vendors, competitors, and internal employees need to be filtered out of all reporting.

Why #9: Outside of TAM

Similar to Account Types, what if you have a well defined Total Addressable Market (TAM) and sales won’t even engage with prospects outside of your TAM.

Do you count those prospects in your top-of-funnel conversion metrics? No, they need to be filtered out.

Why #10: Drilling into Conversion Rates

What if you want to drill into your data by campaign, campaign type, industry, region, specific date ranges, or other ways? Can this easily be done?

Why #11: Historical Data

Typically your CMO or CEO comes to you and says, “Give me marketing performance and conversion rates for the last 2 years.”

  • What if you haven’t been methodically tracking it in the past, what do you do?
  • What if your underlying data or definitions change? Can you update the historical information so you have an apples-to-apples comparison going forward? Or have you been tracking everything in Excel?

So, how do you solve all these challenges?

If you’re using Saleforce and any of the popular marketing automation solutions (Marketo, HubSpot, Pardot, Eloqua, etc), I have good news.

We’ve solved all 11 challenges (and more) with Align.ly Multi-Touch Campaign Attribution.

To request a 14-day trial, go here: https://www.align.ly/products/account-based-attribution