Admins / Consultants / Developers / RevOps

Salesforce Impact Analysis: 4 Free Tools

By Pablo Gonzalez

Salesforce orgs can quickly grow to untold complexities. Unused fields, hundreds of record types, at least ten different “test data factory” Apex classes, workflows with duplicated logic… the list goes on!

One of the main problems of dealing with this level of complexity is that so many factors are interconnected, you start to become nervous about making changes in the org:

  • What can happen if I rename this picklist value?
  • What happens if I remove this hard coded Id from this Apex class?
  • What automation is sending this email template? And why do we have ten identical email templates? (I experienced this one the hard way.)

One way to deal with this issue is to perform an “impact analysis” before making a change in the org.

In this article, we’ll take a look at at Salesforce impact analysis, why it matters, and three free tools you can use. Then I’ll show you how Salto’s Free Tier combines the capabilities of its predecessors and makes Salesforce impact analysis available to all!

What is Impact Analysis?

Impact analysis shows how specific changes in your company’s metadata can affect other areas in the org. This is done by understanding references and relationships.

Let’s say you have a custom field that is used (referenced) by ten Apex classes, two process builders, and seven workflow rules. These references are what connect the custom field to the other metadata. So if the field is somehow updated, there’s a chance the change will impact all the metadata.

Why should you do it?

Let’s use the example of renaming a picklist value – such a small change, but anything that depends on that value will suddenly (and silently) stop working. This includes:

  • Reports using the value as a criteria.
  • Workflow rules and validation rules that fire when the specific value is set.
  • If/else conditions in Apex classes that test for the presence of the value.

Without impact analysis, what may seem like an innocent modification can actually cause a disastrous deployment.

A good impact analysis reveals all the areas where the field is used (and more importantly, how it is used) so you can make any necessary adjustments to the metadata and include it in your deployment.

Impact Analysis Tools

In Salesforce, there are a few ways to perform impact analysis:

“Where is this used?” button

Salesforce provides you with the very basic “Where is this used?” button on custom fields (not standard fields, sorry…) to see where the field is used. It helps you understand the impact of making a change to that field.

This is a good start, but I would like to guide you to other areas where impact analysis is needed and where the “Where is this used?” button is just not enough:

  • Is the field being used dynamically by Apex code? Maybe the field name is not in the code but written in a custom setting or custom metadata type.
  • What if the field is used in an area not covered by the “Where is this used?” button? This includes Lead and Opportunity Path, Workflow Rules, etc.
  • Who said impact analysis was all about fields? What if you have to find where a particular email template is being used, whether Apex, flow, process builder, workflows, or assignment rules?
  • How about user or profile IDs that can be hardcoded almost anywhere you want? How will you find them?

Visual Studio Code

If you are a developer, you can also use VS Code to do a text search on your org’s metadata.

One concern with this approach is that VS Code is not always up to date with what’s in the org, and every developer will have their own local copy of the metadata. There isn’t a central place where everyone can find references with the exact same copy of the org’s metadata.

Also, its default package.xml does not include all the metadata types, and some of these will need to be added manually (like reports and report folders).

Finally, while it’s great for developers, this is probably too complicated for non-technical users and administrators.

HappySoup.io

HappySoup (which I created) is another alternative: a free impact analysis tool for finding where custom fields are used. Its functionality has been covered here, as well as here.

While I love HappySoup, it does have many limitations:

  • It relies solely on the Dependency API, which Salesforce announced will be retired later this year.
  • It cannot identify hardcoded user or profile IDs.
  • There is limited support for standard fields.
  • It’s unable to do a full-text search across your metadata.

Salto’s Free Tier: Impact Analysis Done Right

All the tools mentioned above have their good share of pros, but they’re all disconnected from each other. What if you could use the ‘best of all worlds’ in a single, free tool? That’s where the Salto Free Tier comes in.

Salto’s Free Tier is an AppExchange-certified app that brings together the power of VS Code’s full-text search, the enterprise security of the native “Where is this used?” button, and the easy-to-use interface of HappySoup, plus some goodness of its own.

The Salto Free Tier provides Salesforce Admins and Developers with the following:

1. Impact analysis for all metadata types (standard and custom fields, apex code, etc.).

2. Full-text search across your entire Salesforce org (so you can find those hardcoded IDs, email addresses, etc.).

3. The ability to compare metadata within the same org (for example, compare two profiles and find the differences).

4. Monitoring alerts so that you are the first to know if someone changes your code (or any other metadata you care about).

Let’s see a feature summary so you can see why Salto’s Free Tier must be in your admin tool belt:

Final Thoughts

With all these features at your disposal, you are now prepared to perform a great impact analysis before making any changes in your org. Go ahead and give it a tryit’s free!

The Author

Pablo Gonzalez

Pablo Gonzalez is the creator of HappySoup.io and a Business Engineering Architect at Salto, the Business Engineering platform for Salesforce engineers.

Comments:

    Nicole Dawes
    May 10, 2022 3:07 pm
    This is super helpful. We definitely need more tools to get proper impact analysis and reporting to help with risk mitigation and decision making. I would add www.Strongpoint.io as well — they have industry-leading impact analysis tools, and they're built directly into the Salesforce platform. They also have Jira, ServiceNow, and ZenDesk integrations. Check it out here: https://www.strongpoint.io/salesforce-impact-analysis
    Ronald Rios
    May 11, 2022 5:19 pm
    Another impact analysis tool I have successfully used is METAZOA "SNAPSHOT" which offers the following reports for FREE: - Org dictionary - Data dictionary - Field usage - Picklist usage - Profiles and permissions An order of magnitude over what say, "Field Trip" can offer.
    Rob
    May 13, 2022 3:04 pm
    Great article, blown away by Salto, thanks
    Christopher
    May 16, 2022 10:03 pm
    Salto is great but I don't see how to do a metadata comparison with the free tier.
    Faim
    September 15, 2022 8:03 am
    this is not a free!

Leave a Reply