Jan 11, 2021 10:53 PM
I have an automation trigger using “Record Matches Condition”. There are two trigger conditions separated by an OR.
This triggers the automation but not for all records. If a record matched one condition and ran and then matches the second condition it will not run again. This is not my intuition about how an OR should work. The (sparse) documentation doesn’t seem to cover this situation clearly.
Jan 11, 2021 11:27 PM
Wow, you’re right! This seems like a significant problem with Airtable’s automations.
In theory, automations are supposed to ALWAYS run for records whenever a record has been updated to match the conditions that you’ve specified. Automations are NOT supposed to only run ONCE for the entire lifetime of the entire record.
In fact, that’s actually what they promised us when they created automations — they promised us that unlike Zapier (which only triggers once on a record and never again for the life of that record), that automations would always run on a record — even if that record already had an automation triggered on it in the past.
But apparently, this is NOT the case with OR conditions. Once the automation is triggered for a record, the automation doesn’t seem to trigger again for that record, even if you update another one of the fields that is a part of your OR conditions. I would absolutely expect the automation to run again if you updated one of the fields that is a part of the trigger.
It seems like — in order to re-trigger the OR automation — you have to completely clear out ALL THE FIELDS that comprise ALL of your OR conditions. Once you do that, and then you update one of the trigger fields, then the automation will run again. (But then you’ve started all over again with the same exact problem again.)
None of this is intuitive at all, and it’s not at all how I would expect this to work. This is very disappointing to me, and it seems like another half-baked feature in Airtable.
Interestingly enough, automations works perfectly fine with AND conditions, but it doesn’t work with OR conditions. So there seems to be a big disconnect here, because AND conditions respond differently than OR conditions.
I suppose that the easiest workaround for this would be to create a bunch of duplicate automations, each one triggering on just ONE of your OR conditions, but you might quickly reach the measly limit of 25 automations.
This definitely seems like an important detail that slipped through the cracks at Airtable. I would report this problem ASAP to email@example.com, but I doubt that they will do anything about it. (They very rarely make improvements based on customer feedback, which is my big frustration with using Airtable.)
I’m starting to realize that we might be better off just sticking with a reliable & predictable external 3rd-party automation platform like Integromat. It always evaluates ALL the fields that have changed in a record, so it can run OR automations reliably.
If you sign up for Integromat, please use my referral link here:
Jan 12, 2021 05:27 AM
This is the expected behavior. The set of conditions evaluate to a single TRUE or FALSE value.
In order for the automation to re-trigger for a record, that single value needs to be made FALSE and then TRUE again.
When you have an OR in your condition, and the record meets one part of the set, that single value is TRUE, and it remains true. When the record meets the second condition, the single value of the entire set of conditions is still TRUE. It never flipped to FALSE, so the automation does not retrigger.
This matches the behavior when you use the exact same OR conditions in a view. Once the record meets one of the conditions, the record appears in the view. If you change the record to meet additional conditions, the record stays in the view. It does not drop out of the view.
If you want the automation to run when either of the conditions are met, independent of each other, you can use two automations with identical actions but different triggers.
Jan 12, 2021 07:13 AM
Thanks for explaining how this works, @kuovonne! :slightly_smiling_face:
Definitely not how I would it expect it to work, but your explanation makes perfect sense — that it looks at the entire set of conditions as either TRUE or FALSE.
Jan 12, 2021 07:21 AM
Thanks for the level of detail I would expect to find in the official documentation. Kudos to you (and knocks to airtable) for being comprehensive and clear.
I will change my conditions because I cannot in good conscience duplicate my action as it is a lengthy script.