Screen Shot 2015-11-19 at 1.21.02 PM

How to Create a Killer Net Promoter Score Program in Marketo

Level 7
Level 7

Customers are the lifeblood of every company, yet many businesses don’t know if their customers love them or hate them. We’re about to show you how you can, in less than an hour, create a best-in-class Net Promoter Score program in Marketo that will find your champions and detractors alike.

The Net Promoter Score (NPS) is an amazing way to determine customer loyalty. Bain & Company made this simple 1 question survey famous. You can read more about it here, but essentially it shows you your customers who are promoters (you want a lot of these) passives, and detractors (you want as few of these as possible).

Here’s how to create a Net Promoter Score program in Marketo…

  1. Setup your Program
    We created a new channel for NPS score, so that we can use program statuses to view the overall opinions of our customers. We defined program success to be 9’s and 10’s since those are what are considered to be ‘promoters’.
    Screen Shot 2015-11-19 at 1.21.02 PM
  2. Create new fields to capture NPS Score & NPS Comments
    VERY Important Note:
    Your NPS Score field, MUST be an integer field. Your NPS Comments field should be a text field. If you want these fields to appear in your CRM, you should make them there first and wait for them to sync over. We would also recommend you map them from the lead to the contact so that there is never any loss of data.
    Screen Shot 2015-11-19 at 1.25.45 PM
  3. Create your Form
    You want to add your NPS Comments field, and make sure it is a ‘Text Area’ field type. Remove the label and make the label width ’10’. Add the email address field, and make it hidden. Then you want to add your NPS Score field. Make that a hidden field and ensure that the Parameter name is ‘npsscore’. ****VERY important****Screen Shot 2015-11-19 at 11.22.50 PM
    Screen Shot 2015-11-19 at 1.27.37 PM
  4. Create your Email Template
    This is the template that we built. It's fully responsive across all email clients and devices, even the ones that don't support media queries!
    Screen Shot 2015-11-19 at 1.29.16 PM
  5. Create your Landing Page Template
    Here is our landing page template. It also includes a fancy javascript library that allows people to change their score on their confirmation page. Nice, clean and simple with the goal of getting feedback from customers. Here is a live example of it.
    Screen Shot 2015-11-19 at 1.30.06 PM
  6. Update your Email
    For each score in the email, 1-10, update the link to your landing page, with a URL parameter structured exactly like this: ?npsscore=
    Here is a screenshot of what it should look like:
    Screen Shot 2015-11-19 at 1.33.07 PM
  7. Send it out!
    Send out your NPS email and make sure that you follow-up on everyone’s feedback, good or bad! If it’s good, try and get them to promote your company on social networks if its bad, follow-up and show them some love.

Good luck! It can sometimes be a little scary to ask your customers for their feedback, but the reality is its there so you’re much better off knowing it, good or bad.

Level 7

Hi Noopur,

That's correct. Since they are clicking a link in an email, we know who they are. We have a hidden field on the landing page form for the email address field so we are relating the data back to the proper record in the DB. It's not necessary to parse through a URL parameter as long as you have the email form field to be pre-filled.

Hope that helps. Cheers!

Not applicable

I'm running across an issue on the flow step to add users to the program status. What choices are you using? I've tried If landing url contains 'npsscore=#' and If clicked link in emails contains 'npsscore=#' and none are adding.

Appreciate the help!

Level 3

Just for reference, if you are using SurveyMonkey enterprise integration with Marketo, you can use the built-in NPS question and logic.  Then you can use the response value in your Smart Campaign logic. 





It is a pretty nice integration.  The only thing that I find a little clunky is that you need to paste in the survey name and the survey question in the Smart Campaign.  Marketo does not "see into" Survey Monkey to make a pick list from existing surveys.



Level 7

Hi Larry,

The way we set it up is that we have a smart campaign for every score from the email. That is a simple clicks link in email. Then we also have a fills out form smart campaign, where its just that they fill out the NPS survey. In the flow of that smart campaign there is a change program status with a bunch of choices where it looks at what their NPS score is and assigns the program status accordingly.

Hope that helps!

Level 7

SurveyMonkey rocks!

Level 10

Hi Blane,

    SurveyMonkey just announced an enhancement to their Marketo connector that will enable you to directly map a survey monkey answer to a Marketo field. Here is the email we received:


So the triggered smart campaign will become a simple "data value changes" one.


Level 3

Hi Greg

I did get the same email.  I'm not sure how it will work.  I'm still a newbie to Marketo, so it will take some testing to figure it out after we get the details of the update.


Level 1

Hi Pierce,

Thanks for sharing!

How do you calculate the NPS overall within Marketo? If a customer gives me his score, how do I update my overall company score? Because every data value change is on the person level but how do I see my companies NPS? Do I have to calculate this manually?


Level 7

Hi Sascha,

What we do is use program statuses to capture the scores from each person. Then, yes you do a manual calculation once all your responses have come in.

Hope that helps,


Not applicable

Hey Pierce,

Quick question for you, not sure if this can even be possible... Is there a way to pass the score number and other hidden details through to marketo & salesforce contained in the URL parameters even if the person does not submit the form on the landing page?