Flow interview bulkification and transaction limits
Key Takeaway
Salesforce groups the work of flow interviews that reach the same element, but it doesn't group work inside a Loop. Add records to a collection variable inside the Loop, then create or update them all with one element after the Loop.
When a flow runs for many records at once, Salesforce creates one flow interview per record. Those interviews run in the same transaction, so they share one set of governor limits. Bulkification lets interviews of the same flow share work: when they reach the same element, Salesforce runs their queries and record changes together. Knowing what Salesforce groups automatically, and what it doesn't, tells you whether a flow will survive a bulk load or fail.
Transactions and governor limits
A transaction groups operations into a single unit. If any operation fails, the whole transaction rolls back. The rollback includes Apex triggers, escalation rules, and every flow interview in the transaction.
Salesforce enforces governor limits per transaction because many orgs share the same resources, much like apartment tenants share one water supply. Per-transaction limits include:
- 100 SOQL queries in a synchronous transaction
- 200 SOQL queries in an asynchronous transaction
- 150 DML statements
A flow interview shares the transaction's governor limits with everything else in the transaction, not only with other flow interviews.
A support lead updates 100 cases through Data Loader. Case assignment rules run DML statements. A process looks up accounts with SOQL queries. The flow runs its own queries and Chatter posts. All of this work counts against the same transaction's limits.