How Campaign Processing Works

Marketo campaign queues work like a mall parking lot.  We accommodate average and even above average loads.  But if it's Christmas, you may have to wait a while for a spot.


The campaign execution queue

When a flow is launched, Marketo assigns it a priority then queues it for execution.  This priority is based on how the campaign was launched (batch, trigger, resume from Wait) and what's in the flow:

Priority levelPriority criteria
  • Send email (triggered)
  • Send alert
  • Request Campaign
  • Interesting Moment
  • Create Task
  • Convert / Delete Lead
  • Add to / Remove from List
  • Change Sales Owner / Progression Status / Revenue Stage / Field in Program
  • Change Member of / Add to / Remove from
  • Sync to SFDC
  • Change Status in SFDC Campaign
  • Change data value
  • Change score
  • Wait steps with a wait time > 5 minutes
  • Web hooks

Marketo then 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.If the queue contains only low priority campaigns and a new high priority campaign comes in, the high priority campaign will jump to the head of the line and run next. Batch campaigns and trigger campaigns are run and processed in separate queues.


"Why is my campaign running slow?"

Several factors determine how fast and when your campaign will run.  In general, campaign execution time depends on:

  • the number of leads in your campaign
  • the number of flow steps in your campaign
  • other customers' campaigns in the queue
  • the campaign's priority


Even though Marketo can execute many campaigns simultaneously, campaign execution resources are shared among all customers on the same server.  If several customers trigger high priority campaigns at the same time, lower priority campaigns in the queue will have to wait for the high priority campaigns to complete.Also, certain campaign flow steps are slow.  The flow steps below take longer than most, and you may notice that difference when executing your campaigns:

  • Send Email
  • Delete Lead
  • Sync Lead to Sales
  • Add Lead to SFDC Campaign


Speeding up your campaigns

Here are some tips to speed up how and when your campaigns are executed:

Do essential flow steps first

If this is an auto-response or notification campaign, put the Send Email or Send Alert flow step first.  Absolutely do this if you're using two slow steps in a row (Send Email followed by Sync Lead to Sales) so that the email goes out with the highest priority.

Don't start with a "Wait" step

If you need to delay the launch of your batch campaign, use the batch campaign scheduler.  Re-think any triggered campaigns that start with a "Wait" step because it will be prioritized lower; you probably don't need to include it anyway. If you have a wait step of longer then 5 minutes this will cause all flows below it have a low priority.