Zap is stuck in a loop

Zaps can get stuck in “loops” where they run over and over again from the same data. Loops can quickly use up your plan tasks if they are not resolved. Zap loops can occur if:

  • You have an action in one Zap that triggers another Zap and the second Zap has an action that triggers the first Zap.
  • You have an action in a Zap that also triggers that same Zap.
Example

Two-Zap loop:

Zap 1

  • Trigger: Hubspot - New Contact
  • Action: Google Contacts - Create Contact

Zap 2:

  • Trigger: Google Contacts - New Contact
  • Action: Hubspot - Create Contact

If you use the action step in each Zap to create the same contact, these Zaps will loop, adding the same contact over and over again in both Salesforce and Google Contacts.

Single Zap loop:

Zap:

  • Trigger: Stripe - New Subscription
  • Action: Stripe - Create New Subscription

If you use the action to create the same subscription that triggered the Zap, this Zap will loop, creating the same subscription over and over again in Stripe.

Avoiding Zap Loops

 

How to avoid a Zap loop

To prevent Zap loops, you can add unique data to the action(s) that cause the loop, then use that data in a Filter step to prevent the loop.

1. Add a unique value

Add a unique value to your action step(s) to indicate that the Zap already performed the action once. 

In each action step that causes the loop:

  • Select a field to enter your unique value.
    • Use a field that will not affect your original workflow.
    • For example, if your action has a note or description field, you can add the value there.
  • Manually enter a unique value in the field.
    • Use a value that would not appear in your workflow otherwise.
    • You will use this value in your Filter step.
Example

For a two-Zap loop:

  • In the first Zap's Create Contact action step, enter a unique value like #sf in the Notes field to identify contacts created in Google Contacts from this action.
  • In the second Zap's Create Contact action step, enter #ggl in the Contact Description field to identify contacts created in Salesforce from this action.

For a single-Zap loop:

  • In the Zap's Create Subscription action step, enter a unique value like #cs in the Description field to identify contacts created in Stripe from this action.

2. Add a filter

In any Zap that causes a loop, add a Filter step before the action step(s) that caused the loop. Set up the filter to identify the unique value and stop the Zap from running if it is found. The Zap should only continue if the unique value is not found.

Example

In this step, filter using the "Does not contain" condition

For a two-Zap loop:

  • After the first Zap's trigger step, add a Filter step.
    • Select the Contact Description field as your first filter value.
    • In the condition field, select Does not contain.
    • In the final field, enter #ggl.
  • After the second Zap's trigger step, add a Filter step.
    • Select the Notes field as your first filter value.
    • In the condition field, select Does not contain.
    • In the final field, enter #sf.

For a single-Zap loop:

  • After the Zap's trigger step, add a Filter step.
    • Select the Description field as your first filter value.
    • In the condition field, select Does not contain.
    • In the final field, enter #cs.
Note

Zap loops are not a way to sync data between sources as they will repeat the same data over and over. Zapier does not support two-way syncing at this time.

Contact Zapier Support if you need additional help with a Zap loop.

Was this article helpful?
15 out of 34 found this helpful