Marketo at Enterprise Scale - DemandGen · 2015-05-18 · All you do is provide Marketo a SFDC User...

5
Marketo at Enterprise Scale: How To Tame The Chaos & Maximize System Performance

Transcript of Marketo at Enterprise Scale - DemandGen · 2015-05-18 · All you do is provide Marketo a SFDC User...

Page 1: Marketo at Enterprise Scale - DemandGen · 2015-05-18 · All you do is provide Marketo a SFDC User account to login to SFDC. Marketo will then download all records and fields that

Marketo at Enterprise Scale:

How To Tame The Chaos & Maximize System Performance

Page 2: Marketo at Enterprise Scale - DemandGen · 2015-05-18 · All you do is provide Marketo a SFDC User account to login to SFDC. Marketo will then download all records and fields that

Tips for High Performance When Working with Massive DatabasesAs you probably know, Marketo is a pretty robust system. In smaller databases, marketers can get away with creat-ing sloppy campaigns and inefficient programs with little impact on system performance.

However, bad habits are quickly exposed at enterprise scale. Million plus record databases with thousands of active programs and trigger campaigns will put a huge load on a poorly designed Marketo instance. In large enterprise companies, it’s vital that programs and systems are built for scale.

A truly scalable Marketo instance has been optimized for peak campaign performance and the Campaign Queue is being actively managed. Focusing on these areas will pro-vide the highest impact from a raw speed perspective.I have found that understanding campaign priority and how to “tune” campaigns to run at a low/medium/high priority is one key to keeping leads flowing smoothly.

