---
schema_version: "1"
id: cebdb235fd94e781a2a032be17e1f68154716d4bf5f68dc1ad7254120b933374
title: Per-Transaction Flow Limits
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/platform/264-0-0/flow_considerations_limit_transaction.md
canonical_url: https://help.salesforce.com/s/articleView?id=platform.flow_considerations_limit_transaction.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 0227090b3399cd892502403d58b066a77f042177242a4c78efda6ae56080ff1a
description: Salesforce strictly enforces limits to ensure that any runaway flows don't monopolize shared resources in the multitenant environment. Per-transaction limits, which Apex enforces, govern flows. If an element causes the transaction to exceed governor limits, the system rolls back the entire transaction. The transaction rolls back even if the element has a defined fault connector path.
products:
  - Flow Builder
  - Salesforce Platform
release: "264"
---
# Per-Transaction Flow Limits

Salesforce strictly enforces limits to ensure that any runaway flows don't monopolize shared resources in the multitenant environment. Per-transaction limits, which Apex enforces, govern flows. If an element causes the transaction to exceed governor limits, the system rolls back the entire transaction. The transaction rolls back even if the element has a defined fault connector path.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;"><a href="https://help.salesforce.com/s/articleView?id=platform.flow_ref_supported_editions.htm&amp;release=264.0.0&amp;type=5" title="Learn about the editions and user interfaces that support Flow Builder. Some Flow Builder features integrate with other Salesforce products that require additional licenses.">View supported editions.</a></td></tr></tbody></table>

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d191210e62">Per-Transaction Limit<sup>1</sup></th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d191210e67">Value</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Per-Transaction Limit1" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e62 ">
              <p>Total number of SOQL queries issued</p>
              <p style="margin-bottom:0;">(All executions of Get Records elements,
                and executions of Update Records or Delete Records elements that use filter
                conditions)</p>
            </td>

            <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e67 ">100</td>

          </tr>
          <tr class="">
            <td data-label="Per-Transaction Limit1" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e62 ">
              <p>Total number of records retrieved by SOQL queries</p>
              <p style="margin-bottom:0;">(All executions of Get
                Records elements, and executions of Update Records or Delete Records elements that
                use filter conditions)</p>
            </td>

            <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e67 ">50,000</td>

          </tr>
          <tr class="">
            <td data-label="Per-Transaction Limit1" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e62 ">
              <p>Total number of DML statements issued</p>
              <p style="margin-bottom:0;">(Create Records, Update Records, and
                Delete Records executions)</p>
            </td>

            <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e67 ">150</td>

          </tr>
          <tr class="">
            <td data-label="Per-Transaction Limit1" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e62 ">Total number of records processed as a result of DML statements</td>

            <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e67 ">10,000</td>

          </tr>
          <tr class="">
            <td data-label="Per-Transaction Limit1" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e62 ">Maximum CPU time on the Salesforce servers</td>

            <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e67 ">10,000 milliseconds</td>

          </tr>
          <tr class="">
            <td data-label="Per-Transaction Limit1" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e62 ">Total number of duplicate updates allowed in one batch</td>

            <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d191210e67 ">12</td>

          </tr>
        </tbody>
      </table>

1 Autolaunched flows are part of the larger transaction that they were launched through and share that transaction’s limits. For example, flows launched from Apex or a process are executed with the Apex or process actions as part of the larger transaction. Flows with Screen elements can span multiple transactions. A new transaction begins each time the user clicks **Next** in a screen. Flows with Wait elements span multiple transactions. A transaction ends when a flow interview pauses for an event. When the flow interview resumes, a new transaction begins. Everything after the Wait element is executed as part of a batch transaction that includes other resumed interviews. The batch includes interviews executed by the same user ID, have the same execution time, and have the same flow version ID.

#### See Also

- [_Apex Developer Guide_ : Execution Governors and Limits](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_gov_limits.htm)
- [Flow Limits per Org](https://help.salesforce.com/s/articleView?id=platform.flow_considerations_limit.htm&release=264.0.0&type=5 "Review per-org, per-interview, and marketing flow limits, including limits for flow versions, active flows, scheduled interviews, and heap size.")