Skip navigation
All Places > Champion Program > Blog > 2016 > June

This post is the second one of a 3 parts series, stating with this one: Testing the email editor 2.0: Great features, a few glitches and the strong need for a v2.1, which dear reader, you should read first in order to understand the reasons of this migration path.


You should also read this Email editor 2.0 is leaving room for a v2.1 in order to get a grasp on the remaining limits of the products and avoid to look features that are not there yet.


From all the testings in the post above, we have designed a migration path that we will apply to our customers in order to make sure that everything runs smoothly and no key content get lost.


Table of content


0-Define your strategy

The very first thing you need to do is to define your strategy. You current templates will have to be divided in 2 categories:

  1. CAT1 will be candidate for an upgrade. For these, you should undertake the series of tests described in the rest of this post. If you have any email that may have to be edited in the future, then you should assign its template to CAT1.
  2. CAT2 templates are not candidate for an upgrade. This can be because their are obsolete on a graphical standpoint, or because the first tests below makes it obvious that they will break and you consider fixing them is not worth the effort. For the CAT2 templates, the best is to remove or approve any template draft and email draft and archive the templates. Then make it explicit to the users that they should:
    1. No longer try to use these templates and use some CAT1 or some brand new v2 templates instead.
    2. No longer try to edit the emails based on these templates as these have not been tested on v2 and there is a risk of content loss.


At the end of the upgrade process, you will end up with 3 types of templates:

  1. Non upgraded templates. They should all be archived.
  2. Upgraded templates. These will work as they used to be in v1, with the same level on functionality, based on mktEditable elements. We recommend that you do not try to introduce v2 Variables or new element types on them, as it would cause compatibility issues on you existing emails
  3. New templates. These can be created either from clones of the v1 templates, from Marketo starter templates or from any other sources. They will potentially benefit from all the new features, including the modules.


1-Before you activate the v2: Test and prepare

Before you activate the new editor, we strongly advise that you take these preliminary steps:

  1. Delete unused tests and development trials
  2. Get rid of all remaining templates drafts and email drafts. Approve them or discard them, but let none of them in your design studio nor in your marketing activities. These draft will collide with the upgrade and you will have to delete them anyway.
  3. Archive the CAT2 templates and alert the users on not using them any longer.
  4. Rename all your existing CAT1 templates, adding a v1 to their names, to be able to distinguish them easily when you start creating new ones or upgrading templates
  5. Important: Review the CAT1 templates for the following undetected mistakes and fix these mistakes (and approve the template draft and the related emails drafts that are automatically created when you repparoved the template):
    • Any unclosed HTML tag
    • Any missing ID in a mktEditable element
    • Any duplicate ID
    • Any nested mktEditable elements
    • Any line breaks inside html tags
  6. Once you have corrected these templates, review all the emails that were based on these templates. Especially if you had some nested mktEditable, the corrected email might look weird. Edit the emails, check them, correct if necessary and approve them (leave no draft behind)
  7. Make a copy of the code of all the CAT1 templates that you have checked/corrected above in a backup storage (a text editor file on your computer will be perfect)
  8. If you have the courage and the time, rename all your emails you plan to upgrade, adding a v1-t1 (meaning email in v1, template in v1) to the name. The naming convention will evolve to v2-t1 when you will edit and approve the emails in editor v2 without an upgrade to the template and the to v2-t2 (or simply v2) when both the template and the email are upgraded.
  9. Important: clone the CAT1 templates, name the clones "[mytemplate]-upgtest" and approve them. Then create v1 emails from these upgrade tests templates, name them "[my email]-v1-upgtest" edit the content and add real content to these emails (in other words, replace the template default/dummy content with yours), then approve them. There will serve as a preliminary test just after the activation and before upgrading all the production templates.


2-Tests to be done just after the activation

Just after the activation of the feature, and before you authorize anyone to start using the editor, you should run this series of sanity checks:

  1. Clone your v1 templates, edit the new clones and approve them. These clones will be v2 (name them accordingly, it impossible to distinguish them in the email or template list without a proper naming convention Have the editor version to appear in the email list). This will act as a test and will also create the same template as the source v1, yet in v2. Then create test emails from this new v2 templates and test everything is alright. Send drafts, create a dummy email program targeting yourself. In case you encounter an error at this stage, better disable the v2, return to the v1 editor and fix your v1 templates or ask support to help you find out why these templates would not upgrade. You may also find that some of your templates have too many bugs to be worth the work and reclassify them to CAT1 (and archive them). Make sure all your templates are clean and "upgradable" before going further and start upgrading production emails.
  2. Upgrade the "upgtest" templates you have create before activating the v2 editor (edit them as a draft, and approve them). Go to the v1-upgtest emails. They should have a v2 draft attached. Edit these drafts and check that all the content is there. Check also that all the editable zones ARE editable. Approve these drafts, send samples. At this point, you have proven that your v1 templates do upgrade well and that the upgrade of the related emails went also well. If your email content is not there, signal it to support and revert to v1. If the content is there but the mktEditable zones are not editable, use the workaround in 1-3 in this previous post and signal it to support.
  3. If everything went well so far, then you can safely consider upgrade the production templates and the attached emails in v2, but remember that you are not technically obliged to do so. This would be done editing and approving these production templates. This will create in return a v2 draft on all emails created from the template you have upgraded, which you should edit and review before approving them. In case anything wrong is detected here, deleted these drafts and call support in.


At this point, you are done with the upgrade and you can benefit from the new UI.


In large orgs, you may want to deactivate the starter template library, in order to avoid your users starting to create emails that are far from your corporate guidelines.


3-Quick wins to look for after the upgrade

Your upgrade went well, here are some quick wins should you look for in order to get rapidly some more value from the editor, through new or cloned templates. We recommend that you do not try to introduce v2 features in upgraded templates that have production emails attached to them and rather create new ones.

  1. Edit your CLONED v2 templates again (do not do this on upgraded ones if there are some prod emails on them) and replace the zones supposed to contain images with new mktoImg elements. Also, replace the zones supposed to contain snippets with mktoSnippet elements. This is a simple way to make your user's life much easier. Be aware though that if you used to use tokens to indicate which image should be displayed, you should not perform this change (see Email editor 2.0 is leaving room for a v2.1 for the improvements that would be needed).
  2. Also in the v2 templates, replace your text CTA's with variables. Do the same with all 1-line formatted items such as titles (mind the text version, though). Again, a limitations here: variables and modules do not go long well, so if you plan to make your template modular, do not do this change.
  3. Approve these new v2 templates and test them extensively, again (send sample and smart campaign).
  4. If you are happy with the result, you can put them to use by your users, archive the old v1 ones and let your user know they should now use the v2


4-Longer term gains

On the longer term, invest in the new possibilities offered by the new features

  1. Set Background images with the image variables (we still have to check this works even in a <--!if mso context)
  2. Use the new variables to completely reshape the functional behavior of the templates
  3. Start leveraging the new module capability to create flexible templates that your users will love. It will enable you to reduce the total number of templates you need in your instance. (Attention to the variables in modules, variables are global to the whole template and will therefore have 1 value for the whole email)
  4. Use the brand new Video component


Continue the reading here: Email editor 2.0 is leaving room for a v2.1



This post is the last one of a 3 parts series, starting with this one: Testing the email editor 2.0: Great features, a few glitches and the strong need for a v2.1 and this one: Upgrading to the new email editor 2.0: a recommended migration path


From the tests we have ran, we found out that some of the features where not complete and that some of the key use cases would not be possible yet. This part details the features that still need to be completed or that are yet missing and points to the various ideas to be voted for.


Again, the new editor is a huge progress compared to the previous one. The level of flexibility it now provides makes it an excellent tool that combine user effectiveness, adaptation to business needs and high level of compliance to technical standards.

