Anyone who has used Marketo’s inbuilt lead nurture programs knows how limiting they can be when it comes to customizing when emails can be sent and under what conditions. In this blog post I will show you how to customize your Marketo lead nurturing to allow you to gain full control over when emails are sent and under what conditions.
Before you start sending emails to your leads you should check out the Marketo Email Template Quick Start guide to make sure that your emails are looking amazing and that they are easy to create and modify so that building your lead nurturing cadences is a breeze.
Marketo Lead Nurturing Walkthrough Video
Default Marketo Lead Nurturing Program
The default Marketo lead nurturing program consists of streams that are populated with emails. A lead will be entered into the nurture program and assigned to a particular stream so that they will receive the emails from this stream.
A good example of where you would use different streams is for the different products that your company offers. This way a lead will only receive emails related to the product they are interested in. Transition rules can be set up to allow leads to transition from one stream to another. Whenever a lead enters/re-enters a stream they will receive the “highest” email in the stream that they have not received yet.
Scheduling
The options for when the emails can be sent to someone are:
- On a weekly basis, every X number of weeks, on particular weekdays, at a fixed time
- On a monthly basis, every X number of months, on a particular day of the month or day of the week, at a fixed time
To learn more about the default Marketo lead nurturing program and how to set one up see the docs.
Limitations of the Default Marketo Lead Nurturing Program
The limitations of the default Marketo lead nurturing program are:
- People can only receive emails from a single stream at one time. What if someone is interested in multiple products from your company and you want to send them emails from multiple streams (see the “Marketo Lead Nurturing with Overlap” section below to see how to account for this).
- The weekly and monthly schedules are inflexible. If you want to send Email1 when they purchase a product, Email2 3 days later, and Email3 7 days later this is not possible (see the “Variable Day Delays Between Emails” sections below to see how to achieve this).
Variable Day Delays Between Emails Method 1
The first method we will cover to achieve variable day delays, from the Marketo community, is to hack the existing Marketo lead nurturing program.
When to use Marketo Lead Nurturing Method 1?
While this method is a little more complex to understand than the method in the next section it has the advantages that:
- Since the emails are being sent by the lead nurturing program engagement metrics for the emails will be visible on the program dashboard.
- It is easy to allow someone to transition to a different stream by defining the “Transition Rules” for each stream.
So this method should be used when transitioning between streams is important and you rely on the engagement metrics provided in the dashboard of the Marketo lead nurturing program.
Set the Stream Cadence
The first step is to set your stream cadences to be:
- Weekly
- Every 1 Week
- On every day of the week (or only select weekdays if you only want your emails to be sent during the week)
- Choose whatever time you want these emails to be sent each day
Add to Stream
Then in the flow of the smart campaign responsible for adding someone to your stream:
- Use the “Add to Engagement Program” action to add them to the stream
- Use the “Change Engagement Program Cadence” action to pause them
- Implement a wait action equal to the number of days you want to delay
- Use another “Change Engagement Program Cadence” action to unpause them
Using the first pause along with the X-day delay will mean that the lead will skip the next X scheduled cadences from this stream. Then when we unpause the lead they will become available to receive the “highest” email in the stream that they have not received yet.
Pause, Unpause, Repeat
Once they receive this first email we need to pause them again so they wait the next allotted number of days before receiving email 2.
The smart list of the campaign to do this will have:
- A “Member of Engagement Program” filter to check that the person is a member of the particular nurture series we are interested in
- A “Was sent Email” filter to see if the person received the second email
You will notice that the “Was Sent Email” filter has a “Date of Activity” constraint set to the past 2 hours. This is important when it comes to scheduling this batch campaign to run. If the scheduled cadence of the stream runs at 10am every day then you will need to schedule this campaign to run at 11am every day to look back 2 hours i.e. from 9-11am, to see if the person received the first email in this time.
If the person received this second email then following the same logic as before they will be paused for a certain number of days before being unpaused.
Exhausted Content
You can then repeat this logic for each email in your nurture series. Once the lead has received all the emails in the stream they will then be moved to an “Inactive” stream by the “Exhausted Content” smart campaign shown in the images below. Moving them to an “Inactive” stream that does not contain any emails will stop you from getting exhausted content alerts.
Transitioning Streams
While in the middle of a stream if the person triggers the “Transition Rules” for a different stream they will move into that stream however they will not receive any emails from this stream until they have been unpaused by the flow of whatever smart campaign they are currently in. If they are in the inactive stream when the “Transition Rules” are triggered then they will be applicable for receiving emails in the new stream right away.
Once they receive the next highest email in this new stream that they have not yet received the corresponding pause-unpause smart campaign for this next email will pause them until they are meant to receive the following email in this new stream. Again if this next email meant that they have exhausted the content in this new stream then they will instead be moved to the inactive stream.
Variable Day Delays Between Emails Method 2
This method for sending emails with variable day delays actually does not use the Marketo lead nurturing program type at all, the smart campaigns below can be set up in the “Default” program type if you wish.
When to use Marketo Lead Nurturing Method 2?
In this approach, a series of chained request campaigns are used to send each email in the series. The main advantage of this approach is simplicity. The downsides of this approach are that:
- Since emails are not being sent by the lead nurturing program we will not get the engagement metrics for these emails in the nurture program dashboard. This is okay if you do your email performance reporting in a BI tool by exporting your email metrics to this tool.
- Transitioning to another cadence is a pain because in each smart campaign that adds someone to a cadence, you would have to remove people from all the request campaigns of all the other cadences to make sure they do not receive emails from multiple cadences at once.
Therefore this method is best suited when you want people to stay in a single stream and you use a BI tool for reporting on your lead nurturing performance.
N.B. If you want to find out more about request campaigns and how they differ from executable campaigns then check out the Marketo Executable Vs Request Campaigns post.
Checking Subscription
The first thing we are going to look at for this method is the smart list we are going to use to check if people should be receiving emails from our request campaigns. Here is an example of what this could look like.
Add to Cadence
Then in the smart list of the campaign to add people to this nurture cadence, we check to make sure people are a member of the “Nurture Subscribed” smart list along with whatever other triggers and filters we want to add people to this cadence. Then in the flow of this campaign, we will send the first email before requesting the second campaign that will wait a certain number of days before sending the next email and requesting the next campaign, and so on.
Send, Request, and Repeat
Since we have waited a few days since requesting this second campaign we need to check that the person is still in the “Nurture Subscribed” list before sending the email and requesting the next campaign. This is done using choice steps in the “Send Email” and “Request Campaign” actions (see video above).
You can follow the same logic as in this second campaign to build the campaigns for all emails except the last email in the cadence. The only difference in this last campaign is that it does not have a “Request Campaign” action since there are no more emails to send (see video above).
Marketo Lead Nurturing with Overlap
Both of the previous methods help you send emails with a variable day delay cadence, however, they do not cater to the use case where someone is interested in Product A and Product B and you want them to receive the emails from both Cadence A and Cadence B at the same time.
In the “Marketo Email Nurturing with Overlap” slide deck and in the video at the top of this post I walk through an email funnel where people with multiple use cases will receive all emails relevant to their use case. If new emails are added to the top of the funnel then a person will receive the highest email in the funnel that they have not received yet and that is relevant to their use case.
To achieve these desired outcomes in Marketo the first thing that needs to be done is a smart list needs to be created for each email in the funnel containing:
- A “Not Was Sent Email” filter selecting the corresponding email asset that this smart list is made for
- Filters that will ensure that only people with the correct use case receive this email
Once this is done these smart lists will be used in “Choices” within the “Send Email” step of your smart campaigns.
- If the person has not received the first email and they have the correct use case for email 1 they will receive email 1
- Else if they have not received email 2 and they have the correct use case for email 2 they will receive email 2
- Else….
- And so on until all the choices have been exhausted
In the video at the top of the post, I show you two ways to do your lead nurturing with overlap. I highly recommend checking out the video since it explains the logic to send these emails much better than I can do here over text and with images.
The first is a simple smart campaign that runs on a recurring schedule to send the people in your smart list the next email in the cadence that they have not received yet and that matches their use case. Therefore each time a person goes through this smart campaign they will match choices further down the “Send Email” action. Since we want people to go through the flow of this smart campaign multiple times we need to update the settings to “Each person can run through the flow every time“.
The second option combines the variable day delay method 2 covered above to send people the next email in the cadence that they have not received and that matches their use case X, Y, and Z days after the previous email. Again check out the video at the top of this post to see this in action 🙂
What’s after Marketo Lead Nurturing?
Now that you have your Marketo lead nurturing set up perfectly for your needs you might be interested in building email engagement into your lead scoring model or if you are an advanced user you might be interested in how to populate emails with the Marketo API.