Skip navigation
All Places > India Virtual User Group > Blog

Marketo is a software application that brings together tools marketing and sales teams need to generate more high-quality sales leads and drive faster revenue growth. Marketo Lead Management provides the functionality marketers need to generate leads and track leads from initial demand through to sales and help marketers understand their marketing impact on the business including revenue. Once the leads are engaged, a marketer can push the record from Marketo to the CRM tool. Marketo can also keep records that are not ready to purchase, warm, by placing them in a nurturing program. Here are the core functions that the software provides:

Segmentation, list management, and targeting
Lead nurturing/ Multi-touch Campaigns
Lead scoring
Email Deliverability and Reputation Management
Batch Email marketing
Event marketing including Webinar and Event tool integration with Marketo
Content marketing (ebooks, white paper etc)
Triggered Email (Real Time)
Landing pages
Dynamic Content
Mobile Optimized email and landing page support
AB Testing

Outlook Integration
Marketing influence on revenue reporting
Online behavior tracking on Website
Lead scoring and Grading
Data quality and Append
CRM synchronization
Automatic notifications
Automatic sales alert and task for Sales owner
Lead lifecycle
Sales Intelligence (Marketo Sales Insight)
Revenue Cycle Modeling
Program ROI Analytics
Opportunity Analyzer report
Email performance report
Landing page performance report
Social listening and tracking
Social Sharing and campaigns
Web analytics
Multi-Touch Revenue Attribution
Revenue Cycle Metrics
Partition of database
Separate and secure workspace and partition for different business group and enable/disable visibility rules
Measures Marketing ROI
Program Import/Export
Users roles and permission
API / Integration
Program Tags and Channel


Marketo features explanation


Batch Email Marketing Email marketing is the ability to create WYSIWYG emails and newsletters with easy to use design tools; send emails to groups of customers and prospects, and track and report on deliveries, opens, and clicks so you get a complete view of email performance.


Email Deliverability and Reputation Management Simply sending an email cannot impact revenue if the emails do not make it to the recipients’ inboxes. Since marketing automation typically replaces a stand-alone email service provider (ESP), your vendor should provide functionality and services to ensure inbox delivery. This can include opt-in management, bounce handling, unsubscribe processing, and suppression lists, as well as higher-end services such as dedicated IP addresses and capabilities like email preview, spam checking, link validation, and delivery monitoring.


Triggered Email (Real-Time) Triggered email is the ability to listen for specific customer behaviors and events and respond with an appropriate real-time email. For example, when a prospect clicks on a specific link, a sales rep logs a call, or a lead score goes above a certain threshold, you can automatically send the right message at the right time. Personalized, 1:1 emails based on real-time behavioral data can increase open rates by 50% and conversion rates by 350% (Jupiter Research).             


Landing Pages The landing page is an essential part of many marketing campaigns. By directing clicks to a landing page customized for a specific email rather than a generic home page, marketers can significantly improve their conversion rates. That’s why many marketing automation systems include the ability to build WYSIWYG pages with a graphical interface, without help from IT of the Web department.


Forms Registration forms can be placed on landing pages, microsites, and the corporate website. When a prospect or customer fills out the form, the activity is captured and the lead is added to the database (if it is new). Some systems have “progressive profiling”, which are smart forms that recognize known visitors and ask different questions to build out the profile over time. Also, some systems allow for “social sign-on”, letting users register on landing pages using their social network credentials.


Testing An effective split-testing strategy lets you learn what works, maximize response rates, and can raise your conversions by 48% or more. You can test emails (subject lines, copy, graphics, calls to action, frequency, timing, etc.) as well as landing pages, forms, and so on.        


Dynamic Content Customize emails and landing pages for specific segments. Text, images, and calls to action can be customized based on criteria, including location, industry, job title, and much more. For example, current active opportunities can receive different messages from early-stage prospects.


Mobile Optimized As mobile devices become increasingly popular in business, the marketing system can support mobile-optimized emails and landing pages.       


Sales Emails This is the ability to personalize “from addresses” and signatures on behalf of individual sales reps, so that automated emails appear to come from the specific sales owner.


Marketing Lead Database A marketing lead database is the system of record for your most important marketing asset: your leads and contacts. A marketing lead database goes beyond the data in your CRM system to include a rich view of all marketing interactions between each prospect and your company, including website visits, email clicks, scoring changes, data updates/history, and so on.