Nevertheless, from our tests and the doc, we have detected a few additional features that would be welcome and the lack of which limits the usage of the new features. These missing capabilities establish, in our opinion, the basis for a v2.1 that will hopefully come soon after and make the product really complete.


Table of content


The strong misses (must have)

This first set of ideas are still limiting the usage or mitigating the user experience

  1. Enable the Search (Ctrl-F) function on the code. See Enable Search (Crtl-F) in the Email 2.0 code editor
  2. Text version of the email do not support variables, this reduces the possibility to use a variable as a container for text parts of the emails, such as a title. See Email editor 2.0: variables in the text version
  3. Content that belongs to template and not to editable zones only render in the HTML version. And yet, it might be necessary in the text version as well. See Text version of email templates
  4. The new module feature seems very promising, although we have not been able to test it because of a strange limitation: it can be implemented only on a limited set of HTML tags and not on <div>. Our templates use divs as this is the only way to have them support all email clients on all versions of android. Email Templates 2.0: enable containers and modules on <div> tags, not only on table elements
  5. Manipulating images has made very significant progress. But using them together with tokens is still quite difficult. In fact it means that it is still impossible for the moment to set/change the images in an email with tokens only, without editing it. What a waste of time and a contradiction with the principle of tokens! See:
  6. It is impossible to make variables segmentable for dynamic content. In other words, if you use a variable to create a CTA, this CTA will have to be the same for all segments.  Guided LP and email 2.0 templates: make variables segmentable for dynamic content
  7. As detailed above, it's easy to replace CTA with 2 variables and make it unerring, but it will not be compatible with the module features. Text CTAs would be preferable. See Text CTA Elements for email and LP templates.
  8. The fact that variables have only 1 global value makes them very limited when combined with clonable modules, as it drives 2 modules to have the same CTA value, the same background image, etc... We really need to have variables to be able to get 1 different value for each module. See Email editor 2.0: module level values for Variables
  9. It is not possible in the 2.0 to have more than one container in a template. Therefore, it is not possible to control in which area of the email which module will go. SeeEditor 2.0: Have more than one mktoContainer per email template
  10. Controlling the number of modules that can be inserted in a template would be interesting to control that the modular approach does not turn into a total fantasy. See Controlling the number of modules in a container.
  11. In order to make sure that users comply to the corporate guidelines, we could also need to be able to restrict access to some of the functionalities of the Rich text editor toolbar: Restrict access to the Rich Text toolbar (Thx Alan Brown )
  12. Restrict the List variables values to the list values. See Email 2.0: List variables should only accept list values
  13. The need for some more advanced support of VML in order to be able to create templates that perform as well on Outlook as on any other client. See Email editor 2.0: Enable branded link for vml buttons
  14. Making a whole module dynamic in order to provide much more flexibility and reduce the risk for errors. Email editor 2.0: Make whole modules dynamic content


The features that would be welcome (should have)

This series of ideas would enable to push the usability and functional level a step further

  1. Enable the text editor to wrap text instead of horizontal scrolling. See New email editor 2.0: wrap template code
  2. Adding a token to a variable is still not convenient, as in LP's: you need to know the token syntax or copy and paste it from another part of Marketo Token picklists for Guided LP or email 2.0 template string variables
  3. It is too easy to add an image which dimensions are not compliant with the way your responsive template is set up, which would cause some issues on some platform. You can force the image dimensions with some new attributes, but it is not a recommended way if you want it to adapt to really all email clients and devices Editor 2.0: Set Min and max dimensions for image elements and variables in Guided LP / email templates
  4. Editing the email code is not a right that should be given to anyone. SeeEmail "Edit Code" (a.k.a "Replace HTML") permission
  5. Variables should display in the order set by the designer, as this order is usually more functionally logical. Guided Landing Page or email 2.0 variables should display in the order set by designer
  6. Finding out which email is upgraded and which is not requires to browse each of them one by one. Not convenient. See Have the editor version to appear in the email list
  7. Activating the starter templates is currently an ON/OFF setting in the admin. So either every one can access it or no one. It would be much better to make it more granular through a permission role: Editor 2.0: access to the Starter Templates to be controlled through a role permission
  8. When setting a variable in a template, if this variable is a number or a string, the user may leave it empty, which would break some of the behaviors in the template. See Required attribute for guided page variables
  9. A series of needs posted elsewhere by Courtney Grimes :
    • Would it be possible to offer overriding image thumbs for modules? If not, can we please get modules thumbs to render better? I use a lot of webfonts with fallbacks for emails and it seems Marketo likes to fall back...on sans-serif. Which I know is going to freak a lot of people out.
    • When dropping a module into an email, can the drop hover box scale to fit the bounds of mktoContainer's width? I can see this becoming confusing quickly.
    • For the "mobile" preview, would it be possible to allow for custom width scaling? While I realize 360px is the most common mobile width, it'd be nice to do quick checks without having to run to another email platform.
  10. The support for Wistia in the mktoVideo elements. See Email video element wisita support (Thx Matt Tunney)
  11. Better manager of the pre-header, especially in context where we need to make it dynamic. See Email editor 2.0: enable dynamic content in the preheader  and Email 2.0: enable to disable the preheader feature and the possibility to use tokens in the preheader. See Email editor 2.0: support tokens in the preheader
  12. The possibility to crop / resize images on the fly from the editor: email 2.0: Crop/resize images on the fly
  13. The risk induced by some variable default behavior: Email editor 2.0: have MktoBoolean accept an empty "true" value instead of for setting it to "true"
  14. The possibility to specify where an image should be stored when loading it from the computer. See Email editor 2.0: when uploading an image from the computer, enable to choose the design studio folder in which the image will be stored
  15. When creating a template from a template, have the possibility to lock down variables so that future users of the new template cannot change them. Email editor 2.0 Save as template: possibility to lock down variable values
  16. The possibility to generate HTML5 videos that would be played in clients that support it:Email 2.0: play html5 videos on email clients that support it.
  17. Make the module management in the editor much faster. See Email Editor 2.0: Make module management much faster with a dedicated wizard
  18. And also:




As you gain experience with Marketo, you will build increasingly complex flows to manage leads as well as to nurture them.


Marketo, in essence, is a rules engine. You decide the rules for your system and your audience. As with all computers, the rules you decide on are executed faithfully and without question. Thus, if your rules are not properly setup, they will go ahead anyway (if they are logically correct). For example, if you set your Smart List to ANY instead of AND, you will likely bring in many more leads than you intended, possibly ruining data or worse, sending out 100,000 emails to the wrong people.


Fortunately, there are ways to build workflows and test processes to avoid disasters. If you follow these principles and any other policies your firm has, you can reduce the error rate greatly.


Technique 1: Pay Attention

When to Use: all the time

Time Involved: 1 minute

Level: All

Paying attention seems like an obvious way to avoid mistakes. It is also prone to many human biases such as “Glossing over work you just did,” and “I’ve done this a thousand times before.” Be careful and follow a few of my rules when I operate alone.

  • Carefully create the smart lists. It is easy to drag, drop, and dash only to see the batch campaign send to 10 times the number you intended. When you think you are done, stop and look at the AND vs. ANY rules as well as the Counts.
  • Watch your Flows – I always check these three times. Remember a Flow step will run once for every lead that goes through.
  • Watch for red squiggly lines in Flow Steps and Filters. Even if it looks right, it means Marketo did not like something.
  • Watch the Schedule Count – does this count match what you thought? Did you subtract the blocked email count from the total? If something seems off, STOP.
  • Qualification Rules – Every vs. Once vs. something else. One of the most frequent questions on the Nation are related to this feature.
  • Scheduled Time – I always schedule a run for 10 minutes in the future because it is very easy to realize that the Email Subject Line is missing 9 minutes after you press Run.


