Skip navigation
All Places > Products > Blog > 2018 > November > 05

Products

November 5, 2018 Previous day Next day

***Posted on behalf of Rachel Noble, Manager of Client Services at Digital Pi***

 

Reporting on multi-touch attribution

If you have Revenue Explorer (aka Marketo Advanced Report Builder), you’ve seen (FT) and (MT) show up on a number of reports. Marketo gives a full breakdown of these two distinct types of attribution, but today we are going to focus on (MT): Multi-Touch.

 

Traditionally, multi-touch attribution provides demand-generation analysis.

 

Multi-Touch answers a complicated business question, "Which programs are most influential in moving people forward in the sales cycle over time?"

- Marketo

 

To get a basic understanding of how multi-touch attribution really works, let’s start by looking at the Opportunity Influence Analyzer in the Analytics section of Marketo.

Image_01_Elevate_DC.jpg

 

For any opportunity, Marketo will show the story of how that opportunity was influenced by marketing. The little red dots above are clickable, and are comprised of interesting moments and program successes.

Image_02_Elevate_DC.jpg

Understanding which marketing interactions influenced an opportunity will help you understand multi-touch attribution. (MT) is essentially the same story, but presented in a way that allows you to aggregate or slice-and-dice the data. In Revenue Explorer, (MT) is calculated by taking an opportunity and splitting credit evenly between each program success.

 

For example, let’s take Jane Doe. She attended a webinar, visited your booth at a tradeshow, and then downloaded an eBook from your website. Shortly after, an opportunity for $300,000 was opened and associated with her contact record. Now, we have $300k of pipeline that can be directly connected with the webinar, tradeshow, and eBook. A (MT) opportunity report will credit ⅓ of the opportunity to each of these, and a (MT) pipeline report will credit $100,000 each to the webinar, tradeshow, and eBook.

 

Let’s look at one more example: John Smith. He was acquired via a list purchase, engaged with a direct mail piece, and then visited your booth at the same tradeshow before an opportunity for $100,000 was opened and associated with John. Since the list purchase was not a program success, it will not receive credit when using (MT) attribution. But the direct mail and tradeshow engagements were successes, so each will receive ½ an opportunity, and $50,000 pipeline credit.

 

Now that we know how multi-touch is calculated, we can pull pipeline reports per program. Perhaps we want to know how much (MT) pipeline is associated with the tradeshow. In this case, Revenue Explorer will credit the $100,000 from Jane and the $50,000 from John for a total of $150k in pipeline from the show.

 

Image_03_Elevate_DC.jpg

 

Now, we can aggregate the data. What if we want to know the total pipeline associated with all of the tradeshows? A multi-touch pipeline report by channel will return the total sum of (MT) pipeline associated with each channel.

 

Image_04_Elevate_DC.jpg

 

How do you know when to use (MT) attribution?

(MT) focuses on program successes, which are direct representations of engagement. If your goal is to drive engagement (or MQLs, or pipeline, or demand generation, etc.), then you should use a multi-touch attribution report. If, however, your goal is new-name acquisition, stay away from these reports and focus on first-touch attribution instead.

 

Reporting when you use dynamic content

There are two places in Marketo where you can use Dynamic Content: on a landing page or in an email. Today, we’re going to focus on reporting when you use dynamic content in an email.

 

Dynamic content allows a marketer to deliver the same email to an audience with content variations based on segmentation. For example, if you have your database segmented by industry, you can send someone in the education industry Email A with an introduction specific to education, and a generic introduction to everyone else. It’s a powerful tool, but reporting on dynamic content can be complicated.

 

Of course, you can always create an Email Performance Report or an Email Link Performance Report to understand the performance of the overall email, but what if you want to understand how each dynamic variation performed? Here’s the easiest method. First, create an Email Performance Report. In the Smart List, add a filter referencing a specific segment:

Image_05_Elevate_DC.jpg

Cloning this report and updating the segment will give you a separate report for each version of the email that went out.

 

However, there’s a catch! It is possible for someone’s industry segment to change between the time they receive the email and the time you pull your report. So how do you know for sure which version someone received?

 

When building your program, first identify how many versions of the email you will have. Let’s say in this example, we have industry-specific dynamic content for:

  • Education
  • Manufacturing
  • Technology