Segmentation The ability to precisely micro-segment your database and target the exact right list of leads and contacts is essential to the success of all marketing activities. These filters should include a combination of demographic and firmographic attributes (title, company size, location) as well as behavioral filters and CRM information. Sample lists can include high-score leads in a particular region who visited your website in the last seven days; or contacts inactive opportunities who registered for an upcoming webinar; or prospects who received an email offer and did not click through but visited your website anyways.


Multi-touch Campaigns / Lead Nurturing This is the ability to automate “drip marketing” campaigns that send relevant messages over time, based on prospect behaviors and pre-defined campaign steps. This can include automated email marketing flows, but can also include other channels as well. Often, this capability is used to run lead nurturing workflows designed to maintain and deepen relationships with prospects over time.


Online Behavior Tracking This is the ability to track which emails a prospect opens and clicks, what webpages they visit, what keywords they use, even what they say on social networks – all with the goal of understanding who they are, what they are interested in, and where they are in the buying process with your company.


Lead Scoring and Grading With lead scoring, you automatically qualify leads based on demographics and BANT criteria as well as specific prospect behaviors, including recency and frequency. By tracking each of these factors and assigning appropriate weights to each, you get a comprehensive view of prospect interest and engagement. More advanced capabilities include reducing scores based on inactivity and supporting multiple scoring models that separate demographic fit from behavioral interest, as well as scores for different products, divisions, etc.


Data Quality and Append Do you have dirty data full of duplicates and missing records? CRM data is often very dirty, which isn’t a problem for salespeople working with one record at a time but making it hard to use for marketing. Data quality is an essential underpinning of any successful marketing program, consisting of deduplication, cleansing, and appending. Deduplication is the process of recognizing leads and contacts you already have in your database to prevent duplicates before they come in and merging any duplicates that do exist. Cleansing is the process of standardizing data, such as titles and company names and removing bad data such as contacts that are no longer with the company. Appending means filling in missing or incomplete data, such as adding additional contacts to an account or filling in missing fields such as phone number or industry.


Automated Sales Alerts and Tasks This is the ability to create tasks automatically and provide real-time sales alerts over email, RSS or mobile devices. It can be important to ensure Sales receives and acts on lead information in a timely fashion.


Lead Lifecycle Workflows This takes marketing automation beyond email and web marketing, extending the workflow engine to integrate with the CRM system to create complete lead management workflows. It includes automated data field updates (e.g. update lead status based on changes to the lead score); automated list management; and lead routing/territory assignment rules. It also lets you ensure Sales follow-up by creating tasks directly in the CRM system, reassigning leads if they don’t follow-up, and converting hot leads to opportunities. And it supports lead recycling processes, where sales leads are passed back to marketing for further nurturing.


Revenue Cycle Modeling This is the ability to define the stages for how leads flow through the revenue cycle, automate the rules for how leads move from stage to stage, and to provide an easy to understand the framework for the sales and marketing process. It provides the foundation for establishing clear rules governing how leads the transition from one stage to the next and assigning Service Level Agreements for lead response and disposition.


NOTE: This information has been collected from the Marketo website and different online source

Harish Gupta

Marketo Email Scripting

Posted by Harish Gupta Jan 5, 2020

Email scripting in Marketo allows you to apply advanced logic to your Marketo emails that can’t be done with snippets or dynamic content.

Here are the few examples which show in which scenarios you can use Email scripting

  • Capitalize First Letter of the Lead’s First Name: This will capitalize the first letter of the lead’s first name, even if the value in the Marketo database is lowercase.
  • Hide First Name Salutation if the First Name Field is Empty: Hide the first name salutation if the first name field is empty using this script.
  • Greetings Based on Gender: Change the greeting in an email to Ms or Mr based on the lead’s gender.
  • Display Different Text Based on a Field Value: Display different text in an email based on a field value. This can be a little bit easier than setting up dynamic content since you don’t have to create segmentation rules.

Few eg. of Email Scripting:

Get the current date:

  • #set ($nowDate = $date.format('yyyy-MM-dd',$date))

Read the custom object value and generate the email body dynamically:


<table cellspacing="0" cellpadding="0" border="0" width="100%"> 


#foreach( $object in $Custom_cList )  


<td style="font-family: 'Nunito Sans', Arial; font-size: 16px; line-height: 24px; color: #2d323d;"> <a href=""> $object.fieldinCustomObject</a></td>




Set the URL and add token in the url

#set ($pUrl = ""+$object.UTMSource+"?email=${lead.Email}&firstName=${lead.FirstName}&lastName=${lead.LastName}&cid=marketo")

To get the substring from the url:

#set($fullURL = $object.URL)

#set ($index = $fullURL.indexOf('#'))

#set ($first_url= $fullURL.substring(0, $index))