Technique 2: Review Thrice

When to Use: always

Time Involved: 1 minute

Level: Any I use this technique in combination with Technique 1, cycling through the steps three times…or maybe I’m a little OCD about sending emails to thousands of people.

  1. Smart List x 3
  2. Flow x 3
  3. Schedule x 3


Technique 3: Paired Campaign Managers

When to Use: always

Time Involved: 1 minute to 1 day

Level: Any


A technique the Marketo marketing team uses is paired campaign managers. One person builds the Program, while the other prepares the creative. Then they switch to review each other’s work.If you have the staff, I highly recommend setting up this system as it helps to avoid the human ability to ignore errors and typos after working on something for 4 hours.You can go further and setup an entire approval process, even with just 3 to 4 team members:

  1. Build Program
  2. Add Creative
  3. Review Creative
  4. Review Program
  5. Test Program
  6. Approve by Director
  7. Launch


The one challenge with a full blown approval process is Marketo does not have an “approval system.” It may be possible for you to break out Roles according to the process above. For example:

  • Approver: can access all Marketing Activities
  • Program Builder: Marketing activities, but cannot send or approve emails or Pages.
  • Creative: Design Studio, Build Emails or Pages only. No Approval rights.


Technique 4: One Email, Multiple Leads

When to Use: Any system

Time Involved: 1 minute

Level: Any

This trick works on any email platform, although I tend to only use it on Gmail. You can create as many individual Leads in Marketo as you want and have them all go to the same email
  • Marked somewhere as a Test – IGNORE.
  • Fields values as you want them to be for the Test.
  • Qualification Rules set to Every Time. (otherwise, the lead goes through once regardless of test changes).

Once ready, be sure to copy the email address to a Form or notepad so you can keep using it. Then, make the change of value using any of the following steps:

  • Direct Edit
  • Edit in CRM
  • Fill Out Form
  • Change Data Value in Flow Action

Once your test is done, adjust your flow (if needed) and keep testing. To re-set your Lead, just undo the Data Value Change you made using the Direct Edit or another flow action.


Technique 5: One More Time…

When to Use: Basic Trigger workflows, Drip campaigns, Engagement Nurture, Lifecycle Testing, Lead Routing

Time Involved: 1 minute

Level: Any


This technique is just to modify the Schedule to use a Qualification Rule of Every Time. This way you can continually run the same set of Test leads.


Technique 6: The Brake

When to Use: Basic Trigger workflows, Drip campaigns, Engagement Nurture, Lifecycle Testing, Lead Routing

Time Involved: 1 hour to 2 days

Level: Any


This is by far the best technique and it is the most simple. At the end of your Smart List, add one of these two filters:Member of Smart List IN “Internal Test”

Email Address CONTAINS “”

Edit Wait Steps to 1 second or 1 minute – when you Clone, Brake, and Wait, you need to reduce all Wait Steps to 1 minute Any Time. Otherwise, you will Wait 2 days until Tuesday for the next email to go out. It can be a bit time consuming, which is why Cloning and Testing work better.

Technique 7: Software Style Testing Process

When to Use: Lifecycle Testing, Lead Routing, Very Complex systems

Time Involved: 1-5 days

Level: Advanced


This process involves setting up leads that meet various criteria to flow through your workflow. Each time you run each lead, you should have an Expected Result and an Actual Result. Once complete, you will have a clear list of potential flaws in the workflow and possible ways to resolve them.


Do not let “software” intimidate you. The test cases you setup will likely be a bit short of what a full Engineer in Test might do, but it’s close. Here are some terms you may come across:

  • Edge Case: used by engineers to discuss unlikely scenarios that could happen, but may not be worth the effort to test or fix. Be very careful that edge case leads do not bring the system to a halt.
  • Test Case: this is a planned test and lead that meets certain criteria we expect to happen. For example, the Lead is entered in Form X with State=CA and Country=Canada. What do we expect will happen? Test Cases may be called “Use cases” if created before the build.
  • Test Plan: The combination of Test Cases and materials to run through the system with Expected Results vs. Actual Result.


Portions of this post originally appeared on my blog and in collaboration with Steven Moody.

Hi all,


I and our team have had the opportunity to test the email editor for real for a coupLe of weeks now. Here is our non comprehensive (We obviously have not tested it completely, there are too many features!) feedback. Yet, in order to run this test, we tested about 80 different templates, including all the new templates provided by Marketo in the Starter kit and 150 emails. By far not enough to be sure we covered all the cases, but an interesting sample, though.


This post has 3 chapters:

  • This post details the test we have been running and the findings, including the issues we have encountered and how they were solved it ends with an evaluation of whether or not one should ugrade
  • Upgrading to the new email editor 2.0: a recommended migration path describes a migration path that will ensure that you do not end up with unexpected issues or emails that you could no longer edit
  • Email editor 2.0 is leaving room for a v2.1 details the features that still need to be completed or that are yet missing and points to the various ideas to be voted for.


Table of content


