Run a Report and Review the Findings
After completing this unit, you’ll be able to:
- Describe the requirements for running Salesforce Optimizer.
- Generate a Salesforce Optimizer report.
- List some issues and best practices that users commonly find in a Salesforce Optimizer report.
In the previous unit, you learned about Salesforce Optimizer and why we created it. Hopefully you’re excited to try it out now. Before you do, let’s walk through a few basic system and user requirements.
Salesforce Optimizer is available in Professional, Enterprise, Performance, Unlimited, and Developer Editions. You can run Optimizer in production and sandbox environments.
If your org uses IP restrictions, read this Salesforce Help article to see if you need to whitelist any IP addresses to run it.
To run Salesforce Optimizer you need to have Customize Application, Modify All Data, and Manage Users user permissions.
Salesforce Optimizer saves its report as a PDF file in your org. If your org’s email deliverability is set to All email, Salesforce also emails this file to the running user. Here’s how you can verify this setting.
- From Setup, enter
Deliverabilityin the Quick Find box, then select Deliverability.
- Make sure the Access level is All email. See this article for more information on this setting.
Running Salesforce Optimizer is incredibly easy. Here’s how.
- From Setup, enter
Optimizerin the Quick Find box, then select Optimizer.
- Select Run Optimizer.
- In the confirmation dialogue, click Allow.
- In the next confirmation dialogue, click Got It.
That’s it! Salesforce typically emails the report within an hour, but it can take longer if your org is complex. You can also find the report by clicking the Files tab in your org. The report file name begins with SalesforceOptimizerReport and contains the version number and date.
If you happen to be lounging on the beach and need to kick off an Optimizer report from your mobile phone (this is more common than you might think), you can via the SalesforceA mobile admin app. Just tap on Resources from the SalesforceA app home screen to get started—no need to miss a beautiful sunset!
Running Optimizer is the easy part. Once you have the report, it’s time to review the findings and create a plan to address the issues. Each section of the report contains lots of interesting data about the status of your org, as well as recommendations and best practices. The impact scale icons help you prioritize these.
Let’s look at some of the most common and critical issues that Optimizer flags for customers.
Behold, Fields of Fields
It’s very common to see objects with hundreds of fields. While Salesforce allows up to 800 fields per object (depending on your edition), Salesforce Optimizer flags any standard or custom object with more than 350. Are all those fields necessary and useful to your users? When people have to churn and scroll through hundreds of fields on a detail page, adoption and usage suffers. And consider the mobile experience. Scrolling through pages of fields on your phone is painful and frustrating.
The Optimize and Maintain section of the report can help you see whether those fields are actually populated with data. Many customers are quite surprised to find that a significant number of their custom fields are empty, and therefore provide no value to users.
If Optimizer flags your org for custom field limits, field usage, or fields on page layouts you are not alone. Cleanup in those areas is always appreciated by users. We strongly recommend installing the Field Footprint app to get deeper insights into your org’s custom field usage.
Everyone loves automation. Sharing, workflow, and validation rules make users more efficient and keep data tidy. But you can have too much of a good thing. For you admins out there, maintaining a Byzantine set of rules can be challenging. And end users experience slow performance and other issues when there’s too much automation on a single object. If your Salesforce Optimizer flags any of these categories, consider taking steps to simplify.
Too Many Admins
Salesforce Optimizer considers any user with the Modify All Data and Customize Application permissions an admin. Granting these superuser permissions to lots of users is a recipe for disaster. We know how it can happen… Sales Ops needs access to all Opportunities, so you add Modify All Data to their profile. Then a power user wants to modify picklist values on the Case object, so you grant them Customize Application access, and so on. But liberally doling out these kinds of permissions is risky and should be avoided. Data breaches, data quality, gacks — there are all sorts of unintended consequences when you have too many cooks in the kitchen.
So what’s the right number of admins? It really depends on the size of your organization, its complexity, and the volume of requests that come in. This article provides some guidelines. We strongly advise you to audit your user populations today and seriously think about how to reduce the number of users with these permissions. Chances are you have too many.
Multiple Triggers per Object
Salesforce Optimizer doesn’t like to see multiple Apex Triggers on the same object. This anti-pattern (bad programming practice) can cause you to hit Apex limits and result in all sorts of bad experiences for your users and your integrations. Additionally, there’s no way to control the order in which these triggers execute. We always recommend having a single trigger per object, and using helper classes to do the heavy lifting.
No My Domain
Salesforce Optimizer also flags your org if you haven’t activated the My Domain customization. We encourage you to learn more about this feature and consider turning it on. Here are a few key benefits.
- My Domain is required for a number of other features, such as single sign-on with an external identity provider.
- While not technically required for activating the Lightning Experience user interface, Lightning components—one of the major innovations in Lightning—require My Domain.
- My Domain lets you brand your login screen and customize right-frame content.
Check out the User Authentication module to learn more about My Domain and practice enabling it in a Trailhead Playground.
Many customers run Salesforce Optimizer regularly as part of their standard maintenance processes. This extremely useful practice can help you track how things change as your org evolves. Give it a try, and share your feedback with us! Just click Take the Survey on the Salesforce Optimizer landing page.
Availability of Optimizer (Salesforce Help article)
Field Footprint (Free AppExchange App)
My Domain (Trailhead unit)
Lightning Components Basics (Trailhead module)