Hello
I work for a physician staffing company and we are trying to figure out a way to make our job opportunity emails more targeted for our providers. Currently, a provider will get an email if there is a job in the email that matches a state license they have. For example, we send out an email to all of our psychiatrists that shows jobs we have in three different states: California, Massachusetts, and Wyoming. If you are marked in our system as a psychiatrist and you have a license in CA, MA, or WY, you will receive this email containing these 3 jobs. The issue is only one of these jobs may be relevant to the psychiatrist receiving the email. We want to be able to dynamically insert the jobs that fit our provider's criteria in the email, whether that's one job or five jobs.
How can we have our emails populate with only the content that is relevant to that specific provider?
JD
Hi John Danielson,
That's IMHO impossible to do with dynamic content, because the number of possibilities is enormous if you cover the 50 states. If physicians can have up to 5 licenses, you would have to cover millions of potential variants.
I would probably split the emails by state and send only emails with 1 state offers to physicians with licences in this state. The drawback of this is that if a physician has a licences in 3 states, he/she will receive 3 emails instead of one.
-Greg
This complexity may be possible using Velocity Scripting. Please see the docs.
There's a Blog Post on this by Kristen Carmean if you do a search for her or the topic.
Hi John,
This might help.
Early this year, I implemented this kind of email program for a customer. We used custom objects in Marketo (and in SFDC, though that is not absolutely needed), velocity scripting etc to get it done.
In the nutshell, we had a online store with one person subscribing to n number of content. After every new 'purchase' on our store, we wanted to send them email from Marketo which included a tabulated listing of their purchases so far.
In your case, you might use a couple of Marketo custom objects one to store the states in which a provided have licence in and second to store the type of jobs that provided wants to get informed about. And then,
a> Have some programming to automatically get this information populated in Marketo from your system. We used Marketo REST API to keep our Marketo custom objects in-sync automatically with our online store database. If your data is in SFDC custom objects, you can use Marketo - SFDC integration to get this data. But down side is that it would add about 30+ minutes of latency. We needed real time for our cases.
b> Write Velocity script related code to generate a dynamic listing of jobs a given provider lead wants to get in the email
c> Create Marketo email document, program etc and use this script tokens.
This is definitely doable and works flawlessly.
Please feel free to reach out if you need more information.
Rajesh Talele
Hi Rajesh & John,
Although Rajesh's will work, you need to keep in mind that it will require intensive coding. You will need to use the API to populate the custom objects for each Physician.
Also, as custom objects cannot have a n-n relationship with leads, you will have to attach to each leads all the job offers they are entitled, each job offer being present once for each relevant Physician.
You may also not necessary need 2 custom objects. You may want to store licences in a stream field on lead (Physician) object, that will be good enough.
At the end of the day, the API call will do all the work (looking into each lead, fetching the states in which it has a license and creating the related job entries).
All this would be easier to model and implement in SFDC or MS Dynamics, where you could have your custom tables and some APEX code to generate the jobs / leads cross table. Then all you would have left to do in Marketo is to map the custom objects and create the velocity scripts.
-Greg
Hi John, You can simplify the development by using Custom Objects introduced by Marketo. You would still need to use the Velocity scripting but managing data would be easier with Custom Objects. Drop a line at alok@grazitti.com if you would like to see similar examples.
I think there was some confusion about my comment....
Basically, you will need to get the licence etc data in custom objects in Marketo. And then use Velocity scripting to dynamically generate exact email content for each lead. Velocity script allows you to lookup records, IF Then Else, Looping and other programmatic operations that you will need to do.
As I said in my earlier response, using API is not mandatory. But you will have to get this licence etc information from outside Marketo into Marketo custom objects. How do you do that?
1> Get it in SFDC / your CRM and then let Marketo-SFDC sync bring it into custom objects in Marketo.
Pros: If you have already integration set up, this would need adding custom objects to the mappings.
Cons: There can be significant delays if there is a large batch of leads, account changes etc waiting in the SFDC-Marketo 'pipe'. For example, you want to just send 10 such emails, you add the data in appropriate places in SFDC. But there are a10000 leads that are scheduled to be synched before these 10. So your 10 leads will have to wait for these 10000 leads to be finished synching. If you want near real time, this may not work for you.
2> Write API calls related programming to 'simply' get this information into Marketo custom object. No complex logic in the API programming. Simply get the data in appropriate, custom object. Does not have to be too complex at all.
Pros:
Your data does not have to wait for something else to finish. So you can get near real time results.
Cons:
Marketo limits of how many API calls you can do per day and some programming that is involved.
Why use Velocity script to dynamically generate the email contents from custom objects vs. in SFDC etc or even API?
Because as Marketo does so beautifully, it gives power for Marketers to create great looking content without waiting for IT.
Let's say you did all the work in SFDC APEX code or API code. and your logo or font changed for your branding.
If you do in Velocity script in Marketo, you can easily and quickly change that in Marketo in minutes.
If you were to do in SFDC, it will typically need to wait for next 'build' cycle of your IT department and so on.
Power to the Marketers.
Does this make sense?
Rajesh
Hi John,
So how did you end up solving your requirements?
Rajesh
Hey Rajesh
Wow! I completely lost track of this. I appreciate all the help you guys have given. I am going to pass this information along to some of my coworkers to get their opinions. I will get back to you when I get some feedback!
Thanks!
JD