Warning: The following blog is intended for marketers who utilize Marketo Engage, a marketing automation platform. If you are not familiar with marketing automation technology, this blog may read like Klingon to you. We suggest our overview of marketing automation best practices or our guide to getting started with Marketo Engage as recommended reading!
Even the best of technology is bound to break…and if you haven’t run into an issue yet, don’t worry … you will!
Marketo Engage is no exception. Perhaps it’s a red rickrack underlining a misspelled campaign name in a flow step. Maybe it’s a pop-up notification message, or simply an unexpected or unintended result. The trick to solving these unwelcome cases is to use Marketo Engage “forensics” to understand the perpetrator and weapon, then disarm these issues quickly.
In this blog post, I’ll walk you through the steps you need to become your own Marketo Engage CSI detective (Cue CSI Miami music intro) through:
- How to know you have a problem
- How to investigate and the problem
- Common Errors
1. Identify there is a problem
Sometimes, identifying the problem is just as difficult as solving it! Use notifications and the campaign queue to help isolate your problem.
Most of you should be able to see the Notifications button at the top of the screen.
If you click on it, you will see a list of alerts and errors Marketo encountered. Administrators should monitor this weekly or even daily (if a large system) for major issues. Marketo tells you what is wrong, but you often have to go to the campaign or lead detail to find out more. Key issues include:
- Exhaustion of nurturing content
- Broken campaigns
- Failed campaigns
- Failed syncs to SFDC (Pro Tip: if you click on this notification, you can get a smart list, but this is the only way to see this kind of data)
This brings me to our second tool: The campaign queue. The campaign queue lets us know what is happening right now, or what is about to happen for all smart campaigns. This can really help answer the question: “Why is my campaign running slow?“ or “why has my camping not yet run?”
As we dive into this one; It’s important to understand how Marketo Engage executes campaigns:
|Priority Level||Priority Criteria|
|High||Send email (triggered)
Convert / Delete Lead
Add to / Remove from List
Change Sales Owner / Progression Status / Revenue Stage / Field in Program
Change Member of / Add to / Remove from
Sync to SFDC
Change Status in SFDC Campaign
|Low||Change data value
Wait steps with a wait time > 5 minutes
Marketo Engage then executes campaigns based on priorities. High priority campaigns run first in the order they were added to the queue. Once those are finished, the next highest priority campaigns are executed in time order and so on down until all have completed. If the queue contains only low priority campaigns and a new high priority campaign comes in, the high priority campaign will jump to the head of the line and run next. Batch campaigns and trigger campaigns are run and processed in separate queues.
Several factors determine how fast and when your campaign will run. In general, campaign execution time depends on:
- The number of leads in your campaign
- The number of flow steps in your campaign
- Other customers’ campaigns in the queue
- The campaign’s priority
Even though Marketo Engage can execute many campaigns simultaneously, campaign execution resources are shared among all customers on the same server. If several customers trigger high priority campaigns at the same time, lower priority campaigns in the queue will have to wait for the high priority campaigns to complete. Also, certain campaign flow steps are slow.
The flow steps below take longer than most, and you may notice that difference when executing your campaigns:
- Send Email
- Delete Lead
- Sync Lead to Sales
- Add Lead to SFDC Campaign
Speeding up your campaigns:
Here are some tips to speed up how and when your campaigns are executed:
- Do the essential flow steps first!
- If this is an auto-response or notification campaign, put the Send Email or Send Alert flow step first. Absolutely do this if you’re using two slow steps in a row (Send Email followed by Sync Lead to Sales) so that the email goes out with the highest priority.
- Don’t start with a “Wait” step. If you need to delay the launch of your batch campaign, use the batch campaign scheduler. Re-think any triggered campaigns that start with a “Wait” step because it will be prioritized lower. If you have a wait step of longer than 5 minutes this will cause all flows below it has a low priority.
2. Investigate and fix the problem
Once you’ve identified the problem, use the campaign inspector, activity log, audit trail, and smart lists / views to investigate and solve these issues.
Have you ever wondered which campaigns are using a specific flow action, such as Change Score or Request Campaign? Or where a certain filter is being used? The new Campaign Inspector (available from the Treasure Chest in your admin section) enables you to identify these campaigns, as well as active campaigns and campaigns with errors. Here are a few use cases you can solve with Campaign Inspector:
- Search to find elusive flow steps (change owner, sync to SFDC, etc.)
- Campaign inspector is turned on in Admin -> Treasure Chest
- If you are not certain where a flow step is occurring, then you can search all campaigns for filters and flow steps, among others. This can help narrow down problems or help you understand how the system is setup. If you do not have access to this, you may need to go to Admin > Treasure Chest to turn it on.
This is arguably the most important tool for testing and troubleshooting. The activity log is the area on a person in Marketo that shows you all the things a person has done, and what the system did or how the system reacted to your activity. You can use the Activity Log to answer such questions as:
- Why did that campaign trigger?
- Why did that campaign not trigger yet?
- Why is the score X?
- Why did that data change?
- Where did the lead come from?
Since there are hundreds of data points to review in an Activity Log, Marketo added filters to let you narrow down the types of behaviors or changes to work with this faster.
In addition to filters, you can use the Quick Find feature in the Activity Log to look for specific activities or key words to help you untangle the data presented to you.
A few key reminders:
- Initial lead creation does NOT generate Data Value Changed activities
- Campaign name refers to Marketo campaign
- Email Batch Program – email sends from Email Blast programs
- Run Action – Marketo single lead action this is an action created by a user in Marketo without using a campaign
- Blank campaign name reflects Marketo activity initiated by external/internal change
Audit Trail captures, in real-time, a comprehensive list of actions and events occurring within a Marketo subscription. It includes a self-serve way to access a six-month history of data to help answer questions such as:
- What happened to this asset or setting, and who last updated it?
- What has user X been up to?
- Who is logging into our account?
Marketo will audit the create, edit and delete actions for:
- Design studio assets
- All Marketo programs
- Smart campaigns
- Lists (smart/static)
- Users (admin)
- Roles and permissions (admin)
- Workspace and partitions (admin)
- User login history
The Audit Trail is categorized in 3 components:
- Asset Audit Trail – See activity done to specific assets.
- Admin Audit Trail – Monitor user-based details.
- User Login History – See who’s been logging into your subscription and when. Also includes failed login attempts.
Note regarding Unknown:
In Audit Trail, you may see a user’s name and email listed as “Unknown.” This happens when you make a change to your picklist values in your CRM. These values appear in Marketo forms and landing pages. Doing this update on the CRM side will auto-draft your landing pages referencing the form. In Audit Trail, we will capture that the landing page was drafted, but the user’s name and email will show as “Unknown,” as we are not able to capture the user info from the CRM side.
Smart Lists & Views:
Another tool you have is the Smart Lists. In addition to creating your dynamic lists for campaigns, you can use Smart LIsts to pull groups of leads and then use Custom Views to look at certain fields.
The best use case is when you want to see Email Deliverability fields (and I always have a View with these fields). This View exposes the Email Bounced Reason in a clear way. You can sort it or even build a new smart list to narrow down these issues.
- Create a set of views to use in your smart lists
- Location information (i.e. Country/State/Inferred fields, alternative address fields, etc.)
- Source Information (i.e. Source, Lead source detail, Acquisition Program, Acquisition Date, Original source Info, Registration Source info… etc.)
- Scoring (i.e. the various scoring fields: Behavioral Score, Demographic Score, Lead Score, Relative Score, Priority, etc.)
- Process (SFDC Type, Lead Status, Contact Status, Lifecycle Status)
- Email/Subscription Management (i.e. Unsubscribed, Email Invalid, Marketing Suspended, Blacklist, individual subscription fields, etc.)
- Product Information (ie various product fields if they have individual ones)
- Segmentation (i.e. various Segment fields)
3. Common Errors
Smart Campaign Failure:
- Ever had a smart campaign fire and not know why?
- Did someone skip an action step in the flow?
- Were you expecting more or fewer people to run through the campaign?
- Did a trigger campaign fire hours after the trigger was initiated?
Example 1: Smart campaign may fail because campaign limits are set at the admin level. You can set the cap higher on individual smart campaigns to bypass the smart campaign limit:
Example 2: Adjusting wait steps to inflight campaign
When a lead hits the wait step, Marketo stores the date/time and the number of the next step. If you add steps before or after the wait step while the lead is in the wait step, this can cause unintended consequences. If you deactivate the smart campaign while leads are still in the wait step, they will complete their flow through the smart campaign. Be careful how you change flow steps in an active campaign with wait steps. Finally, when deactivating a smart campaign with a wait step, make sure you remove any leads from the campaign flow
Example 3: Marketo smart campaigns fire in different orders at different times, and can cause some havoc. Here are a few common issues I have seen.
- Fields for lead assignment are not set before the lead is assigned
- Field values used in filters are not set, causing smart campaigns not to trigger
- Fields are not populated before alert, interesting moment, task are created
- Alerts are sent before the lead has run through assignment
When order is important, leverage Request Campaign flow steps. Add wait steps to give concurrent flows time to “catch up”.
Example 4: Trigger Campaign Failure
Think back to when we discussed the Activity Log…
When a new lead is created, every data value update for that new lead is NOT counted as a Data Value Change in the Activity Log, therefore it does not trigger a Data Value Changed trigger in a Smart Campaign.
Therefore, when wanting to include net new persons who’s data values are updated to match your criteria, you’ll also want to include a Person is Created trigger and a filter for that field data value.
Smart campaign triggers for executing on data value change and net new people not being executed on – the difference between an upsert and insert with the database.
A robust tool like Marketo Engage has a lot of features and functionality, but errors do occur. I hope this quick review gives you some guidance as to how you can track down the source of your errors and fix them.
So, what can you do now?
- Read more of our Marketo content or grab our Practical Guide to getting started.
- If you have additional errors you just can’t seem to figure out, we’re happy to help! Contact us today and let us know what issues you’re running into.
- Check out the CSI Marketo Engage: Investigate Techniques for Solving Errors joint webinar hosted by Adobe where Caitlin Poliska goes into more detail on many of the key points in this blog ost!