#set ($second_url= $fullURL.substring($index))

Recaptcha is the service that protects your website from SPAM and abuse. Adding Recaptcha for one form on the page in Marketo is a very easy task but when you have to add Recaptcha on multiple forms on the same page hosted in Marketo then it's really a painful task. Use the below generic script on your template or page and add as many forms as you want, the script will replicate the Recaptcha automatically as per the form count.


MktoForms2.whenReady(function(form) {

var widgetId,



var formEl = form.getFormElem()[0],

idForCaptcha = + '-captcha',

$parentContainer = $(formEl).closest('.mktoForm'),

$recaptchaEl = $('<div/>').attr('id', idForCaptcha);


recaptchaEl = $recaptchaEl.get(0);

widgetId = grecaptcha.render(idForCaptcha, {

'sitekey' : 'Add your site key' });

form.onValidate(function(builtInValidation) {

if (!builtInValidation) return;

var recaptchaResponse = grecaptcha.getResponse(widgetId);

if (!recaptchaResponse) {


} else {



lastRecaptchaUserInput: recaptchaResponse






What are UTM Parameters:

UTM parameters are simply tags you add to a URL — when your link is clicked, the tags are sent back to Google Analytics, Marketo and tracked. With UTM parameters, you can tag your links to gauge the effectiveness of your campaigns and identify the best ways to drive more visitors to your website.


Using UTM parameters, you can find out how much traffic came from a particular ad channel. You can use UTM parameters in newsletters, cost per click (CPC) campaigns, on your blog… the possibilities are endless!


Example URL with UTM parameters:


Types of UTM Parameters:

There are five UTM parameters (three are required):


1. utm_source (required): Identify the source of your traffic such as: search engine, newsletter, or other referral.

example: utm_source=newsletter


2. utm_medium (required): Identify the medium the link was used on such as email, CPC, or other methods of sharing.

For a newsletter, the medium would be “email”
Example: utm_medium=email


3. utm_campaign (required): Identify a strategic campaign (e.g. product launch, new feature, partnership, etc.) or specific promotion (e.g. a sale, a giveaway, etc.).

Example: utm_campaign=product-release-2019-dec


4. utm_term: suggested for paid search to identify keywords for your ad. Let’s say you’re running a Google Adwords campaign for your non-profit WordPress theme. You’d have specific keywords picked out for your campaign.

Example: utm_term=wordpress-theme , utm_term=non-profit-theme,, etc.


5. utm_content: suggested for additional details for A/B testing and content-targeted ads.

Let’s say you have three calls to action (CTA’s) on your blog. You have a CTA in your header, a big button CTA in your sidebar and a CTA farther down the page after your blog post but before the comments. Which CTA is sending the most traffic to your product page?
examples: utm_content=cta-top-banner, utm_content=cta-sidebar, utm_content=cta-bottom


How to Build UTM Tagged URLs:

To understand how to build URL’s containing UTM parameters, let’s discuss the example URL from earlier:


UTM parameters are initialized by the question mark “?” at the end of the base URL.


Every UTM parameter starts with its name ( Custom field ID e.g. utm_source) which is followed by an equals sign “=” which is then followed by the input/argument (no spaces).

Each UTM parameter is separated by an ampersand sign “&”.

How to capture UTM parameters from the link of the landing page and attach it to a person in Marketo?


Required Assets:

  • Form (should have the 3 hidden custom fields for UTM and form embedded in the landing page)
  • Landing Page (should be created in the Marketo)
  • Hidden Fields (where UTM parameters fields will be stored)
    UTM Campaign
    UTM Source
    UTM Medium



1. Create a campaign with an email content containing a link to the landing page.


2. The link to the landing page should have the attached UTM parameters in the following format:


Here, utm_source, utm_medium, and utm_campaign_id are the fields stored in the Marketo whereas xyz, email and 123 are the corresponding field values.


The UTM parameters will save the value to Marketo upon form submission by the person. At the form level, in the hidden fields


Note: You may add any number of UTM fields separated by “&” however the first UTM parameter should start with “?”


3. Click on the hidden fields in the form and click on AutoFill


No alt text provided for this image 
Select the "URL parameter" in the Get value from a drop-down field and give the UTM parameter name which you have used in the URL.

No alt text provided for this image
4. Repeat step 3 for all the UTM parameters used in the URL.
Now upon submission of the form by any person, the form field values will be saved to Marketo databases


One of the challenges which marketers face is build-up over time of activities with inconsistent program names. Without a clear and logical method of organizing and naming the folders, it becomes very difficult for any marketer to find the correct program and data. Results of such disorganization can include operational and resource inefficiencies as well as inaccurate reporting.


Parameters to be evaluated during Program audit:


  • Have programs templates been built for major marketing activities e.g. Email, nurture, events, web?
  • Do teams following the process of program template cloning for all new program?
  • Does the program have folder structure that goes 2-4 levels deep and includes, at minimum the year, the month, initiative, tactic and program owner?
  • Does the program use program tokens?
  • Have the assets and smart campaigns with in the program been named generically?
  • Does the program have all the correct progression?
  • Does the program template have progression to move the person from one stage to another?
  • Does program have period cost for reporting in RCE?


Guidelines to be considered while building the better program structure:


  • Create the program templates for each type of program incase the template is missing
  • Create the progression in all the programs/programs template so the person can move from one stage to another in the program
  • Add the necessary token in the program template
  • Establish a standard practice by which all programs are routinely tagged with cost, channel and other relevant information
  • Separate out and archive old and/or unused programs
  • Develop a universally usable and easily understood program naming convention

There are two approaches by which we can sync the SFDC campaign with our Marketo program.

 1)      At Program level:

Click on Setup tab of program and then drag and drop the SFDC campaign sync and then create a campaign if it’s not created yet or search for the existing campaign.

This approach will sync all the leads into SFDC campaign irrespective of their status. As soon as the program will have new members, all those new members will get synced with Salesforce campaign with their status.

To use this approach, you have to make sure that your program status and SFDC campaign status are same.

To get the correct success rate, you have to change the status by smart campaign.

             Eg. Change program status to Engaged or Converted (Depend upon your progression in channel.)

CONS: Once you will set the SFDC campaign id at program level, then you cannot use the same campaign id for another program at program level. Now in this Scenario the Naming convention is really helpful. If you are not using any Naming convention, then you will not able to find the program which is associated with SFDC campaign id. Then you need to reach support team and ask them to provide you the program name. There is already an idea created by Grégoire Michel in the community Being able to identify in SFDC when a campaign is mapped with a program.

 2)      SFDC campaign in Smart Campaign Flow Step:

This approach will sync the leads with SFDC only when the lead will fulfill the criteria set in Smart list tab. 

E.g. We only want to sync leads who will fill the form or we want leads who are ready for sales team.

In this approach if both Campaign and program channel has different status, then also we can sync the leads and change their status as per the SFDC campaign status by using the flow step “Change status in SFDC campaign”.

Eg. Status in Marketo Program-> Clicked, Converted

    Status in SFDC campaign -> Sent Responded

To see the conversion rate of individual forms, we follow the usual approach of creating the landing page report. Have you ever wondered, what will happen if you are placing the form using the Embedd code on the Marketo hosted Landing Page? Will the Marketo still show the conversion data to you on the landing page performance report or under statistics on a landing page? The answer is NO. Marketo doesn't show any conversion rate if you use Embedd code to place the form on the web page. Let us look at below scenarios where we may encounter this issue:

  • The requirement to place more than one form on the same web page wherein each form should pop up on different CTA

  • You may have only one or two global forms which you are using on all your web pages

  • You may use one form and show the same form in pop up on different CTA on the same landing page

To implement any of these scenarios, the usual approach is to use Embed code, but this will result in the loss of the conversion statistics in landing page performance report and under statistics on the landing page in Marketo.

Marketo treats the embed forms very differently from the Named Form element on the Marketo hosted Landing page. To get the conversion rate data in the Landing page reports, Marketo suggests using the Named Form element on the Marketo hosted Landing page.

If you use both Named Form element and Marketo Embed code, then there is a possibility that the form will show twice in the same pop-up and upon submission, the two conversations will happen for one submit.

Here are the steps to implement this solution successfully

1. Edit your template and add the Named Form Element:


<div class="mktoForm" mktoName="ContactForm" id="ContactForm"></div>

Note: If you have more than one form to use on the same page then add the respective number of Named Form elements on the template. You can add these at the end of all the elements in the template.

2. Add one Rich Text Element

<div class="mktoText" id="scriptText" mktoName="Script for Popup">

3. Edit your Marketo hosted landing page and select the form in the Named form element

No alt text provided for this image

4. Edit the Rich text element created in step 2 and add the below code:


<a href="#" id="popup-link">Click Me</a>



<script src=""></script>

<script src="//"></script>

<script type="text/javascript">// <![CDATA[



var formObj=MktoForms2.getForm('FormID");

// Add the Marketo Form Id which you have selected in Step 3. You can get the Form id //either from embed code of the form or select the form and check the four digital form id in // the url eg. (2346 is the Form id)

MktoForms2.whenReady(function (formObj) {  




// ]]></script>


Note: If you are using mulitple form on the page then create a custom funtion in the javascript and pass the form id in the function as a paramter and then load the form object using the getForm() function and follow the above approch.

Amit Jain

Knowing your Marketo Fields

Posted by Amit Jain Nov 14, 2019

A healthy database is the key to your all Marketing initiative, planing and executions. Until you know what all fields are available to you and how you can utilize those, you will not be able to make most out of it. In this Blog, I’m going to explain the different categories, types and limitations of the fields available in a Marketo Database.


Types of Fields:


Let’s take a look on the different categories of the fields available in Marketo:

  1. Marketo Standard fields: These are the fields that come out of the box with a new Marketo instance. You can find a list of all standard fields here:
  2. System Managed fields: You might have noticed that on lead details page, there are some non-editable fields. These are also Marketo standard fields but these fields are being managed by Marketo back-end system. You can not update/edit these fields by any means. You can find a list of these fields here:
  3. Custom fields: If you need to store additional information in Marketo and that doesn’t fit into the standard set of fields, you can create custom fields directly in Marketo. Don’t know how to create custom fields in Marketo? check it out here:

  4. Fields Synced from CRM: These are the fields which were created as a result of the CRM sync. (I’ll be referring SFDC as CRM in this document.)

Field Data Types:


Data Type is a particular kind of data item, as defined by the values it can take or the operations that can be performed on it. For example, number, string, char etc. We can do arithmetic operations on number not on string.

Like any other database system, Marketo also have defined data types for the field creation as below:


Field TypeDescriptionExample
DatetimeUsed for inputting a date & time. Follows W3C format (ISO 8601). The best practice is to always include the time zone offset. Complete date plus hours and minutes: YYYY-MM-DDThh:mm:ssTZD where TZD is “+hh:mm” or “-hh:mm” Note: Some Asset APIs return “Z+0000” as TZD for updatedAt and createdAt.2010-05-07T15:41:32-05:00
EmailA string type field which accepts email
FloatA number field which contains of Real Numbers and can use a decimal place.10.4
IntegerWhole numbers10
FormulaFields whose values are generated by manipulating data from other fields present on a lead record. They are not exported and can not be used in a Smart Campaigns.Please see this article on
PercentA percentage expressed as an integer30
URLA text type field which restricts input to URLs, including the protocol of the URL.
PhonePhone number111-111-1111
TextareaLonger text.Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
StringShorter text (up to 255 characters)Lorem ipsum dolor sit amet
ScoreAn integer type field which can be manipulated with the Change Score flow step10
Boolean(previously Checkbox)Allows users to select a True (checked) or False (unchecked) value.True
CurrencyA float type field which represents the default currency type selected for the Marketo Subscription10.40
DateUsed for date. Follows W3C format.2010-05-07
ReferenceA string type field containing a key to another record (a foreign key).Contact Company

Data type limitation:


Along with restricted data types, Marketo also have defined certain limit for each data type. This limit defines the amount of data, a particular type of field can hold.

Field TypeLimitation
BooleanIt can only be set to “true” or “false” (stored in the database as 1 or 0).
CurrencyMaximum value of 9223370000000000000. The currency will be displayed based on the location set in your Admin->location.
DateMust be formatted “MM/DD/YYYY”.
DatetimeMust be formatted “MM/DD/YYYY HH:MM:SS”.
EmailMust be a properly formatted email (
FloatCan include decimals up to the hundredths place.  The value will round to the nearest hundredth (eg. 99.999 rounds to 100, 99.985 rounds to 99.99).  Maximum value of 10000000000.
FormulaSee this guide: Create and Use a Concatenated String (Formula) Field – Marketo Docs – Product Documentation
IntegerValues are limited to between -2147483647 to 2147483647.
PercentMust be a full number without decimals.  Maximum value of 9223370000000000000.
PhoneCan have letters, numbers, or characters.  Maximum of 2,000 characters.
ScoreMaximum score of 9223372036854775807.  If the score is increased higher than that, the score will reset to -9223372036854775808.
StringCan contain letters, numbers and special characters. Limit of 255 total characters
Text AreaCan contain letters, numbers and special characters. Limit of 65,535 total characters
URLhttp://&#8221; will automatically be appended to the value if the value doesn’t have that prefix or “https://&#8221; already.  Does not have to be formatted any further (Generic top-level domain not required).


P.S. This blog was originally published at The Marketing Automation Blog. You can also follow this LinkedIn Page to get more tips on how get most out of your Marketo instance.

***Originally posted on "The Marketing Automation blog". For latest updates, follow this LinkedIn Page


As a marketer, you have been asked multiple times in your carrier so far, how can we enable multi-channel lead source tracking and how can we be able to analyze the effectiveness of a particular channel?


There could have been several reasons why you were not able to achieve multi source tracking, it could be the systems limitation, lack of technical skill, lack of knowledge, lack of technology stack and many more.


Well, if you have Marketo and SFDC, there is a way you can track multi-channel lead source. The technique that we’re going to discuss here, will not only allow you to track the multi-touch source on lead but also on opportunity level. For me it’s like a full proof solution. This is a bit long post as the setup is quite complex, so I would suggest to be patient and read through the complete post. I can bet, you will not regret it.


Without wasting time, let’s dive into the same.



Objective is to be able to track the source of each and every touch point of the lead life cycle. It will allow you to analyze which channel/source/campaign is working for you and which is not. If you are able to do it, it will be a life saver as based on this analysis you will be able to optimize the marketing spend and resource resulting in maximizing the ROI and a great user experience. We will be tracking following for each touch point:

  • Channel
  • Medium
  • Campaign


  1. This solution is for those who are using Marketo and SFDC. I have not used MS Dynamics so not sure how it can be possible there.
  3. You already have a strong first touch source tracking implemented using UTM parameters or other means. You can search Marketo community to learn how to set it up.
  5. Admin rights in Marketo and SFDC

Proposed solution:

The proposed solution is to have some customization within Marketo and SFDC and unlock the absolute necessary feature. You will have to create a few fields in SFDC and Marketo on the lead/contact and Campaign member. You will also have to create program builder or workflow rules within SFDC. So, make sure you have appropriate rights in SFDC and Marketo for the same.

Field Requirement:

Before we dive into creating new fields, let’s just review a few definitions here:

  1. Lead Source: Lead Source is the medium through which you are generating leads. Usually mediums are; Website, Search Engine, Social Media, Paid Ads, Event etc.
  3. Lead Source Details: Lead Source details is your source meaning if you are using Social Media as medium, LSD can be either Facebook, Insta, LinkedIn etc.
  5. Other Lead Source: Other Lead Source is your campaign name. The value of this will be the name of the program you are creating in Marketo.

TIP: Use the same campaign name throughout the different systems meaning if you are creating campaign in FB, program in Marketo and camping in SFDC, all of these should have the same name. This will allow you to easily merry the data from different systems if you wanted to see a holistic view of your campaign performance.


SFDC/Marketo Field Requirement

  1. SFDC Lead/Contact (Make sure to have the conversion mapping for these fields)   
    • FT – Lead Source
    • FT – Lead Source Details
    • FT – Other Lead Source
    • LT – Lead Source
    • LT – Lead Source Details
    • LT – Other Lead Source
      (FT – First Touch, LT – Last Touch
  3. Campaign Member: (You must be wondering why to create these custom fields on Campaign member object. Believe me, you will need it. Just follow along and you will see.)   
    • Lead Source
    • Lead Source Detail

How will it work?

Step 1: Defining Source/Channel

First of all, you have to define a list for your channels like Website, Social Media, Search engine etc. Once you are done with that then map your source fields with utm parameter. Following is what I would suggest:

  1. Lead Source à utm_medium (e.g. Website, Social Media, Search engine)
  3. Lead Source Details à utm_source (web-direct, web-indirect, FB, Linkedin, Google etc.)
  5. Other Lead Source à utm_Campaign (the name of the campaign/program name of Marketo)


Step 2: Capture Data on Marketo form

Use hidden fields on the form and capture the utm parameters in respective fields. As I mentioned earlier, we will be capturing “First Touch” and “Last Touch” with this technique. So, on the form add the “Last Touch” fields as hidden fields and map those with UTM_Parameters. How you will be capturing the “First Touch”, I’ll explain that in the next step.


Step 3: Capturing the First Touch and Last Touch in Marketo

  • Block the field update of the “First Touch” fields from all sources except the “Flow Action”.
  • Upon form submission, Marketo will capture all these tracking data in last touch fields.
  • Create a central smart campaign to copy the “Last Touch” tracking data in to the “First Touch” tracking fields, if the first tracking fields are empty. (Obviously for new leads, First Touch and Last Touch will be same.)
  • Sync the lead to SFDC and then add to appropriate SFDC campaign from smart campaign directly. You should not be syncing the program with SFDC campaign directly, you will face some data issue otherwise.
  • Now, in Marketo as well as in SFDC, you have “First Touch” and “Last Touch”

You must be saying, I promised to give you multi-touch not just FT and LT? No worries, just follow the next steps and you will get multi-touch source.


Step 4: Capturing Multi-Touch:

Remember, in the field requirement, I asked to have 2 custom fields on Campaign member object. You must be wondering on the usage of the same. Well, you will be capturing the multi-touch source through those fields itself.

Now, if you have created these 2 custom fields and also have completed the process until step #3, you are ready to move to multi-touch.


In layman terms, you have to have a logic in SFDC to copy the last touch source data on campaign member object.

As I mentioned earlier, you have to have one campaign per marketing initiative to make this work. Let’s take an example and see how this will actually work.


John is interested in your product and was interacting with your different campaigns overtime. Below are some different touch points with the respective source.


In the above example, as you can see the First Touch is “Google” and it remains same throughout the above journey while the last touch keep changing with the different campaign interaction. So, on the lead, the First Touch is “Google” but the last Touch is “Email”.


But since the source is different for different campaigns and for each campaign we will have campaign member, we can copy the last touch point of the lead on campaign member. So, the data on campaign member will look like below:



With this, on lead level you will see First Touch i.e.  “Google” and last Touch i.e. “Email” but on campaign member you will have source of all of the touch points.


To copy the data from Lead’s last touch source fields to campaign member fields, I would suggest to use “Process builder” in SFDC.


Once you are done with these 4 steps, you can create campaign member reports in SFDC to understand which source is most popular, which type of campaigns are working for you and if you have proper campaign to opportunity influence setting, you can even see the impact of a particular source to opportunity as well.


Hope this will help but feel free to reach out to me in case you have any questions.



Amit Jain

You don't want to create additional thank you page for your marketing initiatives? Are you looking for the custom solution to display thank you message in the same landing page? If yes then I can surely help you with this piece of code as when I was looking for the solution, someone helped me with it...


It's a tricky yet very simple process to achieve this. You just need to put a piece of custom Marketo API in the head section of your landing page and a <div> section in the body of the landing page.


I will tell you the solution for both free form and guided landing page.


Freeform landing page:


In the freeform landing page, you just need to add one snippet in your page. So, just drag HTML element in your freeform landing page (make sure to set proper width and also position that HTML element in the page where you want to show the thank you message. In this element just put the below code:


<script src="Add source of your Marketo instance/forms2.js"></script>


 MktoForms2.whenReady(function (form)


 //Add an onSuccess handler

 form.onSuccess(function(values, followUpUrl)


 //get the form's jQuery element and hide it


 document.getElementById('confirmform').style.visibility = 'visible';


//Below two lines are optional as per my requirement

 document.getElementById('form-header').style.visibility = 'hidden';

 document.getElementById("innercontent").style.height = "1000px";


//return false to prevent the submission handler from taking the lead to the follow-up URL.


  return false;





<div id="confirmform" style="visibility:hidden; "><h1 style="color:#ffffff; text-align:center; line-height:55px;"><span style="font-size:45px;">Thanks for registering.</span><br/> Enjoy the evening! </h1>



Note: Update the source of your Marketo instance at the beginning of javascript code and update thank you messaging as per your requirement. 


Guided landing page:


In the guided landing page, you would need to place one snippet in your head section and another snippet in the body of your landing page .


Snippet 1 (Add this in the head section of your page):


<script src="Add source of your Marketo instance/forms2.js"></script>


 MktoForms2.whenReady(function (form)


 //Add an onSuccess handler

 form.onSuccess(function(values, followUpUrl)


 //get the form's jQuery element and hide it


 document.getElementById('confirmform').style.visibility = 'visible';


//Below two lines are optional as per my requirement

 document.getElementById('form-header').style.visibility = 'hidden';

 document.getElementById("innercontent").style.height = "1000px";


//return false to prevent the submission handler from taking the lead to the follow-up URL.


  return false;






Snippet 2 (add this in the body section of landing page):


<div id="confirmform" style="visibility:hidden; "><h1 style="color:#ffffff; text-align:center; line-height:55px;"><span style="font-size:45px;">Thanks for registering.</span><br/> Enjoy the evening! </h1>



Note: Update the source of your Marketo instance at the beginning of javascript code and update thank you messaging as per your requirement. 


Hope this will be helpful.



With Best regards,


Sant Singh Rathaur

Connect me on LinkedIn 

Hi Everyone,


Here is the recording & PPT for the India VMUG event that we had on 20th August.

Deck: Attached

Session Recording Link -




Karan Hari & Rachit Pairing

Hello Marketo Users in India - Here is your opportunity and a complete road-map to join Marketo's Customer Advocacy program and become a Marketo Advocate! Starting from getting involved in the Marketo Community, to Joining and Speaking in Marketo User Group's, to solving fun challenges in purple select & winning cool swags, to having world class recognition's & joining the super elite group of "Marketo Fearless 50 Marketers" and "Marketo Champions", The advocacy program provides details of all this and a lot more ways for you to grow your personal brand and become an expert Marketo Marketer! So what are you waiting for? Click on the below link & get signed up for the Marketo Customer Advocacy program today!


Join the Marketo Advocate Nation Here -


Best Always,

Karan Hari

I am really loving this new feature in marketo sky which allow you to save the smart list criteria into saved rules or flow criteria into saved flows and then you can use these saved rules and flows into any new smart campaign you are building. I find it very helpful in my case because:


1. Sometime we are run the campaigns on multiple channels and we need to update the lead source value from the flow on the basis of url source value

2. We also run the campaigns on multiple countries and we need to tag the country with every leads


There might so many other cases like courses, SF task creations, seperate thank you emails on the basis of any condition depending on your own business use case. So, you just have to save these rules and flows and when you want to use it, just drag and drop it.












Marketo team have created very helpful short videos, where you can learn how to create these rules and flows. So, you just have to click on 'i' Information icon just beside the saved rules in the smart list section and saved flow in the flow section. Click on show me, watch the video.



Screen Shot 2019-04-22 at 11.07.18 am.pngScreen Shot 2019-04-22 at 11.06.55 am.png


I am sure you will love the feature as I did.




***Originally posted on "The Marketing Automation blog". For latest updates, follow this LinkedIn Page


Email Marketing is the most popular method to advertise in B2B environment. Email marketing is utilized by thousands of businesses of all sizes across the globe. It's very easy and cost effective method to reach your prospects. But what if no one is looking at your emails at all? To get most out of your email marketing you have to make sure that people are engaging with your emails.


OK, do one thing, look at your inbox now. How many unread emails do you have? I bet you have hundreds of unread emails and if you are like me you might have thousands :). We get a ton of emails in our inbox every day. So for an email marketer, the most critical thing is to ensure that when your prospects look at their inbox, your email should stand out and get full attention.


What is the first impression of your email?

Obviously, who sends the email; the From Name and what it is about; the Subject Line. Though it's correct but along with from name and subject line, there is one more important thing that subscriber notice at the very first look, a short description of your email. Which I am calling "Snippet Text" or "Preheader Text".

So to improve your open rates you have to make sure that all these three things are well optimized. So remember following equation every time you setup your newsletter:


From Name + Subject Line + Snippet text = High Open Rate


What is "Snippet Text"/"Preheader"?


Many of the email client including Gmail, Outlook, and iPhone not only show the from name and subject line but also some preview text of your emails. Below are some screenshots that will help you understand what I am talking about:




Does snippet text really improve open rates?


The open rates depends on the impression you left at the first glance of the inbox. As shown above there are three things that the subscriber will see in his inbox for your email. So if you have interesting subject line and snippet text, it will undoubtedly improve your open rates. I found people improving their open rates by 20-30% just because of a good snippet text.

I would also suggest to include "Snippet test" too in your A/B testing next time along with other things like subject, from to name, and body content etc.


Which all devices/email clients support "Snippet Text"?


Litmus did a test to see which all email clients/apps display snippet text. Below is the result for your reference:

How can I customize preheader text?


You do not have to do anything complex. Marketo has made our life easier here. Just go to email settings and add a Preheader..




Hello, Marketo Users in India. Hope all of you are doing well!


We are excited to launch the first official Marketo User Group for India in the Marketing nation community! This is an amazing opportunity for all of us to collaborate and engage in a better way to share Marketo best practices, be up to date with the latest marketing trends and share the rich knowledge which Marketo users in India bring with them!


Our first virtual event is happening on 14th March 2019. In the event, we will:

  • Talk about the new India Marketo User Group
  • Introduce our event topic - ‘Becoming a Marketo Certified Expert’
  • Share the best practices to prepare for an MCE exam
  • Explain how MCE certification can help you boost your career
  • Discuss how you can guide & train your teams to clear the MCE exam


Click here to register for the event.


We encourage all of you to sign up for the event. Please feel free to reach out in case of any queries in the comments section below and we will be sure to get back to you at the earliest!


To better Marketing!


Karan & Rachit pairing