When you have connected Elements space with your Salesforce org, you can check where any field is being used and how much it is being used. 

Article outline:

  • How populated is this field by each record type?
  • Field population breakdown for an object
  • % population logic and extending the analysis sample
  • Troubleshooting % population analysis
  • Where is this field used?
  • Compare all fields population by record types and their dependencies

How populated is this field ?

Find the object name in the org model, then open up the "Fields" node in its structure. Then select the field (listed by name) you want to investigate and open up the "Usage" tab in the right panel. You will see a vertical bar chart showing how populated is a given field by each record type it is used on.

Field population breakdown for an object

If you select the parent object in the Org model tree and open up the "Usage" tab in the right sidebar you will see the list of all of that object's fields in a vertical bar chart with % population. This is an aggregate population across last 10k records and is not broken down by record type. 

Click on "View all" below the chart to expand it and see all fields. You can also use the filter to narrow it down to custom, standard or system fields.

% population logic and extending the analysis sample

  • Getting the field % population for all records is a big task that is why we run it on a weekly basis (if you turned on the automatic sync) rather than with each sync.
  • We automatically fetch the data for the last 10,000 updated records for each standard and custom object in your core Org. 
  • You can extend the analysis sample to last 100k, 1 million and 50 million records for each object. Just click "Update" in the right panel for either a field or an object. The analysis sample will affect all object's fields, even if you run it from a single field.

Troubleshooting % population analysis

  • We do not fetch the % population data for managed package objects automatically. You need to fetch the data manually by clicking "Update % population" in the right panel for the selected managed package (they can be found at the bottom of your Org model tree).
  • If you sync any new objects between the weekly % population data fetch then they won't have any % population data yet and they will show up with errors if you try running a report. A simple solution is to fetch the % population data manually for the objects you are interested in. 
  • We don't get % population data for formula fields as they are almost always fully populated and as such we consider this data to be irrelevant.
  • Your ability to extend the analysis sample is dependent on the total number of records in an object. You will only be able to extend the sample to "All records" (50 million) if you already have more than 1 million records in an object, to "1 million" if you have more than 100k, etc. 

Where is this field used?

Under the vertical % population chart on a field you can see collapsed lists of items that are using this particular field grouped by type. Click on the ">" to expand the section to see the individual items.

Items that use the selected field will be listed with a hyperlink icon to Salesforce setup for that item. When you roll over the listed item you will see a popover with the key metadata:

You can check whether a field is being used by:

  • Apex Classes
  • Apex Triggers
  • Approval Processes
  • Email Templates
  • Field Sets
  • Flows
  • Formula Fields
  • Global Actions
  • Page Layouts
  • Process Builder Workflows
  • Reports
  • Sharing Rules
  • Validation Rules
  • Workflow Field Updates
  • Workflow Rules

*You can also generate metadata dependency trees below the "Where used" section. More on that here.

Note on Apex usage 

There are just a few apex structures for which we currently do not support the field usage information, these are:

  • SOSL
  • Nested SOQL
  • Chain of lookups in SOQL
  • Dependency usage from other classes
  • SObjects and methods from SObjects
  • Reinitialization of variables to a different type
  • When a Developer org has a namespace but uses field/object without namespace
  • Switch-case statement (for apex classes with version 43.0 and more)

Compare all fields population by record types and their dependencies 

You can run a report against the object to compare all of the object's fields and how populated they are by each record type and where are they used. Select the object you are interested in analysing, right-click on it and select "Make node root" option from the dropdown menu. 

This will "zoom in" the Org model tree to that object only (and its related metadata). You can then run a "Field usage" that will list all fields, their metadata dependencies and population by each record type on the object. 

Did this answer your question?