After searching and searching I get more in doubt on how the transaction works in salesforce. I want to believe that if I have one big record-triggered flow it will be run in the transaction of a record update. However what if I have 5 different record-triggered flow that runs for the same object, will they execute in a different transaction, or they will share the same transaction?

1 Answer 1


I've always described one transaction as one debug log. For example, if a user clicks the save button on a record, and that record then has a Record-Triggered Flow, which updates another record, which has another Record-Triggered Flow, which updates yet more records, all of that happens in one transaction. An uncaught fault or exception anywhere in the chain will abort the entire transaction.

In your example, if you have five Record-Triggered Flows that happen to fire for one record, that is all cumulatively one transaction. The exceptions to this rule are when you decide to go asynchronous. Choosing to perform updates asynchronously using a Pause/Wait element, @future annotated Apex methods, Queueable, etc., will each get their own transaction.

If you're still confused about if a specific thing is one transaction, check the debug Logs. Go to ⚙️ | Developer Console, and perform an action. Observe how many debug logs appear in the logs tab. That will tell you how many transactions occurred. You can read the logs to learn more your transaction.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .