In this article, we are going to share some known tips and tricks which can make your Salesforce reports run faster. Most reports load in a matter of seconds. In certain cases, it can take longer. On very rare occasions, reports can hit the timeout limits. This can happen due to any of the following reasons:
- Querying too many columns
- Querying objects with too many records
- Using inefficient filters / operators
Now, let’s focus on keys areas on which we can work and how we can leverage various options available on Salesforce platform to overcome the above problems.
Exclude unnecessary data
We should only query data that is relevant to the report we are building. We can take note of the following key points to exclude any unnecessary data from our reports:
1. Choose a report type that only includes the objects you need.
2. Remove any unnecessary columns from the report.
3. Whenever possible, use “My…” or “My Team’s…” option rather than “All…”. For example, My Accounts.
4. When you are only interested in the summary data, click on the Hide Details button under Advanced Filters to hide detail rows.
Use efficient filters / operators
Narrow your filters
Use equal to or not equal to instead of contains or does not contains filters. For example, use the Contact Owner equal to John Smith instead of the Contact Owner contains John. This limits the amount of data retrieved and makes the report load faster.
Focus on the right time period
Queries with fixed time frames run faster than open-ended queries. We should always set a start and end date values to limit the report data. If that’s not possible, then try using relative date values such as – THIS WEEK, LAST MONTH or YESTERDAY. This works well for saved reports. Also, this becomes very handy for activity reports to eliminate future recurring activities.
Optimize your Salesforce environment
Consider the storage size of your objects
Do you know how many records exist for each object in your report queries? The more records, the bigger the object’s storage size and the longer the report takes to run. To determine the size of an object, from Setup, enter Storage Usage in the Quick Find box, then select Storage Usage and see each object’s Storage value in the Current Data Storage Usage section. As storage usage increases, reports that include that object will take longer.
Empty your Recycle Bin
Data you’ve deleted still gets queried when you run your report unless you permanently delete it by emptying the Recycle Bin. Make sure to empty the Recycle Bin after pruning your data.
Filter on fields that are optimized for search
There are some standard fields that are optimized for a search like Id, Name, OwnerId, CreatedDate, SystemModStamp, RecordType. Master-detail and lookup fields are also optimized for search. Unique and External Id fields are also optimized for search. By using optimized fields in the filters, we can save some time during the report runs.
Schedule reports and dashboards
A dashboard refreshes data for everyone who has access to it whenever anyone clicks the Refresh button. If you have a report which takes a long time to run, add it in a dashboard. This way you will have more people seeing fresh data with fewer report runs. Also, encourage your users who have “Schedule Dashboards” permission to have their dashboards refresh on a scheduled basis daily, weekly or monthly, so that users don’t always have to wait for data to refresh.
Try the above tips to make your reports more efficient and load faster. If you have any other tricks which worked for you, we would like to hear from you in the comments section.