SOLVED

Custom Product Score Trigger

Go to solution
Anonymous
Not applicable

Hey

We have 3 very different products in our portfolio and I would like to add a product score to leads in my database to better understand which product they are interested in.

My idea is to fire a custom trigger when customer reads a blog post or whitepaper which is dedicated to specific product.

Given the amount of content we prepare each month, it is not future-friendly just to keep URL list up to date, I would like to fire the trigger automatically on backend.

Is there any solution? I tried searching the Marketo Nation, but haven`t found any solution.

Thanks

1 ACCEPTED SOLUTION
Stijn_Heijthuij
Level 7

Hi Jakub,

At my previous company we used Munchkin to create a new page on certain locations on the website. Assuming you tag your pages with the products or businessline in your CMS, you can have Munchkin create a new page with a query parameter for those pages.

Biggest drawback here is that it creates a new page, so you can't trigger forms on that page as none are technically submitted. Take a look at the sample code below

jQuery.ajax({ url: '//munchkin.marketo.net/munchkin.js', dataType: 'script', cache: true, success: function() { Munchkin.init('XXX-XXX-XXX'); Munchkin.munchkinFunction('visitWebPage', {url: '/', params: 'product=product1&location=Blog'}); } });

This will help you drive up the score, but you won't be able to trigger off other activites that happen on the same page.

Let me know if you need some help?

View solution in original post

10 REPLIES 10
Anonymous
Not applicable

Hey! Thank you both!

Grégorie - you solution is correct, but it won`t work as we don`t always include product name in URL (for example when blog post is talking about more products...).

Stijn - that seems like the solution we are looking for! Only part I don`t understand is "you can`t trigger forms" - does it mean, that I can`t submit this javascript after the form is submitted?

Thank you!

Stijn_Heijthuij
Level 7

Hi Jakub,

When someone visits a real page about your products, the Munchkin code creates a fake entry into the activity log.

The real page will be for www.x.com/product1 and have no querystring parameters.

The fake page will be for www.x.com/product1 and have &product=product1 as a querystring parameter.

The problem occurs when you try to trigger of a form on the real page, with a querystring constraint on the fake page. Because they're 2 separate pages for Marketo.

An example would be: Send an alert to the sales team for product 1 when a lead fills out a contact request form on any page that has the hidden querystring &product=product1.

Since Marketo logs 2 pages, the querystring will be on the fake page and the form will have triggered off the real page.

If you have any questions, let me know or shoot me a PM and I'll show you an example.

SanfordWhiteman
Level 10 - Community Moderator

No need for a redundant "fake" hit if the intent is to manipulate the logged URL.  If you want to add additional information such as META tags or other identifying marks about the page, set the document hash before running Munchkin.init().*

Alternately, you can replace the query string on the fly before Munchkin.init(), but this won't work in IE8/9.

* Obvs. if your page uses hash-bang navigation you'll have to extend your existing logic.

Stijn_Heijthuij
Level 7

Hi Sanford,

I'm super interested in what you're trying to say, but I can't decipher it (I'm not a coder). Is there a way in which you can dumb this down to my level? Much appreciated.

SanfordWhiteman
Level 10 - Community Moderator

For example:

     document.location.hash = document.querySelector('META[name="description"').content;

     Munchkin.init('AAA-BBB-CCC');

The logged Visit Web Page would be:

     https://nation.marketo.com/inbox/#Manage your inbox

Using this method, any supplementary information you can read out of the page content can be appended to the URL on the first hit and there's no need to create a second, fake hit. 

In modern browsers, instead of changing the hash you can replace the entire query string with whatever you want (without refreshing the page, of course). It looks cooler and I actually prefer it, but you won't get IE 8/9 compatibility unless you force a refresh in those old browsers.  Changing hash works in all browsers, but some sites are deliberately sensitive to hash changes as part of their navigation (web apps like Jive, for example) so you'd want to add to existing logic if you have such a site.  (Then again, if you use the hash this way you may not care about IE8/9 so much so you can use the other method.)

Stijn_Heijthuij
Level 7

Hi Jakub,

At my previous company we used Munchkin to create a new page on certain locations on the website. Assuming you tag your pages with the products or businessline in your CMS, you can have Munchkin create a new page with a query parameter for those pages.

Biggest drawback here is that it creates a new page, so you can't trigger forms on that page as none are technically submitted. Take a look at the sample code below

jQuery.ajax({ url: '//munchkin.marketo.net/munchkin.js', dataType: 'script', cache: true, success: function() { Munchkin.init('XXX-XXX-XXX'); Munchkin.munchkinFunction('visitWebPage', {url: '/', params: 'product=product1&location=Blog'}); } });

This will help you drive up the score, but you won't be able to trigger off other activites that happen on the same page.

Let me know if you need some help?

Anonymous
Not applicable

Hey! I've implemented your solution, but I can't find it in Marketo to verify whether it's working.

It's working on this article - http://www.socialbakers.com/blog/2476-six-reasons-you-need-promoted-post-detection-today

Query parameters from console - _mchQp is what I need to see in Marketo - but I can't find it - http://prntscr.com/9boj7z 

General header in console (original URL) - http://prntscr.com/9boiqn

Thanks for your help!

Anonymous
Not applicable

OK, I found it.

Smart report setup in Lead Database - http://prntscr.com/9cg6sp

Lead detail with query parameters - http://prntscr.com/9cfzk7

SanfordWhiteman
Level 10 - Community Moderator

FYI: I can't recommend loading the Munchkin bootstrapper (munchkin.js or munchkin-beta.js) asynchronously. The actual Munchkin library (/{version}/munchkin.js) is already loaded async, as is the tracking hit itself, so it can be another worry point when you have missing hits.

In general, while it can be tempting to treat analytics functions as disposable tasks in the browser, when reporting is disrupted it's better safe than sorry (and "safe" should probably include my Munchkin reliability extension, which you can contact me about if you're interested).

Grégoire_Miche2
Level 10

Hi Jakub,

You can use a "contains" in your "visits web page" trigger and filter on portions of the URL. For instance, containts /productname1/

This supposes that your URL indeed contains this information, which would be a good practice anyway on a SEO perspective.

I had written an Idea a long time ago in the previous on using meta title, meta description or meta keywords in visits web page tigger or visited web page filter for that precise need, but it has been discarded when migrating to the new community.

I may rewrite it again, then

-Greg