Building Marketo Bucket Programs for Tracking Content Across Channels

What I have learned over the years is that it becomes really hard and un-scalable to make a new Facebook, Twitter, LinkedIn, or Google AdWords Program in Marketo for every instance of an advertisement of your content. Take for example EverString’s State of Predictive Marketing.  I have that running in retargeting, search engine marketing, Facebook, Twitter, LinkedIn, Nurturing, email list rentals, etc etc. That can quickly get out of control with the number of Programs you would need to build.  Multiple that number against the number of new eBooks and reports and the volume of programs to build and keep track of quickly gets out of hand.

Instead I have built “bucket” programs for both the advertising channel and the piece of content. So for example the State of Predictive Marketing Report, if you download that report through an ad from Facebook you will belong to both the Content program AND the Facebook Master Program. To enable this method I created a Campaign Type in SFDC called “Content” and a Channel tag in Marketo called “Content”.  Then whenever we publish a new report, ebook, case study, video, cheatsheet, etc, a program and corresponding SFDC campaign is built to track all the visits and downloads of that content.

Here is a screenshot of our folder for all our content pieces.  All downloads across all channels are recorded in these programs. We can then easily run reports on total number downloads of a piece of content, pipeline sourced, pipeline influenced by the content.  Previously, I had the content spread across 20+ different campaigns and I had a really hard time calculating how many times a piece had been viewed.

 marketo bucket programs

Then here is a screenshot of on of our the advertising bucket programs.  The smart campaign to belong to this program listens for the URL of the landing page to contain Facebook in the query string.  I just know that when I’m creating an ad on Facebook, the URL of the landing page needs to contain the UTM of “Facebook” and this smart campaign will react.

Marketo UTM Parameters

 

Here is a screenshot of my Google Adwords program.  I clone these every quarter so that I can enter in new period costs based on how much we spent in that channel.

 Google Adwords in Marketo

The UTM fields can get replaced time over time as a lead interacts with more content. The smart campaign inside the Marketo program listens for the different values in the UTM_campaign= xyz to give each piece of content and campaign credit.

So for example if the landing page is posted to facebook the value for UTM_campaign=Facebook. But if the landing page is posted to an external email campaign in MarketingProfs, the value will be “12-2-marketingprofs”.  Examples of URLs I have in use:

http://pages.everstring.com/what-is-predictive-marketing.html?utm_campaign=12-2-marketingprofs

http://pages.everstring.com/what-is-predictive-marketing.html?utm_campaign=Facebook

The end result is that as a team we can track how content performs with multi-touch attribution and see if the content’s impact at different stages of our funnel.

How are you tracking content success across your channels and programs?

How I got to 0 Duplicate Leads #humblebrag

It wasn’t easy. Believe me.  And honestly I started with less duplicates than any other company I’ve ever worked for.

Coming into Fliptop and getting to basically start the Marketo instance from scratch, I knew that I wanted to build things my way (the right way) and that included getting the database as clean as possible.  There are many reasons why a clean, dupe free database is a best practice.

Now there is no such thing as a duplicate free database. Actually, I just thought of what that database would look like. An EMPTY database would be a duplicate free database.

There are tolerable levels for number of duplicates. Having anywhere between 5% to 10% of the entire database be duplicates is tolerable. I started my process with 4,200 duplicates out of an 85k database, representing 7% duplicates.

My first step was the narrow down how leads entered the system.  Do this step first as it is pointless to clean up the database without stopping how dirty data enters the system.  For me this meant switching out all the forms on the Fliptop website and the blog from a Salesforce web-to-lead to Marketo forms.  Marketo automatically de dups leads if the email addresses match. Salesforce does not. I had a bit of a problem with my engineering and customer success teams entering test leads into the system to test our own predictive scoring. I first cleaned up all those test leads and then built a data management campaign to go through on a monthly basis to delete test leads. 

testingscreenshot

Next I gave my sales reps a tool to add leads in with full contact information. I turned to InsideView as they integrate nicely with both Marketo and Salesforce. If the lead already exists in our system, InsideView will update it rather than creating a net new lead. My reps can research leads and add them into our CRM easily without creating a duplicate mess.

After closing down the avenues of how leads go into the system I could next turn to actually de duping the database.

The process to get to a place of zen and zero dups relied in large part on a tool I found a LONG time ago called DemandTools by CRM Fusion.

It is by no means the prettiest tool around but it gets the job done.  The tool comes with pre built “scenarios” you can run to do sweeps of the database.  Scenarios are basically like matching criteria on the leads, first sweep is to find leads with the exact same email address.  Then the next sweep finds leads with the same name and company name.  Each sweep the criteria loosens up, like the teeth on a comb and the matches on duplicates will become less precise. You can also de dupe leads against contacts and even accounts with similar pre built scenarios.

CRM Fusion Demand Tools

I probably ran 10 or more sweeps using their different pre-built scenarios on just Leads and then moved to de duping Leads against Contacts to whittle the list down. In then end there were probably 200+ leads left in my “Possible Duplicates” smart list inside of Marketo that I de-duped by hand. I know this sounds tedious, but when there were only 200 left I felt I could see the light of the end of the tunnel so I went for it.  The result is when I run the “Possible Duplicates” smart list in Marketo I see “No leads were found.”

No duplicate leads

So how do you handle how leads enter your system and managing duplicates?