Jennifer Lee and Cece Adams in a new "How I Solved It."

How I Solved It: Build a Better User Experience


Welcome to another post in the “How I Solved It” series. In this series, we do a deep dive into a specific business problem and share how one #AwesomeAdmin chose to solve it. Once you learn how they solved their specific problem, you’ll be inspired to try their solution yourself! Watch how Cece Adams built a better user experience using Lightning App Builder while building Lightning record pages that are maintainable by the admin.

Key business problem

Salesforce is designed to store a lot of information and display it to whoever needs to see it. However, sometimes there’s A LOT of data relating to a record, which means A LOT of scrolling to find the information you’re looking for. Constant scrolling can lead to user disengagement and frustration, and affect overall adoption of tools. While we may enjoy doom-scrolling on social media, it’s not as much fun in Salesforce. Luckily, there are ways to address this issue by presenting vital information in an efficient, directed manner. Using tools such as Lightning record pages, quick actions, and Dynamic Forms, we can say YES to efficiency and NO to death by scrolling!


Our client is tracking information relating to an outbreak caused by something known as the C-Virus. Infected contacts have their outbreak symptoms tracked via their Zombie Profile (ZP). The contact record contains demographic information, while the ZP contains questions specific to their infection. Users need to be able to see ZP data while viewing the contact record. The contact record must be concise and clearly organized so that important information is readily visible. Did I mention that users HATE scrolling but are okay with additional clicks where needed?

How I solved it

Option 1: Use quick actions and Lightning pages

For this example, we’re using the Contact object to tell us who the infected are. First, create an Update Record action on Contact. Make sure to enter a description; a success message is not required.

Salesforce Setup > Contact > Actions > New Action Setup screen

Next, use Edit Layout to determine which fields will display when the action is placed onto the Lightning record page. Place as many fields as you need to display; however, note that the recommended maximum is eight fields.

The Edit Layout screen of the Contact Demographics action

After that, navigate to the Lightning record page you’re using and add Tabs and Related Record components to the Details. I like to add mine to the bottom, but go with what makes you happy (and makes the most sense). First, you drag the Tabs component over, then drag the Related Record component over. Add your Header and Update Action, then click Save. Don’t forget to Activate, if needed.

Lightning record page setup screen with red arrow pointing at Demographics section

Lastly, navigate to the page layout in use and remove the fields you added to your Update Action. If you don’t, they’ll display on the record as well as the tabs, causing unnecessary duplication.

Contact record with red arrow pointing at Language field

Option 2: Use Dynamic Forms

Another awesome option is to use Dynamic Forms. With Dynamic Forms, you can migrate fields and sections into individual components. This way, you can place and configure them like the other components on the page. This includes being able to set visibility, an important ability we’ll utilize in a bit. For this example, we’re going to use my custom object, Zombie Profiles, as well as the Contact standard object.

To upgrade to Dynamic Forms, click into the Record Detail section on the Lightning record page. If you haven’t already upgraded, you’ll be prompted to. Click Upgrade Now. Once your Lightning record page is upgraded, you’ll see a tab for Fields next to Components on the left. Each field is now its own mini-component—isn’t that cool?

Lightning record page setup screen with focus on Details section

From the Fields tab, first pull a Field Section over to the Details tab > Accordion. If there’s no Accordion, add one from Components. Give the Accordion a name, then update the Sections and visibility as desired. Next, add the Field Section. Add your fields to the field section, setting field visibility as desired. Field visibility can include details from the record, Users, and other custom permissions.

Why is this functionality important? Less to maintain! Before, admins would have to create multiple page layouts. You can possibly create one Lightning record page that can be used by all profiles in your org!

Lightning Record Page setup screen with focus on field components

How do I choose an option?

How do you know which method will truly help your users? It depends on what you need and how you look at it. One thing to consider is that using both of these options together is possible but not recommended due to various reasons. So, it’s best to choose an approach and stick with it. If users want to have all of the information displayed in a condensed view that may require more clicks, then quick actions and Lightning pages are the way to go. If you want fields only to display when necessary based on your criteria, Dynamic Forms are your friend. Both answers are correct.

Quick actions and Lightning record pages with focus on Contacts Lightning Record Page

Dynamic Forms for custom object Zombie Profile

Business results

Now, when a user needs detailed information about a contact, they no longer have to scroll endlessly throughout the page. They have a cleaner interface that displays key information upfront and properly organizes the additional details. Users can still inline edit and have their updates saved to the record with ease. And an incalculable amount of time is saved by users. With Dynamic Forms, the company can keep track of custom information, such as the ZPs linked to contacts to provide detailed outbreak information. Fields display only as needed which again provides a cleaner interface. Users can remain engaged with the data, and we’ve drastically reduced the frustration that comes from scrolling 'til dawn.

Do try this at home

This particular use case wasn’t real (thank heavens!); however, the need for cleaner pages and death to scrolling is a very real and common need. As technology grows, the need for data will only become more prevalent. It’s important to know how to present that data in the most concise way possible. This is your chance to get messy and play around with the different options to kill scrolling that are readily available. If you need some inspiration, try the following use cases:

The Accounts object has 50+ fields that need to be displayed on the page. However, this causes users frustration because the fields are not organized and it takes forever to find information. Users want a more efficient account page.

Custom Object
Your custom object contains fields that should only be seen based on responses to other fields. There are also some fields that should only be seen by certain users.


Want to see more good stuff? Subscribe to our channel!