Tag Management Systems

If adding Marketo Measure JavaScript via hardcoding is not possible, another option is to add the Marketo Measure script using a Tag Management System such as Google Tag Manager (GTM) or Tealium.

Using tag management systems to deploy Marketo Measure JS can result in a potential 5-10% data loss due to script load time latency. Essentially, if the tag management tool does not load quickly enough, Marketo Measure JS also cannot load quickly enough and could lose first referrer information.

A common practice is to deploy Marketo Measure JS via a tag management tool until timing/resourcing is better to move to hardcoding.

To add Marketo Measure script through a tag management solution, you need to create a tag and add our JavaScript within it. Apply this tag to all the pages on your website that you want tracked.

Marketo Measure recommends that any page view should cause the tag to fire. Also, it’s best to give Marketo Measure the highest priority in the firing order and make sure that there are no synchronous scripts in front of the Marketo Measure tag to ensure the highest data quality.

More information can be found here.

Additional Considerations

Marketo Measure JavaScript is domain-based so it is automatically able to handle any subdomains as long as the JavaScript is on the pages and the root domain is the same as the domain used to create the Marketo Measure account.

However, if you are using any separate or international domains, be sure to let your Marketo Measure Consultant know. The domains must be manually added to your account on the Marketo Measure end so that Marketo Measure knows to tie the additional domains’ data to your account. So, send any separate/international domains to your Marketo Measure Consultant.

If you use any third-party pages, have a conversation about your use case with your Marketo Measure Consultant. In general, you will want to know if you can add a custom version of Marketo Measure JavaScript to track those pages if appropriate. If this is not possible, tracking via CRM Campaign touchpoints will be explored with your Marketo Measure Consultant.

Do you have any forms that should NOT be tracked by Marketo Measure since they don’t necessarily make sense for attribution (for example, unsubscribe forms, customer logins, and so on,)? If so, you will want to add the exclude code in this article to each form

Do you have any non-secure pages? You should secure them as navigating between a secure/non-secure page breaks the tracking session.

Be sure to have a conversation with your web team so they know Marketo Measure JavaScript should always be on the appropriate web properties. If new pages/forms/sites are introduced, make sure deploying Marketo Measure JavaScript is part of the protocol.

If a Web Application Firewall (WAF) warning is triggered during the JavaScript setup, users can either disable that WAF rule or allowlist the cookies, as the below example:

Forms to Pay Extra Attention To

Multi-form submission

  • Issue: If you have multiple linked forms as part of a single form submission, it’s possible that the first form generates a touchpoint even if the complete form is not submitted.
  • Solution: you need to force one of the forms to report the user to Marketo Measure based on cached data and discuss abandonment practices. Generally, report user code can solve for this.

Account login (not creation)

  • Issue: Marketo Measure recommends not creating touchpoints for subsequent account logins, as these tend to dilute the attribution story.
  • Solution: Add Exclude Code to the account/customer/partner login form.
NOTE
We do recommend creating a touchpoint for the creation of an account or trial.

Download of asset

  • Issue: If your assets are gated, Marketo Measure tracks downloads as form fills. If your assets are not gated, there are limitations to what we can report on without customization.
  • Solution: Gate the asset if you’d like it to be tracked by Marketo Measure JavaScript. If this is not an option and you’d still like a touchpoint for it, consider syncing a CRM Campaign instead.

iFrames

  • Issue: iFrames essentially function as pages within pages.
  • Solution: The Marketo Measure JS must be deployed directly within the iFrame header for us to attach to the form correctly.

Lightboxes

  • Lightboxes are typically pop-ups that contain iFrames
  • Solution: the Marketo Measure JS must be deployed within the header of that hosted iFrame.

Multiple forms on a page

  • Issue: If there are multiple forms hosted on a page, you might not be able to tell which specific form was filled out with the Marketo Measure Form URL field.
  • Solution: If you must know which form was filled out, explore setting up dynamic URL hashing with your web team.

Forms organized in <div> format

  • Issue: Marketo Measure JS has a hard time recognizing forms organized in <div> format so custom code can be needed.
  • Solution: These report user templates can be used by your web dev team to add the needed code.

Chat

  • Issue: If you use a chat provider, special handling may be required.
  • Solution: Marketo Measure integrates with Drift, Olark, Livechat, LivePerson, and SnapEngage. All other platforms need to be tracked through CRM campaign membership.

Second Domain

  • Issue: Marketo Measure JavaScript is domain specific so extra steps must be taken for any separate or international domains. Marketo Measure JS can handle subdomains on the same root domain.
  • Solution: If you own multiple root domains, that you’d like to be tracked by Marketo Measure be sure to add JS to the domains AND let your Marketo Measure Consultant know which domains should be manually associated to your Marketo Measure account.