Marketing attribution is a frequently discussed topic among marketing automation professionals and vendors. Yet, few firms have achieved an attribution system that takes into account touches, offers, and sources. In this post, we will provide a roadmap of best practices to help you get closer to your goal of understanding the how and why of your marketing and sales funnel.
Keep in mind this is a checklist. Getting to a closed loop attribution system takes time, so do not expect to get through all 12 steps in one day, or even in one month.
Step 1: What do you want to report on?
In this crucial first step, you will work with your leadership to mockup reports. What are the strategic metrics for your funnel, and what are the tactical metrics?
While a tool like Marketo can collect a ton of data on lead behavior, reporting on all of that may be pointless, leading to vanity metrics and reports with no decision insights.
Strategic Metrics are what is important to the business.
- Revenue
- Subscribers
- Churn Rate
- Conversion rates in the funnel
Tactical Metrics are sometimes “vanity metrics” but often serve to show you how well your marketing activities work. The key is to tie back tactics to the strategy. If your content program is generating 25% CTR and a 12% on page conversion, that’s great, but how many are signing up for a trial? What’s the churn on that Offer or Channel?
The nice thing is Marketo (and other tools) can provide all of this data if setup correctly.
Once you have report mockups, then you can work backward to understand how to build the reports and what data you need to collect.
Step 2: Setup the Offer-Channel Attribution Lists
I highly recommend this framework for the type of data to collect from each lead.
- Offer – the content or event that the lead was interested in. This would be viewed as:
- Whitepapers
- 2014-Holiday-Whitepaper
- Whitepapers
- Channel – where and how the lead found out about the content. This would be viewed as:
- Telemarketing
- Agency A
- Telemarketing
When you consider your list of Offers and Channels, it is a good idea to think of all the possibilities, including voice and offline
This entire system can be operated using the next steps. But for now, all you want to do is identify all of the Offers you make and all of the Channels you plan to use. Then create a spreadsheet that lists all the values you can have.
An example would be:
Channel Type | Channel name (free text | Offer Type | Offer Name (free text) |
PPC | Adwords | Whitepaper | definitive-guide-to-nurturing |
Newsletter | Tech-target | ebook | 20-steps-to-marketing-guru |
Banner-Ad | Yahoo | Webinar | anne-handley-webinar-Jan-30-2014 |
Social-Ad | Video | anne-handley-video-Jan-30-2014 | |
List-rental | the-economist-011 | Demo | free-demo-offer |
Blog | blog-post-title |
Your Type fields will be picklists while your Names, or campaigns, should use dashes so they can be used in URL parameters. (It is possible to map a code to a name later if you want).
Step 3: Choose an Attribution Model for B2B Marketing
There are three major attribution systems, each with pros and cons.
First Touch is the easiest method to implement. In fact, you probably already have this out of the box with your CRM. First Touch says that the most important touch is the original acquisition of the Lead. All of your costs and revenue will be attributed to the first program the lead responds to. Sometimes First Touch is called “Original.” While easy, First Touch over represents the acquiring program instead of all of the other efforts you make.
A first touch system (FT), however, places all credit with the acquiring program. It is simple and easy to report on, yet ignores all of the nurturing efforts you make. If you are focused on acquisition for any reason – choice, e-commerce, one-off transactions – then this works well for you.
Last Touch is the opposite of First Touch. This system says to give all of the cost and revenue credit to the most recent, or last, campaign the lead responded to. Similar to First Touch (FT), Last Touch (LT) over represents the latest campaign to touch the Lead.
And LT has similar pros and cons to FT. Your system will be unable to tell you much about the acquisition method, but a lot about that last moment before the win. While that is helpful information, it is likely a lot of effort went into that lead before the last touch.
Multi-touch attribution (MT) is the marketer’s goal. In this system, all touches are counted for cost and revenue. Multi-touch, however, requires further setup because you can weight the LT or FT differently than other touches. Marketo’s Revenue Cycle Explorer, for instance, automatically distributes revenue equally across the Programs that touch the Opportunity. Other reporting tools allow you to weight touches equally or placing emphasis on the First or Last touch, giving less weight to the middle touches. Each weighting option has challenges and I don’t necessarily recommend one or another. In most situations, equal weighting or a FT weighting provides appropriate insight into ROI.
As your understanding of attribution modeling improves, you will start to ask questions that can be resolved with more detailed modeling.
I can’t tell you which one to use for your situation, just that you will have to weigh the pros and cons and your ability to interpret the reports.
Step 4: Setting up Paired Fields
In Step 2, you created a framework for the fields and picklist values required. Each attribution model requires a minimum of fields, just like this:
- FT: just need
- First Channel Type
- First Channel Platform
- First Offer Type
- First Offer Name
- LT will use Most Recent instead of Original
- MT will use both, pairing the fields:
- First Channel Type
- Last Channel Type
- First Channel Platform
- Last Channel Platform
Step 5: Hidden fields on your forms
There are plenty of ways to do this, but here’s how it might look in Marketo.
Step 6: Setup URL Parameters
I wrote a brief URL Parameter tutorial last year.
Step 7: Have a spreadsheet to manage the URL parameters
Here’s the spreadsheet I use, feel free to adapt it.
Step 8: Setup a Program in Marketo
This is a Marketo centric issue. And it may be hard for you to manage if you have existing reports based on Programs.
It is possible to use Marketo Programs to collect Offer-Channel data. The most obvious way is to have a program for each Offer-Channel pair. You will end up with dozens of programs this way. I do not recommend this, however, it does work for some people. You might end up with:
We usually recommend a single Offer Program, with Tags to help identify the Offer content. Inside this Program is a registration flow that listens for the URL channel parameters, then assigns the Lead to a specific Channel SFDC Campaign.
Inside SFDC, you will have a Campaign Hierarchy:
- Offer Campaign
- Child Channel 1
- Child Channel 2
This system requires SFDC Campaign Influence to work. Reporting will be done in SFDC or another analytics tool. Download our resource: Report to Marketo Lead Source Setup. We can discuss Marketo RCE or other options, but this is a great starting point.
Step 9: Marketo Campaign to Process Leads to SFDC Campaigns
For the single Program method, you will need a campaign to listen for the Last Touch data and then assign the lead to an appropriate SFDC Campaign. This is just an example of how you might set it up.
Step 10: Marketo system to manage Last Touch to First Touch data.
You will need a workflow to update the First Touch field in case it is empty. While you could just try to overwrite it from the hidden field (and use Field Blocking), this is less risky in our opinion.
Step 11: SFDC Campaign Member Objects
In Step 8, we added records to SFC Campaigns, creating Campaign Member Objects. In a basic system, we can now start to report on this cross-object to study campaign influence. In a more complex system, we could add data to the Campaign Member Object to further study attribution and sales funnel.
Step 12: Reporting with Campaign Member Objects
It can seem hard to do proper reporting, but if you have a great SFDC Admin or data analyst, they can use the Campaign Member Object effectively. In addition, there are solutions that can provide this information if your budget allows.
This is just a checklist of steps. The work to do this in your system is very detailed.
The Quick Checklist for Attribution
Here’s a quick checklist of items you need to put together to build a proper attribution system.
- Mockups of reports you want to display.
- Setup Offer-Channel Attribution Lists.
- Choose the Attribution Model to start with.
- Setup Paired Fields in Marketo and the CRM.
- Setup hidden fields on the forms to work with URL parameters.
- Setup URL Parameters to collect data on forms.
- Spreadsheet to manage the URLs for each offer-channel combination.
- Marketo Program for the Offer.
- Marketo Campaign to manage adding leads to the right offer-channel campaign.
- Marketo system to manage LT to FT data.
- Take it one step further with SFDC Campaign Member Objects.
- Reporting tool that brings in SFDC Campaign Member and Influence.
Download Our Free Resource
Report to Marketo Lead Source Setup – Our guide will walk you through the necessary pieces of using a Lead Source Framework.
Greg Beazley says
Good post!
Josh Hill says
thanks!
justinnorriss says
Josh, thanks a lot for continuing this series on attribution. I was hoping to see a follow up to your post on the Perkuto blog. This is such important stuff and I think so few people are actually doing it well. More please!
I have actually been experimenting with similar offer-channel models for a few years now but have struggled with getting the flexibility in reporting that we needed. However, I think adding some custom fields to the Campaign Member Object could be the answer! I am excited to dig into this.
Question about cost reporting:
With using a single Marketo program and mapping to multiple SFDC campaigns, how would you handle posting costs and ROI reporting? Would you update these costs directly in SFDC only? Or post aggregated costs across all channels into the Marketo program (would seem to be much less useful for reporting this way)?
I appreciate the simplicity of a single Marketo program per offer but this would seem to be one limitation that speaks in favour of multiple Marketo programs for each offer/channel combo instead, if you wanted to leverage Marketo’s ROI reports.
Charlie Liang says
Nice Josh!
Josh Hill says
Hi Justin, thanks for the comment. As I mentioned in my email to you, it is better to plug in one Program and total up the Period Costs if you can, but reporting will be in SFDC with Full Circle CRM. An alternative is a program for each channel variation as long as you can name and tag them properly for RCE reporting. From what I can tell either way you have a lot of work.
Josh Hill says
Thanks!
Kyle McKay says
Thanks for the link back Josh, and great post. I like how Channel & Offer is more explicit than Lead Source & Lead Source Detail.
Emily T says
Hi Josh,
Great post! I’m trying to get a handle on some of the specifics of the SFDC campaign structure, though. Under this model, how would you structure in SFDC something like a newsletter that contains links to multiple offers? Would you do a separate SFDC campaign for each offer within the newsletter, housed under the parent offer SFDC campaign? (Meaning multiple SFDC campaigns for every one newsletter email)? Similarly, for an engagement nurture program, would there be a separate SFDC campaign for each email within the nurture, housed under the respective offer SFDC parent campaigns?
Thanks!
Emily
Josh Hill says
Emily, this depends on how you’ve structured your other offers. Usually each offer will have a Program so you can attribute revenue to it directly. You can also track success of the Newsletter blast and the Engagement itself. You may want to have multiple newsletter SFDC Campaigns, but this may depend on how you want to report on the use of the newsletter. In your case, success for the Newsletter=Click, while the target Offer=Fills Out Form (usually).