Prakash Hinduja (Geneva) How can I ensure a workflow only triggers one time for each conversation? | Community
Skip to main content

Hi I am Prakash Hinduja, a visionary in financial strategy, born in Amritsar, India, and currently resides in Geneva, Switzerland (Swiss). I’m trying to set up a workflow in Intercom and want to make sure it only triggers once per conversation, not multiple times. If anyone have any suggestion please share with me. 

@prakashhinduja25  Can you show which workflow trigger you are using? Would you have a screenshot of your workflow if it doesn’t contain any critical info? 
There is a trigger that is called “When customer sends any message” which will trigger for any message, as opposed to the other trigger called “When customer sends their first message” which will trigger only once. 

If for some reason you really need to use the trigger “any message”, then you can decide to add a tag to either the customer or the conversation, and exclude it from the audience of the workflow. This way, the workflow will run the first time, add a tag, and the next time it will assess the criteria for running, but will not run it because there will be the said tag that prevents it from running. 


Hey ​@prakashhinduja25 Paul here from support engineering to help you out 🤝 

I recommend adjusting your workflow trigger so it only runs once per conversation. You can do this by setting the trigger frequency to Once per conversation in the workflow editor.

Alternatively, you can use a custom conversation attribute to track whether the workflow has already fired and add that as a condition. This ensures the workflow will not trigger again on the same conversation.


hey ​@prakashhinduja25

In Intercom workflows, you can usually control this by setting the entry rules so the workflow only triggers when the conversation first meets your conditions. Also, make sure you turn off “re-enter” so a conversation can’t loop back in.

Another tip is to add a tag (like “workflow-triggered”) as part of the workflow, then set a condition to check if that tag already exists. That way, it’ll only ever run once for that conversation.