According to an article explaining campaign priority on the Marketo Community, “Marketo executes campaigns based on priorities. High priority campaigns run first in the order they were added to the queue. Once those are finished, the next highest priority campaigns are executed in time order and so on down until all have completed.” (Login Required http://community.marketo.com/apex/MarketoRe-source?id=kA650000000GsQqCAK)

Paying attention to campaign priority ensures that high pri-ority activities, like routing leads to sales are executed first and lower priority data value changes are executed second. This way, you make sure that leads and data flow smoothly and do not get backed up behind less important updates. More detail can be found in the attached document on campaign priority. See our Marketo Campaign Priority data sheet.

Another key performance optimization is shifting high volume processes (and less time sensitive processes) from trigger campaigns to batch campaigns so that you can time heavy loads to hit the system at non-peak times. You should always schedule maintenance campaigns to run at night or in the weekend and avoid running them on-demand during business hours.

Key Strategies to Build a Robust CRM IntegrationRunning Marketo at Enterprise Scale, that is an instance with more than a million records, requires a much greater level of knowledge and careful design to keep the lead machine running smoothly.

As we mentioned last time, million plus record databases with thousands of active programs and trigger campaigns will put a huge load on a poorly designed Marketo instance.

In large enterprise organizations, it is vital that the Marketo to CRM sync is designed and optimized for scale. The bene-fits of an optimized sync include:

1. A greater number of leads can be synched in lesstime.

2. Improved system performance, which translates to a better experience for both leads and Marketo users.

3. Get leads to sales faster and close more deals. Research shows that 35-50 percent of sales go to the vendor that responds first. (Source: InsideSales.com)

It is important to first understand the Marketo CRM sync process before diving into strategies for optimizing the sync. Specifically, we will focus on the sync with Salesforce.com.

The SFDC integration is bi-directional, so that if a lead is created or updated in either system, Marketo will keep both databases up to date. Marketo periodically syncs all standard and custom fields on the following SFDC objects:

Page 3: Marketo at Enterprise Scale - DemandGen · 2015-05-18 · All you do is provide Marketo a SFDC User account to login to SFDC. Marketo will then download all records and fields that

• Lead

• Contact

• Account (Read Only)

• Opportunity (Read Only)

• Campaign (Read Only except you can create Campaign Status)

• Documents (Required if using Sales Insight)

All you do is provide Marketo a SFDC User account to login to SFDC. Marketo will then download all records and fields that it has permission to access.

Once the sync is initialized, Marketo will connect to Sales-force via the API to download/update all records that are new or have changed since the last sync. The standard/pe-riodic sync speed is approximately 10-20k records per hour. Every 5 minutes after the sync cycle completes, the process begins again.

In addition to the periodic sync, the flow step “Sync to SFDC” forces a record to sync on demand. It is also the pri-mary control over what leads sync from Marketo into SFDC. (All SFDC records sync to Marketo by default) When a net-new lead is created in Marketo, a lead lifecycle campaign with the “Sync to SFDC” flow step is setup to govern when new leads are pushed into Salesforce.

In the context of an enterprise database with millions of records, the pipe between SFDC and Marketo is narrow. Consider an organization with 10-million-record database. If 10 percent of records are updated as part of an end-of-quarter territory realignment, the resulting sync would require more than 50 hours to finish. Lead flow between the systems would grid to a halt for two days, as more recent updates are stuck in line behind the mass update.

As part of developing a robust integration strategy, it is extremely important to control:

• What data is synched.

• When data is synched.

• How data is synched.

What data is synched.

While it would be a relatively simple process to provide Marketo a SFDC login with administrator access to down-load all records, data and fields—it is a big mistake for any Marketo implementation regardless of size. For enterprise organizations with massive databases, that mistake quickly turns into a data disaster.

The goal is to minimize the amount of data that needs to flow between the two systems to be kept in sync.

Marketo will only sync data that it can see/access in SFDC. Therefore, controlling data flow between the systems in done via the Marketo integration users permissions set via the SFDC profile. The permissions on the SFDC User account determine:

• Which objects Marketo can access

• Which records it can access

• Which fields it sees

• What actions it can take (Create, Edit, Delete)

When setting up the SFDC profile, it is important to hide all unnecessary fields and records that will not be used for segmentation or marketing in Marketo. Be sure to pay special attention to fields that change frequently because those put a heavy load on the sync process. Remember that anytime a field changes it will trigger the sync for that

Page 4: Marketo at Enterprise Scale - DemandGen · 2015-05-18 · All you do is provide Marketo a SFDC User account to login to SFDC. Marketo will then download all records and fields that

record. And decreasing the number of fields accessible to Marketo means fewer changes in Marketo and much lower sync volume.

It is important to realize that database size is not the primary limitation for the sync. Rather it is rate of change and number of updates to those records that is the true indicator of the impact on sync.

When data is synched.

Once you have minimized the number of records and fields syncing between Marketo and SFDC, it is time to consider when data is synched. The goal is to minimize the load and impact on the sync during business hours.

Too often, I have seen routine, however poorly timed, mass data updates completely shut down a company’s lead flow to sales. The real world impacts of this sync blunder are significant and extremely costly. Imagine the blowback of a lost day of sales and rooms of sales people sitting idle unable to work new and updated leads.

Whenever possible, use batch campaigns to update leads as opposed to trigger campaigns so that you have control over when data is updated and the sync is triggered.Always remember to schedule batch database updates overnight or on the weekend. And break large updates into smaller chunks. For a rough rule of thumb, limit updates to 40K-60K records a night to make sure they finish and do not impact performance the following day.

How data is synched.The sync lead flow step is great—and immediate—howev-er, it takes priority over data flowing through the standard bi-directional sync. This can be both good and bad. It’s good because you can make sure a fast-tracked lead gets to sales as quickly as possible. On the opposite end, large list uploads (75,000+) can clog the sync and prevent important data from being synched for hours and days.

A highly optimized integration understands that all data is not equal. High priority data, like new leads being fast-tracked to sales, are treated differently than routine updates. A couple guidelines:

1. Leads headed to sales and those with critical status changes should be synched via the “Sync to SFDC” flow step. This prioritizes their sync and makes sure they get into SFDC stat. However, the flow step should be used primarily for net-new leads and sparingly to force sync the most important updates.

2. The vast majority of updates to existing leads should be handled by the standard periodic sync.

ConclusionThe goal of this post is to provide an overview of key strat-egies to build a robust integration to govern the Marketo/CRM sync. They focus on having a plan for what data is synched; when data is synched; and how data is synched.

Longer term, successful management of the Marketo-SF-DC sync focuses primarily on optimizing the use of a very limited resource—the pipe between SFDC and Marketo. Remember that a sloppy integration will be quickly exposed at enterprise scale. Only 10K-20K leads can flow through per hour. You don’t want to waste that bandwidth.

While much of the advice in this post is based on my experience working closely with several Marketo clients with extremely large databases, the technical and system knowledge is a result of presentations and conversations with experts from Marketo.

For more information, Marketo has a number of great re-sources and presentations focused on sync and maximizing system performance. One great resource is Jep Castelein’s (Marketo) presentation at Summit 2013 on “Salesforce.com Native Integration Best Practices” Here is the link: https://community.marketo.com/MarketoResource?id=kA-650000000Gu0CCAS (Registration Required)

Page 5: Marketo at Enterprise Scale - DemandGen · 2015-05-18 · All you do is provide Marketo a SFDC User account to login to SFDC. Marketo will then download all records and fields that

Nova Kopitar, a DemandGen Solutions Architect and Marketo wizard, put together a fantastic graphic of a closet disaster for a client presentation. It is a great way to demonstrate the benefits of cleaning up your Marketo instance.

© 2014 DemandGen International, Inc. All rights reserved. DemandGen and the DemandGen logo are registered trademarks of DemandGen International. All other product and company names may be trademarks of their respective owners.

Learn More: www.demandgen.com 925-678-2504 [email protected]

7 Deadly Sins of Marketo DisorganizationThe concept of Marketo at Enterprise Scale is a focus on streamlining the system to perform at the highest possible level with a database of more than 1 million records. In the first two installments of this three-part series on Marketo Performance, we focused on raw system horsepower with campaign performance and CRM sync optimization.

System organization and cleanup is the third leg of the Marketo Performance stool. The benefits of a well-organ-ized system are wide-ranging. They benefit both the Mar-keter using the system as well as improving overall instance performance.

Too often, we find a litany of performance killers when we first login to a new client’s instance. It is no surprise to find a folder structure is disorganized, there are multiple uses of sync lead to Salesforce, scoring (if setup) is not centralized and way too many forms. The result is a poorly performing instance and frustrated marketers who cannot find a specif-ic landing page or email.

To paraphrase the opening line of Anna Karenina by Leo Tolstoy, “High performance instances are all alike; every Marketo disaster is a disaster in its own way.”

However, I created a list of the 7 deadly sins of Marketo Disorganization:

1. Lack of an organized folder structure with consistent naming conventions.

2. Putting single program assets (emails & landing pages for one campaign) in the design studio and not in the program.

3. Conversely, burying program assets used by multiple programs in a single program.4. Lack of form strategy and cloning identical forms into programs instead of using a set of 3-5 core forms in the design studio.

5. Not using Program Tokens in campaigns, landing pages and emails.

6. Failure to centralize the Sync to SFDC in a core lifecycle campaign.

7. Failure to turnoff inactive campaigns and archive them.