1-Tests and discovery

  1. Activating it is easy. Really. Nothing happens excepted that you have now a way to select your templates in the template chooser that is way more convenient and user friendly than what was possible before. Also, the complete library is now coming with it, but the admin can have it deactivated so that users do not start to wield too much of their creativity at the expense of the corporate branding guidelines
  2. Rolling back to v1: We also have tested disabling the new editor after a while. It worked fine. The major impacts are:
    • All v2 templates that we had created (or upgraded from v1) in between could no longer be selected for email creation, which seems normal.
    • The v2 Templates could no longer be edited neither, which seems also logical.
    • All emails that had been upgraded to v2 or created in v2 becomes impossible to edit, which also make sense.
  3. Opening v1 emails in the v2 editor without upgrading the template: Once the new editor is enabled, it remains possible to create or edit a draft on a v1 email event if it's templates has not been upgraded to v2. All the email drafts you create will be flagged as v2, even if the template is still v1 (a little weird). If you approve these drafts, the email is upgraded to v2 and the v1 is lost forever. This might have an impact if you want to preserve the capability to revert to v1 (see point 2 above).
    So, at least at the beginning and until you are fully comfortable, we strongly recommend that you clone them first. Once you are fully comfortable that all your v2 templates are fully operational, you will be able to edit the v1s.
    This is on this topic that we encountered the most significant issues in the whole test:
    1. The mktEditable editable sections could not be edited any longer. PM provided us with a workaround which is quite simple: click the "Edit Code", look for a mktEditable section and add a letter or a space, then save it. Finally, on the June 18th, the issue was fixed and all templates that we upgraded since then have not replicated the issue.
    2. The content had disappeared in most if not all mktEditable zones. Again, this was fixed on June 18th.
  4. Draft emails (never approved) or email drafts (edited after approval) created prior to the upgrade: We had a couple of v1 emails that had never been approved (and therefore never used). We tried to edit them after enabling the editor, and received a system error. But the workaround is simple here: just clone that email, and the clone will be the same email, upgraded in v2.
    We also had some v1 drafts pending. Once the upgrade was done, it became impossible to open/edit them again until we had upgraded their template and removed the v1 email drafts.
  5. Simple upgrade of templates: we have upgraded quite a few templates, just to make them appear in v2, but changing nothing in them. This is a key point as it we would expect this to be the first step after upgrading the editor. The findings here are mixed. We discovered that the previous version of the editor would let errors undetected and that these errors would become breakers with the new version, causing system error messages when someone tries to upgrade the templates with these errors. Amongst the things you need to cleanse thoroughly before upgrading are:
    1. Missing ID in mktEditable elements. These would throw a system error when trying to edit the email in the new editor. You could still edit the template in v2, though,  but then you are stuck with the email not opening. On June 18th, a fix has been provided: during the template upgrade, Marketo will insert IDs like "mkto_autogen_id_0" everywhere they are missing.
    2. Nested mktEditable elements. If v1, only the child mktEditable would really be editable. Then, on upgrade, trying to open the email or the template would throw a system error when trying to edit the email in the new editor. A fix has been provided so that nested mktEditable zones will no longer prevent the upgrade. But that fix is about separating the 2 mktEditable zones, one below the other, which impact is that it destructures the email. So you should  run a thorough review of your templates before upgrading to avoid this issue whatsoever.
    3. Here as well, we encountered the issue of lost content and uneditable mktEditable elements as in point 3 above, but this has been fixed and on june 18th, this very troublesome point was no longer replicable.
    4. The last issue that we encountered is that if an email would use images from another Marketo instance, these images would display on v1 and would not on v2 in the editor (They would show normally in V1 and v2 in our receiving mailbox). This is due to some network configuration and is apparently restricted to our pod (, but be aware.
  6. Once done, most templates were working well for email creation and as if nothing had been changed. Unfortunately, not all template upgrade went that well. One of the template we upgraded drove all the 40 emails based on this template to be impossible to edit. We had that issue on a template with a quite large number of attached emails. The issue has since been fixed and this is now back to normal, all the depending email being editable now.
  7. After a while, we noticed one strange thing: the basic template from the Marketo library had been replaced by one of or own test templates.
  8. Once a template is upgraded, in v2, all emails using this template get a new v2 draft, as expected from the doc. Here also, we experienced the same 2 significant issue as in point 3 above, which have been fixed with the same consequences
  9. We have also started to modify the templates in order to take advantage of the new element types and of the variables. These provide really a huge value, although we have not tested all the possibility brought by these new features, and we are yet to discover all the possibilities offered now. First findings are:
    1. The capability to create image elements instead of rich text ones when you need an image. This feature enables the designer to control completely the layout of the image and reduce significantly the risk of errors linked to replacing an image in a rich text zone, formatting it, etc... Similarly, email variables also bring in a lot of additional security and ease fo use to the user BUT it is impossible to use these image variables or elements in conjunction with tokens (meaning using a token to set the URL of the image). The result of this is that, if you use these new elements, you can forget about fully tokenizing the email. In our opinion, this is an important limitation. The whole way images are supported really has to be improved with these ideas: Email editor 2.0: possibility to use a token in an image variable, Email editor 2.0: using a token for the image elements, Store images/files in program or create a File/Image program token type.
    2. The possibility to create video elements is completely new in emails and is really cool. Works simply and efficiently. Again it would benefit to be compatible with tokens, similarly to image elements.
    3. We also tested the new variables, that work quite the same as they do in the guided landing page templates. Replacing editable text CTA with 2 variables (one for the text, one for the URL) completely reduces the risk of inline CSS errors for instance. The droplist variables are also really cool to better control what users would be allowed to do. But some strong limitations remains with the use of variables:
    4. We also detected one bug related to the new functionalities: the mktoAddByDefault="false" in the module elements does not work The flag has no effect and worse, it prevents the child elements in the module to be edited by the user. PM knows about it and the bug is being fixed, but in the meantime, one should just not use the attribute. All in all, this is really not a reason for not upgrading.
  10. We discovered then that the editor would not allow to search the template code using the CTRL-F, so we had to use another, third party, HTML editor. This feedback has been provided to PM and is being considered as a future improvement (see Enable Search (Crtl-F) in the Email 2.0 code editor), although this is IMHO really not a reason for not upgrading.
  11. We have started to play with the new module system. IMHO, the Module functionality is probably where the strongest difference and value increase is made compared the v1. Modules are sections of your emails. They will contain elements. Modules can be added to the email, move, deleted, cloned, making your email template much more flexible and versatile, in other terms... ...modular . The only, yet significant, constraint is that your templates will have to be significantly reworked to benefit from this feature. This is also true if your templates have been provided by template generators from the Launchpoint. Also, depending on the technology one is using to structure the template blocks, it might not be easy/feasible: lmodules can only be made of <table> or <tr>, and the module container will have to be <table>, <tbody>, <thead>, <tfoot> or <td>. Unfortunately, <div> are excluded . PM is working on it to see if it would be possible to add support for <div> in the future (Email Templates 2.0: enable containers and modules on <div> tags, not only on table elements ), but in between, we are investigating on our side the possibility to add <tr> or <tbody> elements in the templates.
  12. Finally, and this is key, we also have tested the templates shipped trough the new starter kit. They are great and very versatile, although the responsive behavior is not always perfect. Tests @June 18th:


2-Should you activate the new editor?

  • This is a legitimate question since the change is significant. Furthermore, here and there, some warnings were raised on the importance of the change and the attached risks.
  • The mere fact that activating the feature and touching nothing else enables to benefit from the new template chooser, the new email editor and the new email previewer, each of them being easier to use and providing a more complete feature set, make it worth the upgrade. And this is true whether you are using home grown templates, templates derived from the good old or templates created with a Template generation tool from the launchpoint. Ask your template vendors for more details.
  • Furthermore, the conclusion of our tests is that working on v2 emails created from v2 templates (created in v2 or upgraded from v1) works fine. As stated earlier, once upgraded to v2, old v1 templates continue to work in order to create new emails and, since the mktEditable classes continue to work as previously, you could even continue to develop templates without changing your development technique. This means you can benefit from new features such as the new template selector with a very low investment.
  • And of course, if you are ready to invest into the adaptation of your templates in order to benefit from the new features, then this new editor brings a lot of value. Safeharbor: Just be cautious yet and clone before editing, since we CAN guarantee that we have NOT tested all the new functionalities
  • But, as described above, upgrading production v1 templates (editing them and approving them in v2) and consequently upgrading v1 emails attached to these templates has been causing loss of content and editable zone problems in the upgraded emails. It all has been resolved now, but I would still encourage you to be cautious and use the migration protocol described here to make sure you will not hit the same problems.
  • Therefore, if you decide to activate v2, it would be preferable that you to adopt a policy by which you will not try to upgrade to exiting templates, but create new, V2 ones and retire the v1. Doing this, your v1 emails will continue to be sent normally after you have activated the new editor.
  • If separating V2 templates from v1 is not possible, or if you want to go one step further, and you absolutely have to upgrade your production v1 templates, we recommend that you run a few checks before upgrading (see Upgrading to the new email editor 2.0: a recommended migration path), correct the glitches if necessary and be ready to step back on this or wait until the bugs are fixed.
  • Finally, our tests also shown that the new editor could be further enhanced. We have listed some areas for progress here: Email editor 2.0 is leaving room for a v2.1


We will continue testing in the next few days, and keep you posted of findings. Pls do not hesitate to share yours as soon as you are ready to test.


This is to be continued here:

Email editor 2.0 is leaving room for a v2.1

Upgrading to the new email editor 2.0: a recommended migration path



The Marketo renewal is a process the majority of us have to deal with every year. Usually we dread it, and with luck get through it without any tears (or punches thrown). It's time to navigate that renewal with dignity!


Based on my experience, user feedback and a bit of insider information, here are 5 tips to successfully navigate your Marketo renewal.


1. Begin your renewal discussions early

Make sure you reach out to your rep at least three months prior to your renewal. Get on the phone to understand what the increases are this year, what upgrades you may need and how your budget aligns with your renewal cost. Depending on your internal process, you may be asked to provide competitive pricing to ensure you are within an industry benchmark. Plus, if your database is out of compliance, you will need time to remedy it.


2. Know your database Tier

Marketo Lead Management is structured in a tiered pricing system based on the number of leads in your database. You will need to check your current contract to see the Tier you are paying for. The definition of "leads" according to Marketo is any lead in your system that has an email, phone number or address. How do you find this information? It's on the Lead Database dashboard, but you need to hover over the component to see your entire database that you are billed on, instead of just Marketable Leads. If you are above your Tier, expect a hefty increase for your renewal and limited negotiation power until you can get your database into compliance. If you start your renewal early enough, you should be able to get the database down.


Known Database Tiers:

  • Spark:
    • 50K
    • 50K-100K (increments of 10K)
  • Standard:
    • 100K-250K
    • 250K-500K
  • Select
    • 500K-750K
  • Enterprise Edition beyond 750K


3. Dealing with your brand new Account Manager

As is typical with a growing technology company, your account rep from year to year is ever changing. It's hard to keep a rapport going when your account rep at every renewal cycle has only been with Marketo a month or two.

3 tips for the revolving Account Manager door:

Use the Contact Us form on if you don't know who your rep is or are getting 0 response from what you thought was your current rep. There is an SLA around their Contact Us form, so you will get a phone call from someone at Marketo within a couple hours and they will be able to look up your current Account Manager.

Keep all your communication records from your past renewals. Since reps change each year, they may or may not have access to the notes you discussed 10 months ago about getting more training sessions included in your renewal this year. If you have a record of these communications, you can easily discuss them with your current rep.

There is hope! Word on the street is that the renewals team has a new leader in place and is looking to make this process a much better and more customer focused experience.


4. Bring in a Negotiator

Not everyone will need this, but it can be very difficult to negotiate your Marketo renewal. Many people have described the process at "take it or leave it" because Marketo knows it's painful to switch systems. For me, I'm deeply invested in Marketo personally. I have no interest in moving to another system and it can feel as though the Account Managers know this and give you little concessions for your renewal. Perhaps that's an overly emotional way of looking at it, but I have other systems that I can negotiate easily because the threat of replacing their system is real.


Luckily, I have an IT team that handle hundreds of technology renewals each year and know how to negotiate with Account Managers. Sometimes a little push back is all that's needed, but other times it has to do with getting add-ons or a lower year-over-year increase %. Bottom line is that if you're not very good at being bad cop, bring in backup. This could be your co-worker or your boss, as long as they can play that part for you.


5. Read the Contract

Yes, the last tip is to read the contract. It's not the most exciting read but make sure you do go over the contract before signing. Especially if you have been out of compliance on you database tier, check that there's nothing in the contract about automatically increasing your subscription.


As a final box to check off, ensure the contract has the list price, discount and quantity information by line item. It's nearly impossible to compare year over year if you don't have that information included.


Signing Off

Even though it seems painful, this is typical of any renewal process. There's usually a yearly increase that can be minimized with multi-year contracts and there's always a bit of room to negotiate. Going back and forth is important though, as it will save you money overall. Keep track of money savings for your records to provide to key internal stakeholders. You never know when you can use that bargaining chip to get a Marketo add-on!



What it is...


Spam email is a form of commercial advertising which is economically viable because email is a very cost-effective medium for the sender. If just a fraction of the recipients of a spam message purchase the advertised product, the spammers are making money and the spam problem is perpetuated.


Why is it called SPAM?

Literally, because of this Monty Python bit.


Monty Python - Spam - YouTube



How it affects You


When we send out unsolicited emails, the IP address used is monitored by Spam Listers, like SpamCop, Baracuda, etc.

Marketo assigns our IP addresses. If they don’t catch things in time, all emails sent from that IP will be blocked


Actual real lead that’s now blocked because we’re listed as spammers



How to protect your reputation in Marketo


  • Do not email to people who have not filled out emails asking to be contacted
  • Monitor who is calling us a spammer
  • Watch for Spam Traps
  • Create a suppression list and institutionalize it
  • Do not delete these leads from Marketo
  • Don’t mail to personal email addresses


Do not email to people who have not filled out emails asking to be contacted

  • Don’t purchase or rent lists
  • Use lists from tradeshows CAUTIOUSLY
    • Most often, tradeshows give us a list for one time use
    • Send an email to the list with a Call-To-Action to fill out a form
    • Set a “Self Destruct” workflow 10 days after the email that DELETES any lead that has not filled out a form


Monitor who is calling you a spammer

  • Create an operational program for Email Analysis
  • Create this  Smart List:
  • Picture3.png


Watch for Spam Traps

  • Spam Traps are email addresses that look, smell, taste and feel like real email addresses
  • They are created by companies and put onto lists that are imported into Marketo – tradeshows, third party lists, etc
  • They have never filled out a form
  • They monitor how often they get email from us and then report us to SPAM agencies that put us on the list of spammers


Tell Tale Signs of a Spam Trap:

  • Never filled out a form or came from a CRM
  • Often clicks emails before emails is delivered
  • Often times a flurry of clicks
  • Clicks links but doesn't visit web pages


Smart List to find Spam Traps:



Chrome Legacy Window 6152016 110946 PM.bmp.jpg


Creating a Suppression List

This is a list that you'll want to hold onto, monitor and perfect.  This is a list that you'll want institutionalized on all of your email campaigns.  Suppress these people!!!


Smart Campaign 1 - Spammy Accounts

Create a smart list where email address starts with "info@"

Add them to your Suppression list


Smart Campaign 2 - Bounces

Email Bounces Soft, email is any, minimum number of times = 3

Email Bounces - email is any, reason contains: spam, invalid, spamcop, blocked

Add to your suppression list

Chrome Legacy Window 6152016 111640 PM.bmp.jpg

Smart Campaign 3 - Potential Spam Traps


  • Clicks Link In Email - Email is Any
    • Date of Activity: In past 2 minutes
    • Min Number of Times: 3
  • Lead Source Is Not (or your CRM)
  • Not Opened Email
    • Email Is Any
    • In Past 2 minutes
  • Not Filled Out Form - Is Any

Screen Captures.jpg

You'll eventually find leads like this, where there's a flurry of clicks but no web pages visited.  This is due to the spam scanner clicking the link to prove to itself it's a redirect, then abandoning the click so it never trips Munchkin


Chrome Legacy Window 6152016 113429 PM.bmp.jpg


There are a lot of other things you have to watch out for with Spam Traps.  I'll update this blog as I find them.  If you have some, feel free to contribute!

concept2.jpgBasic Events: An Expanded Concept of Interesting Moments


Events are Google Analytics’ way of tracking notable interactions a user has with your website—clicking on a link, watching a video, sharing a link on social media, filling out a form, or interacting with Flash. The only limit is your imagination! Events are also stored separately from web activity, so they serve as a quick way to compare and contrast web activity. For instance, Events can show what actions a user took on your website before filling out a form or if time on site affects conversion events.


However, one way that I find Events to be really useful for Marketo users is to use Events to bridge the gap between Marketo’s limited web reporting and the important individual Moments that happen to a user—as such, I’m a fan of bringing Marketo’s Interesting Moments into Google Analytics to understand what’s causing those conversions. With Marketo’s Interesting Moments, your Moments are broken down into three main categories: Email, Milestone and Web. Google Analytics has a similar sorting system, with Event Category, Event Action and Event Label. Unlike Marketo, though, these are all completely custom fields—you’re free to populate whatever content you’d like in each. Generally, however, I recommend that you use the three fields to sort from most generic (Event Category) to most specific (Event Label).


Moreover, Google Analytics offers a view that Marketo cannot easily reproduce: seeing Interesting Moments in aggregate and being able to see the most prolific moments across your marketing efforts. Echoing what Interesting Moments you’re recording in Marketo in Google Analytics makes sense—and is pretty easily achievable with a very basic Marketo webhook.


We’re going to set up an incredibly basic webhook that will use your Smart Campaign’s name as an Event Action and its description as an Event Label. Inside of your Marketo instance, head to Admin->Webhooks. Since you’re going to be using the Measurement Protocol to write this external data into Google Analytics, you’ll need a unique string to let Google Analytics know this is the particular user adding this data to your database. Seeing as Google uses the UUIDv4 protocol to determine what a unique string is, we’re going to need to generate a random UUID value.  Visit the Online UUID Generator and copy the value it randomly generates under “Your Version 4 UUID.” From there, click New Webhook and fill out the form that pops up with the following:


Webhook Name:  Analytics Interesting Moments
Request Type: POST


Leave everything else blank or as the default value and hit Save.


To use this webhook, simply name your Smart Campaign with the desired name of the Event Action (bearing in mind that if your Smart Campaign is in a program, you will see the full campaign name as Program Name.Campaign Name) and give your Smart Campaign the description you’d like the Event Label to be. Then simply set up your flow to use these labels in conjunction by structuring your actions using the following image as an example.


marketo webhook analytics interesting moments

This will result in your Google Analytics instance recording each event, like so:


marketo google analytics integration event

This same idea of aggregate counting can be used in a lot of different ways beyond this example, and when tied with your User ID reference, can provide some extremely powerful aggregate reporting that Marketo currently lacks.


Advanced Events: Debugging Forms

While using Events as Interesting Moments is a perfectly valid use of Events, it only scratches the surface of what’s possible with Event recording—and what assumptions you can make from events you record.


As an example, one of the questions I get asked a lot as a digital marketer is how long a form should be. Some schools of thought say that you should get a bare minimum, and others say that only qualified leads will bother to answer all your questions (and so you should have long forms). Like so many things in marketing, there’s no real “best practice” but what works best for you. The trick is to understand what actually works, though, and Events can help us figure that out.


A few years back I was presented with an interesting problem: a company had an event application form on their site, and while both the event and the page the form was hosted on were popular and drove a lot of phone activity, there were a lot less people filling out the application form on the site—which would have required less effort than calling! We tried talking to people who had called in to figure out why they didn’t just fill out the form, but there was no consistent answer they gave. Moreover, seeing the bounce rates on that page, something was happening that made people not want to fill out the form. But what?


In order to solve the issue, I set up Events to record every time a person filled out a form field—the idea being, if you can track cart abandonment in ecommerce situations, why not track “form abandonment”? Once this system was set up, it became clear that the main problem was an open text field asking people to describe an aspect of themselves in detail. Even though the field was optional, its presence caused people to stop—and consequently, not convert. The field was removed and conversions doubled.

Applying this tactic to your Marketo forms is a straightforward process and something you can implement to figure out your completion rates for each field (and overall conversions). The answer is in a small piece of JavaScript, which I’ve shared here. Upon implementation, you can see by Event hit how much of your form is being filled out.



In this example, clearly people are stopping after First Name. This empowers you to examine your form setup and figure out why.


Bring it on home: Taking data from Google Analytics back to Marketo

Now that we’ve built all this cool data inside Google Analytics, what do we do with it? After all, while having access to this data is great, it can be a little opaque to work with. While Google Analytics is very useful for looking at data in aggregate, it’s less useful for looking at data individually—this really is the job of platforms like Marketo and your CRM. As a result, we’re going to need to extract the data and send it back to your Marketo instance to take action.


The Analytics Core Reporting API is built to distribute the data you’ve collected inside Google Analytics and send it elsewhere to other web services, such as…Marketo! Google offers some quick examples using JavaScript, Java, Python and PHP on how to create an API connector, but a handful of other wrappers are available if you’re looking for help in another programming language. Once you’ve set up your API connector, I recommend using Google’s Query Explorer to get an idea of some of the basic functions you can perform with the API. Those looking to do more complex operations should do a deep dive into the Dimensions and Metrics Explorer to see what combinations of values can be extracted from the API.


As an example, I’ve built a very basic query to retrieve users with Marketo IDs and calculate their average time on the website for the past 30 days using:


This returns the following JSON results, which show both the Marketo ID of a user and their average time spent on a page—as you can see, good ol’ 7498 (a.k.a. this author) has no time to be spending on individual pages. From here, you can integrate the query into your larger Marketo API connections to send this data, using the Marketo ID as a key, to custom fields, storing whatever data you want.


The invaluable insight you get as a result of implementing these within your system—what content items are performing best, why your forms aren’t converting visitors, how many visitors shared your content—allows you to deeply analyze what works and what doesn’t, helping you to improve the quality of what you’re putting out there and how you are putting it out there.

Marketo announces a plethora of new features at Summit. The riches are so bountiful, its hard to keep track of them all. Fortunately my overly-detailed note-taking from high school still comes in handy on occasion.


Here is this year's deep dive into the product roadmap, along with some commentary to help you navigate the changes ahead.


There were some very significant announcements this year, including a complete rearchitecting of Marketo’s underlying technologies, a foray into the world of ABM, and the first step of a next-gen analytics experience. Let’s dive in.


Note: these features were announced as part of Marketo's roadmap for the coming year and many do not yet have a public release date. Unless they specifically say "Spring '16" next to them, the features are not expected as part of the Spring '16 release.


Project Orion: Re-Architecting Marketo for Enterprise Scale


Project Orion is the most exciting innovation this year. It’s not a new feature but rather a complete overhaul of the underlying architecture that makes Marketo work.


First, consider that Marketo is a huge workflow engine. It ingests behavioural data and lead information, logs that information as activities, and then executes actions in response to those activities based on rules. It’s beautiful and powerful.


Here’s the catch: at enterprise scale, Marketo can slow down. Anyone who’s gone to get lunch while waiting for a report to run or seen campaigns queued up for hours will know this pain.


And so we have tactics to help larger instances stay lean. We remove Munchkin from very high-volume pages and shift triggered campaigns to scheduled batches running at 3 AM. But do things have to be this way? Good design hygiene is a virtue (see some very useful tips in Josh Hill's recent post), but forced austerity due to platform limitations hurts us all. That’s like driving your Ferrari in the slow lane.


Project Orion tackles this issue head on, bringing greater capacity, increased scalability, and faster throughput to all of the platform’s key functions (data capture, activity logging, execution).


Without getting too deep in the weeds, Marketo is rebuilding its platform to leverage next-generation technologies like Kafka and Apache HBase that are used by some of the world’s most data-intensive applications. This is a multi-year initiative, but all clients will be migrated to the first iteration of the Orion platform sometime this year.



Credit: Ajay Awatramani


What does this mean in practical terms? Director of Product Management Ajay Awatramani flashed some statistics in his sessions. Things like 20 million activities per hour per instance and all triggers firing within 5 seconds. And that’s just for starters.


This is a much needed project that lays a foundation for years to come.


Marketo Account-Based Marketing


ABM: the first three letters of the alphabet if you don’t count C-L. It’s also the coolest marketing tactic EVER according to my LinkedIn feed.


However, Marketo Account Based Marketing is not merely a jump onto the bandwagon. To the credit of Mahesh Jeswani (MJ), the PM for ABM, it appears to be a thoughtful first step on what I suspect will be an ongoing roadmap of new account-oriented features. There’s good stuff here.



Credit: Mahesh Jeswani



Account Dashboard


The account dashboard offers an account-centric view of the lead database, bringing together information on fit, engagement, and revenue grouped by account into a single place.


One simple but powerful innovation is a new grid of named accounts, showing information like pipeline, account score, and other account-based data in a single table. Marketo makes it pretty easy to create tables of lead information via smart lists, but grouping this data by account is a challenge. Not with ABM.



Credit: Marketo Webinar



You can also create specific account lists (e.g., Top 50 in High Tech) to segment your view and see a summary of information (e.g, average account score) by list.


Each named account also has its own dashboard. The dashboard is tabbed similar to a lead detail record (although much prettier) and gives some useful high-level metrics such as the number of people from this account in the database, open pipeline, trending account engagement over time, account-wide interesting moments, and top ten best bets for people in the account.



Credit: Marketo Webinar


This is a super useful page. It is not yet entirely clear to me how to expose this data to sales. PM Mahesh Jeswani mentions there will be a new browser plugin to assist the entire account team in collaborating. Look forward to seeing that. Will it also someday be available in Sales Insight?


In any case, think of how powerful this view would be for building sales/marketing alignment around account targeting.


Lead-to-Account Mapping


CRMs are messy things, with people from the same company scattered across different accounts and across your lead object. It isn’t always clear that the new inbound lead you got last week is actually a decision-maker from a target account.


Lead-to-account mapping bridges that gap by automatically linking leads to accounts and consolidating that information into a single view.


This feature will use some sophisticated fuzzy logic and match across multiple objects (leads, contacts) and data points (domain, company name, IP, etc., etc.).


Also if you use an existing lead to account mapping solution, you will apparently be able to plug that into Marketo ABM so that the third-party solution will handle the logic for the mapping. Not sure which providers are supported but this is a nice touch to allow you to maintain an existing part of your stack.


Account Scoring


abm-marketo.jpgMarketo’s standard scoring functionality is lead-centric. But looking at people individually doesn’t help you compare and prioritize your targets at the account level.


Marketo’s account scoring feature will offer several ways of calculating a score for an account.


One method will be to calculate a score based on the firmographic attributes of the company (what we do now as demographic scoring, but centralized at the account-level).


To gauge engagement, you will be able to aggregate the behavior score of all people associated with that account or create an average.


This is a straightforward port of traditional lead scoring into an account-based world, but it formerly required custom coding in your CRM to achieve. Now we’ll be able to do it easily in Marketo.


New Email Editor and Template Picker (Spring ‘16 Release)

In January 2012, I graduated from MailChimp to Marketo. It was both awesome and painful. I got lots of new features that went way beyond simple drip emails (awesome). But I also lost a UI that let me create new email templates without feeling like I needed to call a front-end developer (painful).


The new email editor and template picker will erase that pain for a lot of new customers and also just generally make the email experience way more delightful. I wish they had done this 4 years ago.


Pick your Template


Home - Starter templates.png

Credit: Marketo Release Notes



It’s beautiful! So simple. Nicely done, Justin Cooperman.


This will come pre-loaded with a bunch of templates that will be actively maintained by Marketo (presumably to deal with the latest obscure limitations in Microsoft Outlook). Under “My Templates” you can also create and maintain your own templates, obviously, which will have their own thumbnail and be equally pretty.


Email templates will also get a new templating syntax akin to landing pages to support the new features described below.


Release Notes - Template Picker


Email Editor for the 21st Century


The new email editor incorporates the best of the new innovations in the landing page editor and then leapfrogs it. Variables come to email as well as “modules,” containing elements like images, videos, text, etc. that can be reordered and moved about with ease.


You can easily preview your emails on desktop and mobile. You can easily add and edit your pre-header. You can easily edit source code within a module without breaking the email from its template.


It’s like they just took a list of popular feature requests and implemented them all!


Modules next.png

Credit: Marketo Release Notes


Release Notes - Email Editor


Next-Generation Analytics: Email Insights (Spring ‘16 Release)


Marketo’s reporting module has been in need of an overhaul for some time now. That overhaul is coming (courtesy of Brian Theodore and team), and Email Insights is a glimpse of what the future holds.


This is a well-executed reinvention of email reporting in Marketo. The sheer flexibility it offers compared to current Email Performance Reports should leave most seasoned users feeling gratified. But there’s a lot more going on beyond additional dimensions.


The key innovation here is the “insights” part. The report will proactively surface new insights for the user, such as “you have the most opens in the state of Florida.” What you do with that is up to you - but it's nice the report is taking an active role to push these factoids in front of the marketer.


Insights are also contained in the various trending indicators that accompany the metrics. So the report doesn’t just show you that open rate is x% and CTR is y%, but also helps you put that information in context through a layer of visual cues, indicating whether something is up, down, or the same.


Also worth noting: the reporting engine is based on the Orion architecture, meaning it should be fast.


email_insights.pngCredit: Marketo Release Notes


Based on the demos I’ve seen so far, I like this report. It will be fun to stress test it in real life.


And consider that this report is merely a beachhead in the larger redesign of Marketo’s reporting and analytics. I look forward to seeing this level of thought and care applied to program and opportunity analysis.


Public Service Announcement: Make sure to create your custom dimensions during the 4 week roll-out window. More information here.


Release Notes - Email Insights


Mobile Engagement: In-App Messaging (Spring '16 Release)


The mobile app has a nifty new in-app messaging designer and some advanced logic to target specific mobile audiences. This is really neat, and I wish I had a client with a mobile app to be able to take this for a spin. Would love to hear some feedback from those who have been doing mobile outreach and what their results have been.



Credit: Marketo Release Notes


Release Notes - Mobile In-App Messages


Admin and Workflow Improvements


Audit Trail


Now you can finally find out who broke your smart campaign and deactivate their Marketo account once and for all. Audit trail provides granular logging of all changes (create, edit, and delete) made to assets in design studio and marketing activities and in admin settings.


It comes with a cool new interface that allows you to filter and search through changes for specific information -- targeting, for example, all actions of a specific type, by a specific user, affecting a particular type of asset, or in a particular workspace.


You can access a 6 month history and also export to CSV for compliance and archival purposes. Access to Audit Trail is a new permission in the admin.


No-Draft Snippets (Spring ‘16 Release)


Another feature that is long overdue. If you’ve ever updated a footer snippet and then had to re-approve a bajillion landing pages, you probably wept bitter tears and promised yourself you’d use tokens next time.


Now your suffering is at an end. Marketo has sensibly created the ability (controlled by a new permission in the admin) to either force all assets into a draft when you update a snippet or allow them to maintain their existing state.


Release Notes - No-Draft Snippets


Granular Permissions


With granular permissions, we will be able to set permissions at the asset and folder level. This sounds dry, but there are a lot of potential use cases we will appreciate.


If you are working with an agency and want to give them access only to a development folder without exposing the rest of your marketing activities tree, you can do that.


If you have different teams working in a shared workspace but don’t want them getting their paws on each other’s stuff, you can limit them to certain folders.


If you are an iron-fisted admin and don’t want your marketing users even considering touching your operational programs, you can lock them out.


Friendly Instance Name (Spring ‘16 Release) and Universal User ID


These are two related features that you frankly may not fully appreciate unless you have spent a day working as a consultant and logging in and out of 12 different Marketo instances over and over and over again.


The “Friendly Instance Name” feature allows admins to provide a name for the instance - “Acme Sandbox,” “Acme Production,” “Fluffy,” and so on. It’s up to you. This feature is coming out in Spring ‘16.


This feature paves the way for the incredible Universal User ID. This is single-sign-on for Marketo, allowing you to log in with one user name and then switch seamlessly between different instances that you have access to. The friendly instance name is the key to knowing which instance you are actually logged into.


Release Notes - Friendly Instance Name


Limited Time Access (Spring ‘16 Release)


Similar to the “Grant Login Access” in Salesforce, Limited Time Access allows you to provide access to a user for...a limited time. Fairly self-explanatory.


The uses/benefits of this feature are many. For example, providing a Launchpoint vendor with temporary access to help set up an integration. Combine with granular permissions for bonus points!


Release Notes - Limited Time Access


Outbound Advertising


Ad Bridge will get a bit more automated with automated audience sync, meaning that you no longer will need to push a button to pass leads from a list/smart list into an ad platform.


This is good but still falls short of fully integrating ad bridge into the automated workflow with flow steps. Maybe next year…


In the meantime you can vote up this idea to do just that.


Predictive Content for Email


Give your emails a dash of machine learning and watch your click-through rates soar. At least, that’s the idea behind predictive content for email.


Similar to predictive content for the web (formerly part of RTP), you’ll be able to add a dynamic section to your emails to automatically recommend a “next-best” content asset.


Example: if someone signs up for a webinar, figure out the best white paper they can read in the meantime. Or, if someone downloads a white paper, recommend the best video to watch next, and so on.


Being able to do this in email is potentially a real game changer. You can go outbound on your entire lead database and leverage all of the known data you have to present them with the most relevant content.


Data Model and API


Custom Activities (Spring ‘16 Release)


Custom activities are really cool. You can represent the activities that matter most to your business in Marketo in the way you want to see them. Then you can use this data for targeting, triggering, and personalization.


We all know the standard activities that Marketo has - Visits Webpage, Fills Out Form, Opens Email, Clicks Link in Email, etc.


Custom activities are just like that but they are specific to your business. For example, “Registers for a Class” (education), “Makes a Purchase” (ecommerce), “Creates New Doo-Hickey” (software app that allows people to create doo-hickeys). Say goodbye to virtual pageviews.


The only downside right now is that you need to create custom activities via the REST API. API calls are a finite resource, so you need a well-considered strategy for what you create. Also, not everyone has the technical know-how to implement a REST solution, which is a bit more involved than using the Munchkin API. However, it’s only a matter of time before third-party solutions emerge to make this process simpler even for small, non-technical marketing teams.


Side Note: Custom Activities vs. Custom Objects


Custom Activities are not to be confused with custom objects, which were announced at Summit last year and became generally available in the Fall ‘15 release.


Custom objects represent additional entities that live in your Marketo instance - they are things that have properties that can change, like courses, cars, tractors, shoes, or high-end kitchen appliances.


Whereas, like their name suggests, custom activities are actions or events that happen at a moment in time, with details that can’t be changed.


Release Notes - Custom Activities

Documentation - Custom Activities


REST API Updates


The REST API continues to expand, with new APIs for landing pages and forms. This completes the asset management component of the REST API, meaning you now have programmatic control over all Marketo assets.




Microsoft Dynamics users in our midst will be pleased to hear that the performance of that integration will see vast improvements thanks to Orion.


Ajay Awatramani states it will be “zippy fast” - 20x faster for the initial sync and 5x faster for the incremental sync. Maybe we’ll see the Dynamics integration continue to be brought up to par with Salesforce.


Wrapping Up


I really enjoy the Customer Love and other product-focused sessions at Summit. The PM team works hard and is responsive to user feedback. At the same time, us Marketo users are a critical and demanding bunch, which no doubt keeps them on their toes. That’s a good thing. But every now and then a thanks is in order. Thanks!

Josh Hill

Load Balancing in Marketo

Posted by Josh Hill Expert Jun 1, 2016

As your use of Marketo matures, so do their customers become more skilled in the use of the platforms. And that means some customers push the limits of what the system is designed to do. Whether it is running dozens of data correction flows, scoring, and lead lifecycle or accumulating workflow detritus, an older system is often a slower system. Remember the Windows entropy problem? It's similar.


To keep your leads flowing fast, there are some tricks and best practices for running a system efficiently and effectively. These tips are helpful for new system builds (do it right the first time) as well as rebuilds or cleanups. These tips are considerations and each situation may require different designs.

Why do systems like Marketo slow down?

Like any computer program, Marketo is limited by hardware as well as software. Marketo is designed to handle marketing focused activities like scores, syncs, and email sends. Marketing tech people like me have taken advantage of other functions like data normalization, personalization, and lead lifecycles to perform tasks that the system can do, but maybe wasn't expecting to be used heavily.


There are three key components that can slow down an instance:

  • Number of trigger campaigns
  • Volume of Leads
  • Complexity of smart lists


There is not a hard and fast rule for the number of campaigns or leads that Marketo can handle well. Based on my experience, slow downs can occur with as few as 150 triggers and 100,000 leads. I've seen systems with 1,400 triggers and heard of systems with 3,500! With regular cleaning and good systems design, it is fairly easy to keep your system running fast.

Increasing speed, reducing load

Trigger campaigns are always on, always listening. That means for every lead that changes, the system must check if it meets those conditions. If you import a lot of leads, or change a lot at once, the system will have to check all of those at once. According to Marketo, each lead is set serially into the flow, further slowing down the system.


Reduce the number of Triggers!

  • Convert triggers to batches.

Does every score have to happen immediately? Probably not. Behavior based triggers are prone to frequent hits and complexity, so move these to a nightly batch. Data normalization can also help. Batches also run all the flow steps for every lead at once, instead of serially, which reduces total processing time.


The real reason triggers cause problems is there are two queues. Whenever a change to a lead happens, it hits every potential Trigger in the backend - the Trigger Evaluation Queue. You cannot see this and Marketo Support won't show most of you what is going on there.


The key thing to know is the formula: Change x # of Leads.


100,000 Leads Imported x 20 Lead is Created Triggers = 2,000,000 evaluations


Yes. It gets big, fast. The fewer triggers you hit, the faster Marketo can send the lead to the correct Trigger that's visible in the Campaign Queue. Some big offenders could be your SalesOps team or Product team making batch changes on their end, only to let 1,000,000 records sync to Marketo to hit that Evaluation Queue. This Queue will slow down your processing and routing inside Marketo because it takes longer for the lead to hit the correct set of Triggers and then be processed as you expect.

  • Reduce the Qualifications Rules from Every Time to something else.
  • Reduce Triggers like Change Data Value and Lead is Created to single points of entry or batches whenever possible.
  • Reduce the number of leads that can flow through with filters
  • Leverage the auto-deactivation after 6 months.
  • Clean up triggers quarterly with the Campaign Inspector.
  • Compress flows by adding flow steps to one campaign based on the same trigger. Eg: Interesting Moments and Scoring can often be on the same flow.


Smart Lists Should be Less Complex on Triggers

Depending on the situation, you may want to reduce the complexity on batches and triggers. Instead of Marketo looking for the list and running it, just put the filters in the trigger itself. Or reduce the number of nested smart lists called in a smart list. Whenever you ask Marketo to call another Smart List, it has to wait until all of the other smart lists finish, before putting together the final counts.


The more complex a smart list, the harder it is for the system to figure it out, which increases backend processing (which you do not see on the Campaign Queue) and even creates campaign failures from timeouts.


Change the Time of Day of Batches

While this may vary with your business and location, batch data flows should occur at night, or the time of day where leads aren't on your site frequently. This helps give priority to email sends that may start around dawn or through the day, as well as triggers that route leads to sales on weekdays.


Use Wait Steps in Processing

There is a much longer discussion on this regarding Lead Lifecycles and Ed Unthank's lead processing articles. Many times, some campaigns are subject to a race condition between themselves or the CRM. To mitigate this, where the lead should have been updated, but wasn't in time for the next campaign to process properly, you can do three things:

  • Add Wait Steps at the start of the flow to let the other flows catch up. Sometimes 5 to 30 minutes are needed.
  • Add Wait Step after a Sync to CRM step to let the CRM assign a Lead Owner. May require 10 - 30 minutes if the system is complex.
  • Request Campaigns to control the order of operations.


Now remember that Wait Steps will also slow down the overall time it takes for a lead to finish processing. Sometimes this is good if you think Marketo isn't fully registering the Data Change before the next step. Other times, it may cause the overall time to take much longer.


With Project Orion on the horizon, we may all see our processing times reduce, especially with behavioral data. Just because it goes faster, doesn't mean you should abandon good workflow design.

Filter Blog

By date: By tag: