How to build a looping automation


This article applies to:

How to setup an advanced automation that will send and/or run an action continually.

Create your automation

  1. Click on Automations in the left-hand menu.
  2. Click the + button to create a new automation and choose Advanced Automation.
  3. Name your automation and click Save.
  4. Drag out two Tag Applied goals.
    loop1
  5. Create two different tags -- one for each goal
    loop13


  6. Add a sequence between two tag goals, and connect the entry goal to the sequence, and the sequence to the exit goal

    loop2


In the sequence

  1. Double click on the sequence

  2. Add an Apply/Remove Tag process after the Start timer

  3. Set the process to Remove "Start Loop" tag

    loop3

  4. Next add steps (timers, emails, etc)

  5. Then a timer for at least 3 minute

    loop17

  6. For the final step, add an Apply/Remove Tag process to apply "Start Looping hold Sequence" tag

    loop17


Create Second Sequence

  1. Drag out two new tag goals, and place a sequence between them, connecting the items

  2. Set the first tag goal to be achieved when "Start Looping hold Sequence" tag is applied, and the second tag goal for when "Start Loop" is applied

    loop5

  3. Remove "Start Looping hold Sequence" tag

    loop15

  4. Set timer for desired wait time before the contact is looped

    loop4

  5. Apply "Start Loop" tag

    loop17


The loop will end up looking like this:

loop7


Add End Loop Goal

Add Goal

  1. Drag a 5th Tag goal and place behind all sequences

  2. Set the Tag Goal to be achieved when "Remove form looping automation" tag is applied

Apply Tag

  • The "Remove form looping automation" tag can be manually applied in the contacts record OR you can create a process to applies it. For example if you created a process to apply the tag when a Opt-Out Web Form/Landing Page is submitted, that would apply the tag and therefore remove the contact from the loop

    loop5

Field/Date Timers

In situations where a Field/Date Timer is needed create a second sequence to apply the "Start Loop" tag

loop5

Pro Tip! Because the restart tag is applied in a  different sequence line you wont run into the "Single Looping Line issue". Read more here


Why this setup over other ways of creating a loop?

This method is more reliable than the Tag Goal -> Sequence -> Tag Goal, because when goals are achieved simultaneously, there is a margin of error in which the can trigger the start goal before the end goal, causing contacts to drop.

It is also more secure than Tag Goal -> Sequence -> Sequence -> Tag Goal, while most single line loops work, a contact can start into the first sequence before the end goal is achieved. Once it is achieved, the contact would be removed.

By using two separate tags, and two separate sequences, we can ensure that the contact will loop properly