---
schema_version: "1"
id: 8d6c6f3ddb8c4177c411b97a89f26268adaca1b26b2b6050352ad6ae9e6b6c89
title: Data Processing Engine Limits and Considerations
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/ind/264-0-0/dpe_limits.md
canonical_url: https://help.salesforce.com/s/articleView?id=ind.dpe_limits.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: f9cae879d1254a8f40ddeccacdf643b4cf3c4c6327cd9de13af67a8e0f2d0ad0
description: When you create and run Data Processing Engine definitions, stay within the limits for your runtime and consider the applicable restrictions. Some limits apply to all runtimes, while others are specific to CRM Analytics or Data 360.
products:
  - Cross Cloud
release: "264"
---
# Data Processing Engine Limits and Considerations

When you create and run Data Processing Engine definitions, stay within the limits for your runtime and consider the applicable restrictions. Some limits apply to all runtimes, while others are specific to CRM Analytics or Data 360.

### 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=ind.dpe_editions.htm&amp;release=264.0.0&amp;type=5" title="Review the supported editions and availability for Data Processing Engine (DPE).">View supported editions</a>.</td></tr></tbody></table>

## Runtime Applicability

This table shows which sections in this topic apply to each runtime.

  
| Section | CRM Analytics Runtime | Data 360 Runtime |
| --- | --- | --- |
| Data Processing Engine Definition Limits | Yes | Yes |
| Flow Limits | Yes | Yes |
| Data Pipelines Limits | Yes | No |
| Notification Alerts | Yes | No |
| Data 360 Limits | No | Yes |
| Writeback Limits | Yes | Yes |
| Failed Records File Limit | Yes | Yes |

## Data Processing Engine Definition Limits

When you design a definition, stay within these limits. Contact your Salesforce representative to increase any of the Data Processing Engine definition limits.

- A Salesforce org can have up to 50 active definitions.
- A definition can have 50 unique data source objects across definitions.
- A definition can have up to 500 nodes.
- A node in a definition can have up to 500 fields.
- A definition can have up to 50 Data Source nodes.
- A Filter node can have up to 50 filter conditions.
- A Group and Aggregate node can group fields by up to ten fields.
- Case statement conditions can’t exceed 1,600 characters cumulatively across all nodes in a definition.

## Flow Limits

Review Flow limits and considerations before you create a flow to run a definition. For more information, see [Flow Limits and Considerations](https://help.salesforce.com/s/articleView?id=platform.flow_considerations.htm&language=en_US).

## Data Pipelines Limits

![Important](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/images/icon_important.png)

Important These limits apply to the CRM Analytics runtime only. If you're using the Data 360 runtime, see [Data 360 Limits](https://help.salesforce.com/s/articleView?id=ind.dpe_limits.htm&release=264.0.0&type=5).

Monitor your org's daily and monthly Data Pipelines usage limits when you run Data Processing Engine definitions with the CRM Analytics runtime. Definitions don't run if your org exceeds these usage limits. Contact your Salesforce representative to increase the Data Pipelines limits.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/images/icon_note.png)