As well as a generic email for everyone else.

 

When we send the email, we will also create a smart campaign to assign recipients to static lists depending on their segment.

If you've been around the block with Marketo Smart Lists, you know there's no Ends With operator, only Starts With and Contains.[1]

 

This puts a damper on a common need: accurately searching for an email domain (@gmail.com, @example.co.uk) or TLD (firmographic clues like .edu, geographic ccTLDs like .cn).[2]

 

Some have attempted extravagant combos of Contains and Not Contains, which require a whole lot of prep just to determine that... they don't work. (Read my comments on the linked post for some examples of how such approaches are broken.)

 

There's a much easier way: maintain a custom field, here called Matchable Email, that always holds the value of {{Lead.Email Address}} followed immediately by two quotation marks "":

 

ss

 

ss

 

Then, to do a domain search, search that Matchable Email field for Contains @example.com"", which is equivalent to searching the original Email Address for Ends With @example.com:

 

ss

 

Pretty easy, right?

 

Why two quotation marks (“”)?

The key is to add a sequence of characters to the end of the email address that can never occur in the middle of the email address, so Contains @{{domain}}{{characters}} is functionally equivalent to Ends With @{{domain}}.

 

Finding those appropriate {{characters}} is a lot harder than it sounds. For awhile I was lazily appending $ to the end, because I like the fact that the dollar sign represents end-of-line in regular expressions, so it was easy to remember. But the email address "$ke$ha@marketo.com$"@gmail.com — note the quotation marks around the mailbox part, it wouldn't be valid without those — is a Gmail account, but would match Contains @marketo.com$.

 

Yes, RFC 5321 is just that generous. There are so many crazy-but-valid email addresses, however inadvisable it would be to use them in the real world, that it's hard to find something that, without exception, can only occur outside of a valid address and so can be used as your anchor point.[3]

 

I think I've found that something, though. Two quotation marks in a row "" can occur inside an email address, but they can never be preceded by a character that is a valid part of a domain name.

 

Let me explain.

 

First of all, as you may already be confused by this part, it's possible to have a quoted mailbox name (called a quoted-string in the standard). That's how you can add spaces on the mailbox side of the @: "sandy spacebot"@teknkl.com is a valid SMTP address.

 

You can also put quotation marks inside an already quoted mailbox name, but if you do so, you have to escape them with a backslash.  Thus "Clarence "Frogman""@henry.com" is not a valid email address, but if you escape the quotes as "Clarence \"Frogman\""@henry.com it is valid. Even though this address has two quotes in a row "" (see the characters right before the @?) they are by necessity preceded by a \.  And the \ can never be at the end of a domain name. 

 

Therefore you can accurately search the Matchable Email field for a string that Contains @gmail.com"", knowing that that sequence of characters cannot be found at the start or middle of the value, only at the end.

 

Enjoy!

 

 


 

 

Notes

[1] As a sometime database architect, I've never understood the technical reasoning and figure it must be just legacy-code-nobody-wants-to-touch syndrome. When searching strings, Starts With is faster than Ends With unless specific indexing is used; yet Contains and Ends With have equivalent performance — often terrible performance, don't get me wrong, but roughly the same either way. Plus, it's way easier to add indexing to speed up Ends With than it is to optimize Contains (an index on the reversed value in the first case, n-grams in the second case, FWIW). But here we are.

 

[2] My colleague EU points out that Marketo attempts to optimize a search for a domain-like pattern, one that begins with the character @, and turn it into an SMTP domain search. The problem is that it still doesn't work: The valid address "me@gmail.com"@outlook.com will (as we would expect given the concept of contains) match both Contains @gmail.com and Contains @outlook.com so it doesn't successfully emulate Ends With. It will also false negative on Contains @outlook.co, which is just plain wrong.

 

[3] The way to do this in a technically complete manner is to add an ASCII control character (like ASCII 30 RECORD SEPARATOR, one of my faves) which is never allowed, not even in quotes. But while you can append such a character with a specially hacked Change Data Value, searching for those characters is, unless it's just a one-time thing, effectively impossible. So we'll have to make do with "".

Filter Blog

By date: By tag: