What is the best practice for creating a targeted campaign? For example:
- Customer purchases product A from category X.
- A follow-up email is sent to the customer with 3 additional products from category X.
Is it a better practice to:
- Create an email for each category and the use Smart Filters up front to send a specific email.
- Create a single email and use Email Scripting to choose products based on the category.
I'm new to Marketo and this is the first time I will be setting this up so I want it to scale.
I'm leaning toward the Smart Campaign approach since this seems much easier to maintain. The more targeted the campaigns become to more individual emails need to be created but this that still seems more manageable that creating a ton of scripting logic that becomes difficult to debug and update.
What are some good examples of when to use email scripting?
Lots of potential solutions.
If you are comfortable with Velocity, then it may make sense to do that. I'd map this out more though.
Another option is as you describe, which may be easier to setup the first time so you get used to Marketo.
There is another option entirely using Snippets and Dynamic Content. Also some setup but could allow you to swap products more easily.
Nothing is going to be easier to maintain than Velocity. It's writing the code upfront that is going to be your challenge, if you don't have/aren't fluent in VTL. Once the token logic is done, it stays done. You just update another token that holds your product catalog.
If you have more than 4 products per category (you have to have at least 4 or "send 3 more" doesn't make sense, right?) and you need to send the person 3 product suggestions other than the one(s) they've purchased, in some order or randomly... trying to precompute all the permutations and create separate Smart Campaigns and content is, frankly, madness.
Thank you both for your responses.
Sanford, Our product catalog is in a database along with order information. It's kept up to date through a connection to Magento, our e-commerce platform.
Would it make sense to create on token that handles the catalog lookups and then separate tokens to pass values to the first token. In other words, should I create a collection of methods/functions which would be part of every email? For instance a method for "get related products" that I could pass a SKU number from a second token.
I have never used Velocity. It looks like method/functions are referred to a Macros. Is this correct?
Would it make sense to create on token that handles the catalog lookups and then separate tokens to pass values to the first token.
Create one token that holds the catalog itself, as a Java HashMap literal (it'll look just like a JSON Object, I'm just being precise).
Another token can hold a Velocimacro library, if you find that level of encapsulation is necessary (I don't know if your logic is complex enough to require separate macros).
Then a token only executes the macros/code, using data + functions + settings from other tokens.