Consistently setting Acquisition Program (AP) is a best practice for data completeness and reporting (if you need a refresher on the importance, start here!), but it's possible to find yourself in a situation where this best practice wasn't always followed historically in your instance. If this is you, don't be overwhelmed. This scenario is not uncommon, and more importantly, it IS fixable. You can remedy this by backfilling both the Acquisition Program and the Acquisition Date fields.
~~Sounds easy, but how do I actually do that~~ you might be thinking... Let's talk about a framework you can employ to accomplish this!
Is it only 10% of your database that doesn't have Acquisition Program? Is it a bigger amount like 60% that doesn't? You want to be clear on this first because if it's a smaller percentage, you might decide you're OK with it and instead focus your time and efforts on ensuring everyone has AP moving forward. If it's a larger percentage, then you might concede that it's worth backfilling the AP data. There's no perfect answer, it's more that you/your team understand the situation and agree on what you're comfortable with!
To assess the volume, head over to the Database section of Marketo and run the System Smart List titled "No Acquisition Program". Double check that the filters on the smart list haven't been modified. The filters should look like this:
Running this System Smart List will give you the number of records that do not currently have AP defined. You can divide this amount by your total database size to get your percentage.
In the above example, 693,410 people have been identified without an AP. Let’s say the database size is 1.25 million. That gives us 55% of the database without AP (693,410/1,250,000). At a little over half of the database, you’d probably want to put in the work to restore the AP data as that number is not insignificant.
Assuming you want to move forward with backfilling AP, now you need to gain a better understanding of these AP-less records. What are trends and commonalities? You know your data best, so you’ll likely already have some suspicions that you can start with. Run some reports and/or smart lists to see if your hypotheses are true!
Either way, a good place to start is by understanding Original Source Type. The People Performance Report Type comes in handy here. Start by adding a filter to isolate only records without AP like this:
Now, let’s get an understanding of where these records are coming from by Grouping by Original Source Type in the Setup tab. You should also expand the date range to All Time. It should look like this:
Nice! Now we’re gaining insight into where these AP-less records originated from. In this example, you can see that the CRM (Salesforce in this case) is the main culprit.
Pro tip: It’s helpful to take screenshots of these results ^^ for easier comparison later!
For the simplicity of this blog, we’ll focus on these records from SFDC only. In real life you’d want to investigate each source and clean up the AP appropriately though!
In short, I’m going to create an operational Program to use for backfilling SFDC as the Acquisition Program for these records. Let’s take it step by step though!
Bonus tip: In the notes section of the Program, it’s a good idea to add additional commentary/clarification (what, why, etc.) to prevent any confusion for others.
My Smart List will isolate records without AP that came into the system from Salesforce:
In my flow steps I will first set the Acquisition Date with a token that will render the exact date each record was created in Marketo. Then, I just need to set the AP to my newly created Program like this:
Pro tip: You can use this same Program (OP-Acquisition-CRM) it for ongoing records too as it’s basically just a placeholder. The best practice program template import library has an example for records acquired by API. You can import this to your instance and modify it for SFDC-created records.
Double-check your build and head to the Schedule tab to run it! You can run immediately or schedule it if you prefer to wait until evening (or other non-peak time).
Once it’s fully processed, you can check the Results tab. You can also go back to the Smart List to see that the “Estimate Person Count” has been zero-ed out.
You can revisit the People Performance Reports you created in Step 2 to see the results of your hard work! You should see a decrease in the number of records without AP.
In addition, you can also get more out of your reporting in Marketo Performance Insights (MPI) since your acquisition data is more complete.
In this example we focused on cleaning up the records from Salesforce without AP, but we shouldn’t stop there! There were other sources identified that should be investigated the same way and resolved as well.
I’d recommend picking the next grouping you want to focus on and adapt the approach as appropriate. For example, you could focus on records with List Import as their Original Source Type next.
Make sure you have infrastructure in place to be gathering AP moving forward to prevent doing this exercise again in a few months!
The best way to do this is via Program Templates. People often just forget about AP when launching their Programs so it’s a huge help to have the AP Smart Campaigns already built out in plain sight within the program template that your users should be cloning from. This way, they just need to update the Program Name in the Flow Step (you can’t use a token for this unfortunately) and activate. It’s quick, easy, and makes a BIG impact in reporting!
Check out Marketo’s Best Practice Program Template Library if you’re new to Program Templates. There are several starter templates built out that you can import to your Marketo instance and adjust as needed. These Program Templates will include Smart Campaigns for AP where appropriate – the Event Program Template is a good example.
Why Acquisition Program Matters & When it’s Set Automatically
Program Template for API Created Records
This strategy has worked well for me, but there’s usually multiple ways to go about a problem so please chime in with any of your tips and tricks in the comments 🙂
Maybe I’ll do some follow up blog posts walking through other AP backfilling examples if there’s interest! Let me know...
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.