When using CRM Analytics, keep these limits in mind.
API Call Limits
These limits apply to all supported editions.
| API Call | Limit |
| Maximum concurrent CRM Analytics API calls per org | 100 |
| Maximum CRM Analytics API calls per user per hour | 10,000 |
Dataset Row Storage Allocations per License
In Salesforce org, your total row storage limit for all registered datasets combined depends on your license combination. Each license allocates a different number of rows.
| Baseline Row Allocation | Allocated Rows |
| CRM Analytics Plus | 10 billion |
| CRM Analytics Growth | 100 million |
| Sales Analytics | 25 million |
| Service Analytics | 25 million |
| Event Monitoring Analytics | 50 million |
| B2B Marketing Analytics | 25 million |
| CRM Analytics for Financial Services Cloud | 25 million |
| CRM Analytics for Health Cloud | 25 million |
| Extra Data Rows license | 100 million |
Your total row storage limit is a combination of your active licenses. For example: Because the CRM Analytics Plus license includes the Sales Analytics and Service Analytics licenses, your total row allocation remains 10 billion. Similarly, the CRM Analytics Growth license includes the Sales Analytics and the Service Analytics licenses, so your total row allocation remains 100 million. However, if you obtain another Sales Analytics or Services Analytics license, your row limit increases by 25 million for each added license.
Dataset Row Limits
Each dataset supports up to 2 billion rows. If your Salesforce org has less than 2 billion allocated rows, each dataset supports up to your org’s allocated rows.
Dataset Field Limits
| Value | Limit |
| Maximum number of fields in a dataset | 5,000 (including up to 1,000 date fields) |
| Maximum number of decimal places for each value in a numeric field in a dataset (overflow limit) | 17 decimal placesWhen a value exceeds the maximum number of decimal places, it overflows. Both 100,000,000,000,000,000 and 10,000,000,000,000,000.0 overflow because they use more than 17 decimal places. A number also overflows if it’s greater (or less) than the maximum (or minimum) supported value. 36,028,797,018,963,968 overflows because its value is greater than 36,028,797,018,963,967. -36,028,797,018,963,968 overflows because it’s less than -36,028,797,018,963,967.When a number overflows, the resulting behavior in CRM Analytics is unpredictable. Sometimes CRM Analytics throws an error. Sometimes it replaces a numeric value with a null value. And sometimes mathematical calculations, such as sums or averages, return incorrect results. Occasionally, CRM Analytics handles numbers up to 19 digits without overflowing because they are within the maximum value for a 64-bit signed integer (263 – 1). But numbers of these lengths aren’t guaranteed to process.As a best practice, stick with numbers that are 17 decimal places or fewer. If numbers that would overflow are necessary, setting lower precision and scale on the dataset containing the large numbers sometimes prevents overflow. If your org hasn’t enabled the handling of numeric values, the maximum number of decimal places for each value in a numeric field in a dataset is 16. All orgs created after Spring ’17 have Null Measure Handling enabled. |
| Maximum value for each numeric field in a dataset, including decimal places | 36,028,797,018,963,967For example, if three decimal places are used, the maximum value is 36,028,797,018,963.967 |
| Minimum value for each numeric field in a dataset, including decimal places | -36,028,797,018,963,968For example, if five decimal places are used, the minimum value is -36,028,797,018,9.63968 |
| Maximum number of characters in a field | 32,000 |
Data Sync Limits
If you extract more than 100 objects in your dataflows, contact Salesforce Customer Support before you enable data sync.
| Value | Limit |
| Maximum number of concurrent data sync runs | 3 |
| Maximum number of objects that can be enabled for data sync, including local and remote objects | 100 |
| Maximum amount of time each data sync job can run for local objects | 24 hours |
| Maximum amount of time each data sync job can run for remote objects | 12 hours |
| Data sync limits for each job:Marketo Connector (Beta)NetSuite ConnectorZendesk Connector | Up to 100,000 rows or 500 MB per object, whichever limit is reached first |
| Data sync limits for each job:Amazon Athena ConnectorAWS RDS Oracle ConnectorDatabricks ConnectorGoogle Analytics ConnectorGoogle Analytics Core Reporting V4 ConnectorOracle Eloqua ConnectorSAP HANA Cloud ConnectorSAP HANA Connector | Up to 10 million rows or 5 GB per object, whichever limit is reached first |
| Data sync limits for each job*:AWS RDS Aurora MySQL ConnectorAWS RDS Aurora PostgresSQL ConnectorAWS RDS MariaDB ConnectorAWS RDS MySQL ConnectorAWS RDS PostgreSQL ConnectorAWS RDS SQL Server ConnectorGoogle Cloud Spanner ConnectorMicrosoft Azure Synapse Analytics ConnectorMicrosoft Dynamics CRM ConnectorSalesforce External ConnectorSalesforce Contacts Connector for Marketing Cloud EngagementSalesforce OAuth 2.0 Connector for Marketing Cloud Engagement | Up to 20 million rows or 10 GB per object, whichever limit is reached first |
| Data sync limits for each job*:Amazon Redshift ConnectorAmazon S3 ConnectorCustomer 360 Global Profile Data Connector (Beta)Google BigQuery for Legacy SQL ConnectorGoogle BigQuery Standard SQL ConnectorHeroku Postgres ConnectorMicrosoft Azure SQL Database ConnectorSnowflake Input Connector | Up to 100 million rows or 50 GB per object, whichever limit is reached first |
*When using these connectors, Salesforce Government Cloud org data is protected in transit with advanced encryption and can sync up to 10 million rows or 5 GB for each connected object, whichever limit is reached first.
Note When using a Salesforce local input connection, CRM Analytics bulk API usage doesn’t count towards Salesforce bulk API limits. Use of the external Salesforce connection and output connection impacts your limits.
The dataflow submits a separate bulk API call to extract data from each Salesforce object. The dataflow uses a batch size of 100,000–250,000, depending on whether the dataflow or the bulk API chunks the data. As a result, to extract 1 million rows from an object, the dataflow creates 4–10 batches.
Recipe and Dataflow Limits
Important In Winter ‘24, recipe runs over 2 minutes are counted against the limit. Previously, the recipe run counts weren’t correct. For more information, see Known Issue – Recipe runs are not counting towards the daily maximum run limit.
| Value | Limit |
| Maximum amount of time each recipe or dataflow can run | 48 hours |
| Maximum number of recipes | 1,000 |
| Maximum number of dataflows definitions (with data sync enabled) | 100 |
| Maximum number of dataflow and recipe runs in a rolling 24-hour period | 60Dataflow and recipe runs that take less than 2 minutes (and data sync) don’t count toward this 24-hour run limit. However, if you reach the 24-hour run limit, you can’t run a dataflow, recipe, or data sync job, regardless of size. CSV uploads don’t count towards this limit. You can use Salesforce Data Pipelines to increase your recipes limit (not dataflow). For more information, see Salesforce Data Pipeline Limits and contact your Account Executive. |
| Maximum number of concurrent recipe runs | 3To allow up to 3 concurrent recipe runs, admins can select Enable concurrency limit sharing between dataflows and recipes in Analytics Settings for a production org with the CRM Analytics Plus platform license. |
| Maximum number of concurrent dataflow runs | 2 for a production org with the CRM Analytics Plus platform license1 for a sandbox org or a production org with the CRM Analytics Growth platform license |
| Maximum dependent jobs for an event-based schedule | 5 |
| Maximum number of Data Prep previews per hour per user | 4,000 |
| Timeout for data load jobs (dataflows, CSV uploads, recipes, and data sync) that have been scheduled but not executed | 5 minutes |
| Maximum length of a dataflow definition file | 1,000,000 characters |
Trending Data Limits
Trended datasets count toward the overall CRM Analytics platform limits, including total number of rows.
| Value | Limit |
| Maximum number of trended datasets per user | 5 |
| Maximum number of rows per snapshot | 100,000 |
| Maximum number of rows in the report to be trended | 500,000 for admins, 100,000 for non-admins |
| Maximum total number of rows in a trended dataset | 5,000,000 |
| Maximum monthly number of rows for all snapshots per org | 40 million |
External Data Limits
| Value | Limit |
| Maximum file size per external data uploads | 40 GB |
| Maximum file size for all external data uploads in a rolling 24-hour period | 50 GB |
| Maximum number of external data jobs per dataset that can be run in a rolling 24-hour period | 50 |
| Maximum number of characters in a field | 32,000 |
| Maximum number of fields in a record | 5,000 (including up to 1,000 date fields) |
| Maximum number of characters for all fields in a record | 400,000 |
Output Connector Limits
| Value | Limit |
| Maximum data written to Salesforce | 100 MB or 1 million rows per recipe run per output connector100 MB or 1 million rows per rolling 24-hour period |
| Maximum data written to Azure Data Lake | 100 MB per recipe run per output connector100 MB per rolling 24-hour period |
| Maximum data written to Amazon S3 | 10 GB, or 10 million rows of data per recipe run per output connector50 GB, or 50 million rows per rolling 24-hour period (combined*)12-hour maximum amount of time each job can run. |
| Maximum data written to Snowflake through recipe or sync out | 10 GB, or 10 million rows of data per recipe run per output connector50 GB, or 50 million rows per rolling 24-hour period (combined*)12-hour maximum amount of time each job can run. |
| Maximum data written to Tableau Online | 1 GB, or 1 million rows of data per recipe run per output connector1 GB, or 1 million rows per rolling 24-hour period12-hour maximum amount of time each job can run. |
*The limit for Snowflake Output or sync out and Amazon S3 Output connectors is a combined 50 GB, or 50 million rows per rolling 24-hour period. For example, if you push 40 GB of data from CRM Analytics to Snowflake, 10 GB of allotted data remains to push to Amazon S3.
Story Creation and Prediction Limits
For limits on story creation and predictions, see Einstein Discovery Limits.
Sales Analytics and Service Analytics App Limits
The Sales Analytics and Service Analytics apps limit custom object support a maximum of 10 custom objects and one dataflow per app. These limits are contractual, not technical.
Security Predicate Limit
This limit applies to all supported editions.
| Value | Limit |
| Maximum number of characters in a security predicate | 5,000 |
CRM Analytics Developer Edition Limits
CRM Analytics is built on the Lightning Platform and is subject to the Lightning Platform limits. For example, the SOQL query limit (100,000 characters) controls the number of fields that the sfdcDigest transformation can extract data from. If you exceed a Lightning Platform limit, an error occurs. See Lightning Platform limits.
| Value | Limit |
| Maximum number of data rows | 250,000 |
| Maximum number of concurrent queries | 5 |
Lens and Dashboard Limits
These limits apply to the creation and use of lenses and dashboards.
| Value | Limit |
| Maximum JSON file size per dashboard | 4 MB |
| Maximum number of dashboard components per dashboard | 20 |
| Character limit for description fields | 1000 |
| Default number of rows in a compare table | 2000 (To set a different value, use the SAQL limit statement) |
| Default number of rows in a values table | 100 (To set a different value, use the SAQL limit statement) |
| Maximum file size for geojson | 10 MB |
| Maximum number of notifications per user | 10 |
| Maximum number of recipients per notification email | 500 |
| Maximum number of subscriptions per user | 20 |
| Maximum number of subscriptions to collections per user | 4 |
| Maximum number of subscriptions per hour per org | 100 |
| Maximum number of data cells that can be exported from a lens or widget to an Excel file | 6,000,000 |
| Maximum amount of data that can be exported to a CSV file from a lens or widget backed by Direct Data for Data Cloud | 32 MB |
Analytics Download Limits
These limits apply to the download of Analytics assets as .png or .pdf files using the Analytics Download API. Analytics assets available for download include CRM Analytics dashboards and lenses and Lightning Experience dashboards and reports. To use the Analytics Download API, your org must have CRM Analytics for Slack enabled. For more information, see Analytics Download.
| Value | Limit |
| Maximum concurrent Analytics Download API calls per user | 3 |
| Maximum number of columns included in a downloaded .pdf file | 20 |
| Maximum number of pages in a downloaded .pdf file | 100 |
Note For dashboards downloaded as accessible .pdf files, each widget is represented as a table of data. If a table begins within the 100-page limit, the entire table is included even if the page limit is exceeded. Any table that begins after 100 pages isn’t included in the .pdf file.
CRM Analytics Query Limits
Be aware of these limits as you work with CRM Analytics queries.
Query Limits
| Limit | Value |
| Maximum concurrent queries per organization | 50 per platform |
| Maximum concurrent queries per user | 10 |
| Maximum number of rows returned per query25,000 is the default maximum value. To set a different value, use the SAQL limit statement | 25,000* |
| Query timeout | 2 minutes |
*The maximum results returned by a query vary based on the query’s type and whether it’s executed from a desktop or the mobile app.
| Query Type | Desktop Default Limit | Mobile Default Limit |
| aggregateflex | 2,000 | 500 |
| grain (for values tables only) | 100 | 100 |
| saql | 2,000 | 2,000 |
| soql | See SOQL and SOSL Reference. | See SOQL and SOSL Reference |
| staticflex | n/a | n/a |
Tip To see the limit for a given query, click in the lens. If it’s not set, CRM Analytics returns up to 10,000 results. To change the limit, edit the SAQL or SOQL query. The higher you increase the limit, the longer the query runs. For more information about SAQL queries, see the Analytics SAQL Developer Guide. For information about SOQL queries, see Salesforce Object Query Reference.
The limit only affects the number of records returned for display; it doesn’t affect calculations across all dataset records. For instance, say that a query groups by account name and the dataset contain 1 million account names. With a limit of 20, CRM Analytics only returns 20 results for display, but the summary row adds up all 1 million records.
CRM Analytics Direct Data Query Limits
These limits apply to Direct Data for Snowflake and Direct Data for Google BigQuery.
| Limit | Value |
| Maximum concurrent queries per organization | 25 |
| Maximum concurrent queries per user | 5 |
| Maximum number of rows returned per query | 5,000 |
| Query timeout | 2 minutes |
🔔🔔 Follow us on LinkedIn 🔔🔔