Note The allocations of CRM Analytics Growth and CRM Analytics Plus licenses aren't considered for Data Processing Engine definition runs.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:33.33333333333333%">
          <col style="width:33.33333333333333%">
          <col style="width:33.33333333333333%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d1877e268">Limit</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d1877e271">Value</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d1877e274">Notes</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Limit" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e268 ">Maximum number of writeback nodes per Data Processing Engine definition</td>

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

            <td data-label="Notes" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e274 ">N/A</td>

          </tr>
          <tr class="">
            <td data-label="Limit" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e268 ">Maximum number of users assigned to the Data Pipelines Base User permission
              set</td>

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

            <td data-label="Notes" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e274 ">N/A</td>

          </tr>
          <tr class="">
            <td data-label="Limit" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e268 ">Maximum number of rows in all datasets</td>

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

            <td data-label="Notes" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e274 ">N/A</td>

          </tr>
          <tr class="">
            <td data-label="Limit" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e268 ">Maximum number of rows processed</td>

            <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e271 ">10 million per month</td>

            <td data-label="Notes" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e274 ">N/A</td>

          </tr>
          <tr class="">
            <td data-label="Limit" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e268 ">Maximum processing time per month</td>

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

            <td data-label="Notes" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e274 ">
              <p>The cumulative minutes taken by the recipes of all Data Processing Engine definition runs to
                transform data.</p>
              <p style="margin-bottom:0;">The recipe job runtime doesn't consider the time taken to sync data for recipe transformation and
                export results for writeback.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Limit" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e268 ">Maximum number of concurrent recipes</td>

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

            <td data-label="Notes" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e274 ">Data Processing Engine executes only one recipe at a time per license even if
              multiple jobs are triggered at the same time. Purchase additional licenses if you
              must process more than one recipe at a time. </td>

          </tr>
          <tr class="">
            <td data-label="Limit" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e268 ">Maximum amount of data written back in a rolling 24-hour period to
              Salesforce</td>

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

            <td data-label="Notes" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e274 ">
              <p>Data Processing Engine assesses this limit when a job starts.</p>
              <p>If the limit is exceeded, the engine doesn’t start the job.</p>
              <p>If the limit isn’t exceeded, the engine starts and finishes the job even if the
                job writes data that results in the limit being exceeded. When the limit is
                exceeded, jobs fail until the amount of data written in the preceding 24 hours is
                below the limit.</p>
              <p> The amount of data that's written back by Data Processing Engine runs counts
                against the Data Pipelines Output to CSV limit, not the Data Pipelines Output to
                Salesforce limit.</p>
              <p style="margin-bottom:0;">If your org reaches the 1 GB Output to CSV limit, work with your Salesforce
                account executive to purchase add-ons. Each add-on adds 1 GB to your org's Output
                to CSV limit. If your org requires 5 GB each day, you must get 4 add-ons.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Limit" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e268 ">Maximum number of recipes</td>

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

            <td data-label="Notes" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e274 ">N/A</td>

          </tr>
          <tr class="">
            <td data-label="Limit" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e268 ">Maximum number of objects enabled for data sync</td>

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

            <td data-label="Notes" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e274 ">N/A</td>

          </tr>
          <tr class="">
            <td data-label="Limit" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e268 ">Maximum number of concurrent data sync runs</td>

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

            <td data-label="Notes" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e274 ">N/A</td>

          </tr>
          <tr class="">
            <td data-label="Limit" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e268 ">Maximum average number of values per multivalue field</td>

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

            <td data-label="Notes" class="slds-cell-wrap" style="vertical-align:top;" headers="d1877e274 ">N/A</td>

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

## Notification Alerts

These limits apply to CRM Analytics runtime only and tie to Data Pipelines license entitlements. Admins receive notification tray alerts when Data Pipelines limits exceed 80% of capacity.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/images/icon_note.png)

Note Make sure that the permission set name is AnalyticsStoreUser and the permission set label is Data Pipelines Base User.

- Rows in All Datasets
- Recipe Job Runtime
- Output to CSV
- Recipe Rows Out

If you receive a notification, review your Data Processing Engine definitions and reduce data volume or processing time to stay within the limits.

## Data 360 Limits

Track your org's daily and monthly usage limits for Data 360 when you run Data Processing Engine definitions using the Data 360 runtime. Definitions don't run if your org exceeds these usage limits. Contact your Salesforce representative to increase the Data 360 limits.

 
| Limit | Value |
| --- | --- |
| Maximum number of CSV data source nodes in a Data Processing Engine definition | 5 |
| Maximum number of writeback nodes in a Data Processing Engine definition | 5 |
| Maximum size of CSV file that can be uploaded | 75 MB |

## Writeback Limits

Data Processing Engine writes results back to your Salesforce object and fields by using APIs. Writebacks are counted against your org's [Bulk API 2.0 limits](https://developer.salesforce.com/docs/atlas.en-us.salesforce_app_limits_cheatsheet.meta/salesforce_app_limits_cheatsheet/salesforce_app_limits_platform_bulkapi.htm).

![Important](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/images/icon_important.png)

Important Data Processing Engine (DPE) writeback operations have the Salesforce Bulk API 2.0 limit of processing 150 million records daily. Although CRM Analytics recipe output supports higher record limits (approximately 400 million for Writeback and 40 million for Composite Writeback), the run fails with an error if the writeback operations exceed 150 million records.

## Failed Records File Limit

Data Processing Engine stores up to 24 MB of failed records data in CSV files.

#### See Also

- [Data Pipelines Limits](https://help.salesforce.com/s/articleView?id=xcloud.sdp_limits.htm&type=5&language=en_US)
- [How Salesforce Data Pipelines and CRM Analytics Work Together](https://help.salesforce.com/s/articleView?id=xcloud.sdp_interoperability.htm&language=en_US)